私はオンラインで検索し、AndroidManifest.xmlファイルのintent-filter
を見つけました。しかし、私はまだ私のアプリケーションでクリックされた電子メールIDを受け取る方法を見つけることができません。インテントフィルタを使用してシステムから電子メールを受信する方法は?
私の問題
- は、私は電子メールID([email protected])を含む私のWhatsAppチャットボックスにメッセージを受け取ったと仮定します。
- 電子メールID([email protected])をクリックすると、自分のアプリを開くことができます。 (インテントフィルターを使用している)
- 私のアプリケーションを開くと、電子メールID([email protected])が自分のアクティビティのEditTextに自動的にコピーされます。
私は、次の機能を試してみました:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Intent intent = getIntent();
String x = intent.getExtras().getString(Intent.EXTRA_EMAIL);
Toast.makeText(MainActivity.this, x, Toast.LENGTH_SHORT).show();
}
*トーストは、文字列を受信し、あるいは全くされているかどうかをチェックするためです。
しかし、トーストは空になり、文字列が受信されないことが示されます。
"私は次の機能を試しました" - あなたはEXTRA_EMAILという値があると思いますか?あなたが応答している '<インテントフィルタ>'とは何ですか? – CommonsWare
私はEXTRA_EMAILを使用していましたが、インテントで他のメールキーの値を見つけることができなかったためです。私は、システム全体でAndroidシステムが電子メールアドレスをクリックするのに応答します。 –
「Androidシステムのクリックに応答して、システム全体のメールアドレスをクリックする」 - これは不可能です。あなたが応答している**特定の** '<インテントフィルター>'(またはフィルター)とは何ですか?次に、それだけで、対応する 'Intent'から電子メールアドレスを取得する方法、またはその特定の' Intent'が電子メールアドレスと関係しないかどうかについてアドバイスできます。 – CommonsWare