onOptionsItemSelected()
の私の実装から呼び出された以下のスニペットは、電子メールアドレス、件名、本文があらかじめ入力されたメールクライアントにユーザーを持ち運ぶためにうまく機能します。私はこれをユーザーにフィードバックを与えるための簡単な方法として使用しています。なぜIntent.createChooser()はBroadcastReceiverを必要とし、どのように実装するのですか?
String uriText =
"mailto:" + emailAddress +
"?subject=" + subject +
"&body=" + body;
Intent emailIntent = new Intent(Intent.ACTION_SENDTO, Uri.parse(uriText));
startActivity(Intent.createChooser(emailIntent, "Pick an email app:"));
メールアプリは(アンドロイド4.0.4と私のネクサスS上で)開くと、LogCatは以下を出力し、私はその理由を把握することはできません。 GoogleとSOはを検索します。createChooser unregisterReceiverは役に立ちません。この状況を助ける方法でunregisterReceiver()
とも呼ばれるcreateChooser()
の多くの例が見つかりません。
4月8日21:26:19.094:E/ActivityThread(27894):アクティビティcom.android.internal.app.ChooserActivityはもともとIntentReceiver [email protected]を漏洩しましたここに登録。 unregisterReceiver()への呼び出しがありませんか?
4月8日21:26:19.094:E/ActivityThread(27894)は:android.app.IntentReceiverLeaked:活動com.android.internal.app.ChooserActivityはIntentReceiver com.android.internal.app.ResolverActivity $ @ 1を漏洩しました4150aac8は当初ここに登録されていました。 unregisterReceiver()への呼び出しがありませんか?
4月8日21:26:19.094:E/ActivityThread(27894):。android.app.LoadedApk $ ReceiverDispatcherで(LoadedApk.java:763)
ので、私のこれはAndroidのバグのように感じています自分のコードはregisterReceiver()
と呼ばれないので、なぜAndroidはに電話する必要があると不平を言っているのですか?
私は私のネクサスS 4.0.4 –
んと同じ問題を抱えている、これはエミュレータで起こりますか?そうでない場合、[this](https://groups.google.com/forum/?fromgroups#!topic/android-developers/POS_LeIim_U)が関連している可能性があります。 – trutheality