Android引导页首次展示,再次进入不在显示的实现

原文链接: https://my.oschina.net/u/3730650/blog/2986317

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

我采用的是利用packagemanager获取的versioncode,他的设置在上图的位置,(具体是structure中app的flavor选项)所以每次版本迭代的时候将versioncode的版本增加1,也可以增加2,3等只要是整数并且比上一个数字大就可以,这样在用户软件进行升级更新后,引导页的内容都会展示,否则不改变versioncode的值,在版本更新覆盖掉旧版本时引导页也会默认不显示…. 
具体代码如下:
 @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
//      根据版本号判断是不是第一次使用
        PackageInfo info=null;
        try {
            info=getPackageManager().getPackageInfo(getPackageName(),0);

        } catch (PackageManager.NameNotFoundException e) {
            e.printStackTrace();
        }
        int currentVersion = info.versionCode;
        SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(this);

        int lastVersion = sp.getInt("VERSION_KEY", 0);

        if (currentVersion>lastVersion){
//            第一次启动将当前版本进行存储
            sp.edit().putInt("VERSION_KEY",currentVersion).commit();
            setContentView(R.layout.activity_intro);
            intro_vp = (ViewPager) findViewById(R.id.intro_vp);

        }else {
//            非第一次启动直接跳转
            Intent intent=new Intent(this,SplashActivity.class);
            startActivity(intent);
        }
我们用getDefaultSharedPreferences返回的是一个默认的存储文件名称是包名加_preferences 
也可以用自己定义的getSharedPreferences去设置

private static String getDefaultSharedPreferencesName(Context context) {  
       return context.getPackageName() + "_preferences";  
   }  

转载于:https://my.oschina.net/u/3730650/blog/2986317

你可能感兴趣的:(Android引导页首次展示,再次进入不在显示的实现)