回答
爲此做一個活動,檢查一個首選項是否具有當前版本的值。如果是這樣,繼續下一個活動。否則,在當前版本的首選項中,顯示新的屏幕,然後按按鈕進入下一個活動
這很簡單。 在第一次啓動時顯示AlertDialog並在SharedPreferences中創建記錄。無論 - 標誌或字符串,或有點。 下一次您的應用程序啓動時,只需檢查您在首選項中是否有此標誌。如果沒有人,那麼這是第一次啓動,是時候顯示一個對話框=)
而且您應該將您的版本號存儲在首選項中,然後您還可以檢測升級[如果(running_version> preferences_stored_version)]。 – 2011-05-06 10:32:25
當我升級軟件並重新安裝時是否會丟失我的偏好?我不這麼認爲 – 2011-05-06 11:27:06
你必須保存一個值,你可以在每次啓動時檢查應用程序是否已經啓動。 SharePreferences將是一個選項。或者在數據庫中。
我使用了這個。它是由另一個stackoverflow成員張貼我不記得誰。抱歉。從onCreate()
調用此代碼
// Show changelog
SharedPreferences prefs = getSharedPreferences(PREFS_NAME, MODE_PRIVATE);
PackageInfo pInfo;
try {
pInfo = getPackageManager().getPackageInfo(getPackageName(), PackageManager.GET_META_DATA);
if (prefs.getLong("lastRunVersionCode", 0) < pInfo.versionCode) {
showDialog(DIALOG_CHANGELOG);
SharedPreferences.Editor editor = prefs.edit();
editor.putLong("lastRunVersionCode", pInfo.versionCode);
editor.commit();
}
} catch (PackageManager.NameNotFoundException e) {
Log.e(TAG, "Error reading versionCode");
e.printStackTrace();
}
如果用戶清除設備設置中的應用程序數據,則全部重置。
- 1. 顯示消息安裝
- 2. 如何僅在首次啓動應用程序時顯示消息?
- 3. 安裝後提示重新啓動消息WIX引導程序
- 4. 安裝後首次運行
- 5. Android即時運行 - 安裝失敗並顯示消息無法啓動會話
- 6. 如何在啓動Inno Setup安裝程序時顯示消息框
- 7. 如何在首次啓動時僅顯示一次UIPageViewController
- 8. 顯示啓動消息後,碼頭的用戶:運行啓動
- 9. 應用程序安裝後首次啓動時,shouldAutorotateToInterfaceOrientation不起作用
- 10. 安裝失敗並顯示消息INSTALL_PARSE_FAILED_MANIFEST_MALFORMED
- 11. 安裝失敗,顯示消息「INSTALL_PARSE_FAILED_BAD_PACKAGE_NAME」
- 12. android首次啓動後不顯示圖標...?
- 13. MVC3 ajax驗證 - 首次顯示部分視圖時顯示的錯誤消息
- 14. Android在安裝/啓動後收到消息,手機仍然沒有安裝
- 15. 安裝odoo首次
- 16. 如何在首次啓動應用程序時顯示UIViewController?
- 17. 如何在首次啓動應用程序時顯示頁面
- 18. 如何在首次啓動PreferenceActivity時顯示defaultValues?
- 19. 如何僅在首次啓動時顯示視圖?
- 20. Android首次啓動時顯示軟鍵盤?
- 21. 創建後臺服務,當用戶啓動任何已安裝的應用程序時顯示消息
- 22. 如何在NDEF發現/活動啓動後顯示NDEF消息?
- 23. 在生產中安裝Yii Flash消息後不顯示
- 24. 安裝修補程序後,laravel webapp顯示錯誤消息
- 25. TYPO3重新安裝後不會顯示消息
- 26. 只顯示消息一次
- 27. 顯示消息僅一次
- 28. 消息框多次顯示
- 29. 如何在Android中啓動活動時顯示日誌消息
- 30. 未安裝pdf閱讀器時未顯示消息
如何在運行時獲取我的版本號? – 2011-05-06 11:28:59
將其編碼爲常量。或者向PackageManager詢問你的軟件包的元數據。見例如http://osdir.com/ml/Android-Developers/2010-01/msg03487.html – 2011-05-06 12:35:59