バックグラウンド
Android 7.1 には、「AppShortcut」という新機能が追加されました。ドキュメントでは、静的なものと動的なものを作成する方法が説明されており、サンプル アプリも用意されています。
問題
サンプルを試してみましたが、静的アプリのショートカットをクリックすると、「アプリがインストールされていません」というトーストが表示されることに気付きました。
コードを見ると、疑わしい構成が見つかりました (「shortcuts.xml」ファイル内):
<shortcuts xmlns:android="http://schemas.android.com/apk/res/android" >
<shortcut
android:shortcutId="add_website"
android:icon="@drawable/add"
android:shortcutShortLabel="@string/add_new_website_short"
android:shortcutLongLabel="@string/add_new_website"
>
<intent
android:action="com.example.android.appshortcuts.ADD_WEBSITE"
android:targetPackage="com.example.android.appshortcuts"
android:targetClass="com.example.android.appshortcuts.Main"
/>
</shortcut>
</shortcuts>
アプリには "ADD_WEBSITE" というインテント アクションが含まれていないため、見栄えがよくありません。
ダイナミック ショートカットは正常に機能します (MainActivity の通常の起動で追加できます)。
私が試したこと
だから、これは変えたほうがいいと思いました。新しいアクティビティを作成し、この構成を変更してアクティビティ (アクションと targetCalss) に一致させようとしましたが、何らかの理由でまだ同じ toast を取得しました。
質問
コードのどこが間違っている可能性がありますか? それを修正するには何を変更する必要がありますか?