私はアンドロイドのショートカットアプリケーションを作っています。私のアプリケーションは、ユーザーが選択して終了したビルトインアプリケーションを開く必要があります。finish()コールの後に表面ビューが空白になる
たとえば、ユーザーが「設定」を選択した場合は、組み込みの設定アプリケーションを開き、アプリケーションを終了する必要があります。私はインテントを使って最初の仕事を達成することができます。しかし、私は私のアプリケーションを閉じるために "finish()"を使用します。プロセスはまだバックグラウンドで実行されています。メニューからアプリケーションを再起動すると、サーフェスビューは空になります。
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setClassName("com.android.settings","com.android.settings.Settings");
context.startActivity(intent);
((Activity) context).finish();
グーグルでは、強制的にアプリケーションを終了するコードが見つかりましたが、アプリケーションを強制終了しないようにアドバイスしています。
どこが間違っていますか?アプリケーションを再起動すると、サーフェスビューが空白になるのはなぜですか?
コードをもう少し投稿できますか?あなたは活動中ですか?そうであれば、(Activity)コンテキストなしでfinish()を呼び出すことができるはずです – FoamyGuy
私はサーフェスビューの内側にいません。私は一時停止で活動を終了しようとしました。しかしまだアクティビティは閉じていません。 –
public void onPause(){ \t finish(); \t super.onPause(); } –