ドキュメントが言うように:
アプリが Android 7.1 (API レベル 25) 以降をターゲットにしている場合、アプリ内の特定のアクションへのショートカットを定義できます。
- 固定されたショートカットは実行時に公開され、ShortcutManager API も使用します。実行時に、アプリはショートカットのピン留めを試みることができます。このとき、ユーザーはショートカットをピン留めする許可を求める確認ダイアログを受け取ります。ピン留めされたショートカットは、ユーザーがピン留め要求を受け入れた場合にのみ、サポートされているランチャーに表示されます。 リンク
そのため、API レベル 25 以降ではピン留めされたショートカットを使用できるはずですが、コードではエラーが発生しCalls require API level 26
ます。
次のようなすべてのPinShortcut
メソッドで発生しています。
if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.N_MR1)
ShortcutManager shortcutManager = getSystemService(ShortcutManager.class);
if (shortcutManager.isRequestPinShortcutSupported()) {
//do something
}
}
また
shortcutManager.createShortcutResultIntent(pinShortcutInfo);
これらのコード行が取得され、API レベル 26 が必要なエラーです。
何が問題ですか?Document と SDK が異なることを言うのはなぜですか? どうすればこれを解決できますか?