この質問に触れている投稿はありますが、実際に直接アプローチしたり解決したりする人は誰もいません。
ユーザーが最初にアプリにアクセスしたときに、ヘルプ画面を呼び出す/作成するメインのアクティビティがあります (これは実際には 2 番目のアクティビティです)。
ただし、アプリに慣れているユーザーには、起動時に毎回そのヘルプ画面を表示しないオプションを提供したいと考えています。
そこで、SharedPreferences ファイルで設定を行いました。すべてのコードは、SharedPreferences のものを含め、完全に機能します (ユーザーが最初のヘルプ画面をオプトアウト (または後でオプトアウト) できるようにするために作成した [設定] 画面で設定した CheckBox を見て、これを確認できます)。
onCreate() (オーバーライド) メソッドの先頭にあるコードは次のとおりです。
spSettings = getSharedPreferences(strPrefsFilename, 0);
bHelpOnStart = spSettings.getBoolean(strHelpParamName, true);
次に、私は簡単に使用します:
if (bHelpOnStart)
{
// Show help screen.
}
問題は、メインのアクティビティの onCreate() が、他のアクティビティから戻るたびに呼び出されることです! ヘルプ画面が表示されるかどうかのテストが必要なのは、ユーザーがアプリの「外部」から、具体的には Home->apps ページからアプリにアクセスした場合にのみ発生するようにすることです。
先ほど述べた意味で、アクティビティが「外部」から来た場合にのみ呼び出されるアクティビティにメソッドはありますか?
ありがとうございました!