希望你能用我的基礎英語理解我的問題......任何解決方法在設置中保存意圖?
在我的應用程序中,我允許用戶有一個啓動他選擇的應用程序的按鈕。列出所有安裝的應用程序,獲取Intent並啓動選擇的應用程序,我沒有問題。
但我想保存相應的意圖在設置下一次用戶使用我的應用程序,但設置只允許我保存基本數據類型(整數,布爾,字符串等)
所以,我的問題是如何以聰明的方式保存意圖。
我希望你能幫我找到解決辦法。
希望你能用我的基礎英語理解我的問題......任何解決方法在設置中保存意圖?
在我的應用程序中,我允許用戶有一個啓動他選擇的應用程序的按鈕。列出所有安裝的應用程序,獲取Intent並啓動選擇的應用程序,我沒有問題。
但我想保存相應的意圖在設置下一次用戶使用我的應用程序,但設置只允許我保存基本數據類型(整數,布爾,字符串等)
所以,我的問題是如何以聰明的方式保存意圖。
我希望你能幫我找到解決辦法。
您應該使用myIntent.toURI()
存儲Intent
,並使用Intent.getIntent(String uri)
恢復Intent
String
。
public void saveIntent(Intent intent) {
mSharedPrefs.edit().putString(SOME_KEY, intent.toURI()).commit();
}
public Intent restoreIntent() {
String uri = mSharedPrefs.getString(SOME_KEY, *mSomeDefaultUri*);
return Intent.getIntent(uri);
}
太好了!喜歡這個答案! – 2011-08-19 09:45:08
僅供參考,_toUri()_現已棄用。改用** toUri(int flags)**。 – JJ86 2017-03-22 17:18:30
除了保存Intent
,您可以保存生成Intent
所需的String
。
例子:
Intent intent = new Intent("com.android.notepad.action.EDIT_TITLE");
現在你只存儲一個包含com.android.notepad.action.EDIT_TITLE
嘗試基於GSON此解決方案:http://stackoverflow.com/a/34580505/2267723 – 2016-01-03 19:14:48