2016-04-24 2 views
0

私は、ユーザーが保存され、その後、いくつかのトリガに基づいて、後に送信される事前に定義された電子メールを、設定することができるようにするための能力を持ってできるようにしたいと思います。ここで問題になるのは、ユーザーがこれに使用するアプリを選択できるようにしたいということです。単にIntent.createChooserを呼び出すだけでは何もせず、startActivity()が呼び出されるまで選択されず、選択されたアプリケーションが開きます。ここでの問題は、私は、後に電子メールを送信したいことから、ある、いずれかの電子メールは(画面がオフの間でもよい)である、またはアプリチューがセットアップ時にトリガされるまでアプリチューがトリガされていない、これはそれからでしょうアプリケーションが選択されたときに、設定を中断する、私のアプリケーションを残す。Android - 今後その意図を実行せずに、将来の目的でアプリを選択するにはどうすればよいですか?

createChooserスタイルのメニューを開いて、特定の意図と関連付けるために使用できるアプリを1つ選択できるようにする方法はありますか?そのアプリの名前をアプリに返すだけです。後のインテントを作成して実行するための情報を保存できますか?

+5

独自の[チュー](http://stackoverflow.com/questions/19298048/android-custom-intent-chooser)を作成し、ユーザーが選択したいずれか1のために、関連する情報を保存します。 –

+0

これは働くには少し痛みでしたが、最終的には私が欲しいものと思われます。ありがとう! – biotinker

答えて

0

あなたはこれを行うことができます。

PackageManager packageManager = getPackageManager(); 
List<String> results = new ArrayList<String>(); 
Intent intent = new Intent(YourAction); //Put any action string you have in mind 
//Or any Intent intent = new Intent(...) you think fits 

List<ResolveInfo> activities = packageManager.queryIntentActivities(intent, 0); 
for (ResolveInfo resolveInfo : activities) { 
    ActivityInfo activityInfo = resolveInfo.activityInfo; 
    if (activityInfo != null) { 
     results.add(activityInfo.name); 
    } 
} 

resultsは、必要なアクションを実行できるアクティビティ名を保持します。

関連する問題