代码之家  ›  专栏  ›  技术社区  ›  Waza_Be

是否有在设置中保存意图的解决方案?

  •  8
  • Waza_Be  · 技术社区  · 14 年前

    希望你能用我的基本英语理解我的问题…

    在我的应用程序中,我允许用户有一个按钮来启动他选择的应用程序。我可以列出所有已安装的应用程序,获得意图并启动Choosen应用程序。

    但是我想在设置中保存下下一次用户使用我的应用程序时的对应意图,但是设置只允许我保存基本数据类型(整数、布尔值、字符串等)。

    所以,我的问题是如何用一种聪明的方式来保存一个意图。

    我希望你能帮我找到解决办法。

    2 回复  |  直到 14 年前
        1
  •  25
  •   Alex Lockwood Nigel Hawkins    12 年前

    你应该使用 myIntent.toURI() 存储 Intent 及使用 Intent.getIntent(String uri) 恢复 意图 .

    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);
    }
    
        2
  •  2
  •   Alex Lockwood Nigel Hawkins    12 年前

    而不是保存 Intent 你可以把 String 这是建立 意图 .

    例子:

    Intent intent = new Intent("com.android.notepad.action.EDIT_TITLE");
    

    现在你只需存储一个 包含 com.android.notepad.action.EDIT_TITLE