アプリケーションの再開/一時停止に問題があります。ここで、メソッドをオーバーライドonBackPressed()
してこのメソッド用に再定義するアクティビティが次のようになっているとします。
@Override
public void onBackPressed() {
moveTaskToBack(true);
}
そのため、問題なくバックグラウンドで実行されました。したがって、アプリケーションを再開するには、onResume()
オーバーライド メソッドで次のコードを宣言します。
@Override
protected void onResume() {
Intent resume = new Intent(this, MainActivity.class);
if ((resume.getFlags() & Intent.FLAG_ACTIVITY_REORDER_TO_FRONT) != 0) {
resume.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
Logger.e(M_tag, "Resume Activity");
startActivity(resume);
return;
}
super.onResume();
}
プロセスを最小化した後、アクティビティを正常に再開できますが、直面した問題は、リンクを長押ししInternet Browser
てアプリケーションとリンクを共有すると、アクティビティは再開されますが、条件は実行されません。
if (getIntent().getAction().equals(Intent.ACTION_SEND))
onCreate()
以下のように、オーバーライドメソッドで定義したもの:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if (getIntent().getAction.equals(Intent.ACTION_SEND))
Log.e("App", "In action send mode");
}
Intent.ACTION_SEND
バックグラウンドでプロセスがないときにアクションをテストしたところ、正常に条件が実行されましたが、アプリケーションにACTION_SEND
インテントを強制的に実行させるにはどうすればよいですか?
前もって感謝します。