android 应用第一次启动记录状态
2014-11-01 17:11
302 查看
public void checkHasShared() {
boolean xiaomi = true;
PackageInfo info;
long nowDate = 0;
int currentVersion = 0;
try {
info = getPackageManager().getPackageInfo(this.getPackageName(), 0);// 获取PackageInfo对象,this.getPackageName()获取包名
currentVersion = info.versionCode; // 获取版本号
} catch (NameNotFoundException e) {
e.printStackTrace();
}
URL url;
try {
url = new URL("http://bjtime.cn/");
URLConnection uc = url.openConnection();
uc.connect();
nowDate = new Date(uc.getDate()).getTime();// 通过网络获取时间
} catch (Exception e) {
e.printStackTrace();
}
SharedPreferences prefs = getSharedPreferences("xiaomi", MODE_APPEND);// 打开名字为“xiaomi”的SharedPreferences
int lastVersion = prefs.getInt("VERSION_KEY", 0); // 获取存储的版本
if (nowDate == 0) {
nowDate = new Date(System.currentTimeMillis()).getTime();// 网络获取不成功,获取本地时间
}
if (currentVersion > lastVersion) { // 应用此版本第一次启动
prefs.edit().putInt("VERSION_KEY", currentVersion).commit(); // 保存版本
prefs.edit().putLong("nowDate", nowDate).commit(); // 保存第一次启动时间
}
long toastDate = prefs.getLong("nowDate", 0);
if ((nowDate - toastDate) / (24 * 3600 * 1000) > 10) {// 距离第一次启动时间超过10天
xiaomi = true;
} else {
xiaomi = false;
}
}
boolean xiaomi = true;
PackageInfo info;
long nowDate = 0;
int currentVersion = 0;
try {
info = getPackageManager().getPackageInfo(this.getPackageName(), 0);// 获取PackageInfo对象,this.getPackageName()获取包名
currentVersion = info.versionCode; // 获取版本号
} catch (NameNotFoundException e) {
e.printStackTrace();
}
URL url;
try {
url = new URL("http://bjtime.cn/");
URLConnection uc = url.openConnection();
uc.connect();
nowDate = new Date(uc.getDate()).getTime();// 通过网络获取时间
} catch (Exception e) {
e.printStackTrace();
}
SharedPreferences prefs = getSharedPreferences("xiaomi", MODE_APPEND);// 打开名字为“xiaomi”的SharedPreferences
int lastVersion = prefs.getInt("VERSION_KEY", 0); // 获取存储的版本
if (nowDate == 0) {
nowDate = new Date(System.currentTimeMillis()).getTime();// 网络获取不成功,获取本地时间
}
if (currentVersion > lastVersion) { // 应用此版本第一次启动
prefs.edit().putInt("VERSION_KEY", currentVersion).commit(); // 保存版本
prefs.edit().putLong("nowDate", nowDate).commit(); // 保存第一次启动时间
}
long toastDate = prefs.getLong("nowDate", 0);
if ((nowDate - toastDate) / (24 * 3600 * 1000) > 10) {// 距离第一次启动时间超过10天
xiaomi = true;
} else {
xiaomi = false;
}
}
相关文章推荐
- Android 判断应用 第一次安装启动
- Android开发:判断应用第一次启动(精简代码版)
- Android 判断应用 第一次启动
- Android 判断应用 第一次启动
- Android开发中使用SharedPreferences记录用户是否第一次启动程序
- 在Android中通过导入静态数据库来提高应用第一次的启动速度
- 在Android中通过导入静态数据库来提高应用第一次的启动速度
- Android 判断应用 第一次启动
- Android开发中使用SharedPreferences记录用户是否第一次启动程序
- android应用第一次启动加载大数据导致启动速度慢解决办法
- Android中通过导入静态数据库来提高应用第一次的启动速度
- [Android实例] 如何记住第一次启动android的状态如引导页
- Android开发:判断应用第一次启动(精简代码版)
- Android 判断应用 第一次启动
- 在Android中通过导入静态数据库来提高应用第一次的启动速度
- 如何正确判断 Android应用是第一次启动的靠谱方案(短篇)
- 如何去掉Android应用启动时带的标题栏及启动时的误解问题剖析?
- android应用的启动流程
- android应用如何开机启动
- Android 开机自动启动应用