基本的に私が達成したいのは、ショートカットを使ってアクティビティにいつアクセスしているかを知ることです。私は静的なショートカットを使用しています。7.1.1 - SHORTCUTが使用されているかどうか確認する
ドキュメントは通っていますが運はありません。たぶんそれは、私が習得していないAndroidプログラミングの一部である意図にもっと関連しているでしょう。
ありがとうございました。
基本的に私が達成したいのは、ショートカットを使ってアクティビティにいつアクセスしているかを知ることです。私は静的なショートカットを使用しています。7.1.1 - SHORTCUTが使用されているかどうか確認する
ドキュメントは通っていますが運はありません。たぶんそれは、私が習得していないAndroidプログラミングの一部である意図にもっと関連しているでしょう。
ありがとうございました。
アプリのショートカットに固有の操作文字列を使用します。マニフェスト内の<activity>
のアクション文字列は<intent-filter>
である必要はありません。— <activity>
には<intent-filter>
というAFAIKはまったく必要ありません。
<intent>
要素には、アプリのショートカットの理由で、android:action
属性が必要です(説明できない理由があります)。だから、それをいくつかの文字列に設定します。その後、アクティビティではgetIntent()
を使用して、アクティビティの作成に使用されたIntent
を確認し、この特定のアクション文字列があるかどうかを確認できます。そうであれば、アクティビティはアプリのショートカットで作成されました。
あなたの質問に直接答えることはできませんが、オフィシャルドキュメンテーションではいくつかヒントを得てください。別の簡単なアプローチは、動的なショートカットに対処することができたときに、あなたが意図するフラグのいくつかの種類を追加し、ターゲットアクティビティにそのフラグをチェックすることができ、その後、あなたは活動がショートカットから呼び出されたことを確認することができます https://developer.android.com/guide/topics/ui/shortcuts.html#tracking-usage
。
はあなたがアンドロイドに追加することができます
...それがお役に立てば幸い:各ショートカットにアクション=「android.intent.action.VIEW」の意図この:あなたの活動の
<intent
<extra
android:name="key"
android:value="value" />
</intent>
、その後、これを確認してください:
Intent intentaction = getIntent();
if (intentaction.hasExtra("key")) {
//Do something
}
ありがとうございました!私が欲しいものをするために管理されています。 –