我正在创建一个自定义偏好设置,以记住用户想要从可能性列表中运行哪个活动。(有效地实现了Chooser的“每当您看到这种意图时始终启动此活动”,但具体记住我的特定应用程序的结果,而不是全局系统。)
我可以像这样获取可能活动的列表:
我可以像这样获取可能活动的列表:
Intent myIntent = new Intent();
myIntent.setAction(Intent.ACTION_SEND);
myIntent.setType("text/plain");
myIntent.putExtra(Intent.EXTRA_TEXT, "Probe text");
PackageManager manager = getContext().getPackageManager();
List<ResolveInfo> infoList = manager.queryIntentActivities(myIntent,PackageManager.MATCH_DEFAULT_ONLY);
...导致产生了一个ResolveInfo列表。
我的问题是,一旦用户选择了其中一个,最好的方法是将其作为首选项持久化吗?也就是说,在我的SharedPreferences中写入什么(如果可能的话,只需一个条目),以及在应用的下一次运行时,如何读取它并触发相应的Intent?