非常多時(shí)候我們須要檢測(cè)用戶是不是第一次打開(kāi)應(yīng)用,從而初始化一些數(shù)據(jù),或者打開(kāi)引導(dǎo)界面等等。
/*方法一:
* 首次打開(kāi)的時(shí)候獲取isFirstIn值,默認(rèn)值為false
* 獲得false,證明不是第一次打開(kāi)
* 獲得true,證明是第一次打開(kāi);然后把isFirstIn值設(shè)為false
* */
SharedPreferences sp = getSharedPreferences("isFirstIn", Activity.MODE_PRIVATE);
boolean isFirstIn = sp.getBoolean("isFirstInWith1.4", true);
if(isFirstIn) {
SharedPreferences.Editor editor = sp.edit();
editor.putBoolean("isFirstInWith1.4", false);
editor.commit();
new AlertDialog.Builder(this).setMessage("這是第一次打開(kāi)").show();
} else {
new AlertDialog.Builder(this).setMessage("你打開(kāi)了n次了").show();
}
注:由于在用戶安裝新版本號(hào)的時(shí)候,我們想要的也是顯示第一次打開(kāi),可是版本號(hào)更新是會(huì)保留上一版本號(hào)的數(shù)據(jù)的,所以檢測(cè)到的是之前有打開(kāi)過(guò)。
所以我們?cè)诿總€(gè)版本號(hào)檢測(cè)的key中增加版本號(hào)號(hào),如上面的isFirstInWith1.4,當(dāng)中1.4就是版本號(hào)號(hào)。
/*方法二:
* 在首次打開(kāi)的時(shí)候檢查是否存在文件(com.example.test.isFirstIn)
* 假設(shè)已存在,證明不是第一次打開(kāi)
* 不存在,證明是第一次打開(kāi);打開(kāi)之后創(chuàng)建文件
* */
File dir = getFilesDir();// /data/data/com.example.test/files
File f = new File(dir, "com.example.test.isFirstIn");
Log.e("miquan", f.getAbsolutePath());
if(f.exists()) {
//dosomething
new AlertDialog.Builder(this).setMessage("你打開(kāi)了n次了").show();
} else {
try {
f.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
//dosomething
new AlertDialog.Builder(this).setMessage("這是第一次打開(kāi)").show();
}
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元

