- PackageInfo info = getPackageManager().getPackageInfo(PACKAGE_NAME, 0);
- int currentVersion = info.versionCode;
- SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
- int lastVersion = prefs.getInt(VERSION_KEY, 0);
- if (currentVersion > lastVersion) {
- //如果当前版本大于上次版本,该版本属于第一次启动
- ......
- //将当前版本写入preference中,则下次启动的时候,据此判断,不再为首次启动
- prefs.edit().putInt(VERSION_KEY,currentVersion).commit();
- }
android实现应用程序只有在第一次启动时显示引导界面 ,以后就不在显示了
程序安装后第一次启动:
启动页-->功能介绍页-->系统主页
以后启动:
启动页-->系统主页
可以弄一个文件保存一个状态,推荐用SharedPreferences。
1.可以定义一个变量来判断程序是第几次运行,如果是第一次则跳转到引导的Activity,如果不是第一次则执行系统主页。
判断系统是第一次运行的代码实现如下:
在Activity中添加代码:
//使用SharedPreferences来记录程序的使用次数
SharedPreferencespreferences;
/** Called when the activity is firstcreated. */
@Override
publicvoidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//读取SharedPreferences中需要的数据
preferences = getSharedPreferences("count",MODE_WORLD_READABLE);
int count = preferences.getInt("count", 0);
//判断程序与第几次运行,如果是第一次运行则跳转到引导页面
if (count == 0) {
Intentintent = newIntent();
intent.setClass(getApplicationContext(),BootActivity.class);
startActivity(intent);
finish();
}
Editor editor = preferences.edit();
//存入数据
editor.putInt("count", ++count);
//提交修改
editor.commit();
2.还有人说可以这样实现。第一次启动时,因为没SharedPreferences文件,所以为初始化值,比如true要显示,然后在将这个值赋为false,保存后,下次启动是读取SharedPreferences文件,找到值就为false。你在后面写判断要不要显示引导界面就好了。