1

基本的に私が達成したいのは、ショートカットを使ってアクティビティにいつアクセスしているかを知ることです。私は静的なショートカットを使用しています。7.1.1 - SHORTCUTが使用されているかどうか確認する

ドキュメントは通っていますが運はありません。たぶんそれは、私が習得していないAndroidプログラミングの一部である意図にもっと関連しているでしょう。

ありがとうございました。

答えて

3

アプリのショートカットに固有の操作文字列を使用します。マニフェスト内の<activity>のアクション文字列は<intent-filter>である必要はありません。— <activity>には<intent-filter>というAFAIKはまったく必要ありません。

<intent>要素には、アプリのショートカットの理由で、android:action属性が必要です(説明できない理由があります)。だから、それをいくつかの文字列に設定します。その後、アクティビティではgetIntent()を使用して、アクティビティの作成に使用されたIntentを確認し、この特定のアクション文字列があるかどうかを確認できます。そうであれば、アクティビティはアプリのショートカットで作成されました。

+0

ありがとうございました!私が欲しいものをするために管理されています。 –

0

あなたの質問に直接答えることはできませんが、オフィシャルドキュメンテーションではいくつかヒントを得てください。別の簡単なアプローチは、動的なショートカットに対処することができたときに、あなたが意図するフラグのいくつかの種類を追加し、ターゲットアクティビティにそのフラグをチェックすることができ、その後、あなたは活動がショートカットから呼び出されたことを確認することができます https://developer.android.com/guide/topics/ui/shortcuts.html#tracking-usage

はあなたがアンドロイドに追加することができます

0

...それがお役に立てば幸い:各ショートカットにアクション=「android.intent.action.VIEW」の意図この:あなたの活動の

<intent 
    <extra 
     android:name="key" 
     android:value="value" /> 
</intent> 

、その後、これを確認してください:

Intent intentaction = getIntent(); 


if (intentaction.hasExtra("key")) { 

     //Do something 
    } 
関連する問題