ワンクリックでアプリケーション全体を強制終了する方法.. finish()が機能しない??以前のアクティビティにリダイレクトします... plsが私を導きます。
public void onClick(View arg0) {
// TODO Auto-generated method stub
WallpaperManager wp = WallpaperManager
.getInstance(getApplicationContext());
try {
Display d = ((WindowManager) getSystemService(Context.WINDOW_SERVICE))
.getDefaultDisplay();
int width = d.getWidth();
int height = d.getHeight();
wp.setBitmap(b1);
} catch (IOException e) {
Log.e("error", "Cannot set image as wallpaper", e);
}
finish();
}
スタックに複数のアクティビティがある場合、System.exit()
はアプリを強制終了しません
このようにAndroid.os.Process.killProcess(Android.os.Process.myPid());
を使用します。
サンプル用
public void onBackPressed() {
Android.os.Process.killProcess(Android.os.Process.myPid());
super.onBackPressed();
}
詳細は アプリケーションを終了すると眉をひそめていますか? 、 どのように強制的に停止するかAndroidアプリケーションをプログラムで?
これがお役に立てば幸いです。
この関数を使用してアプリケーションを閉じることができます
Process.killProcess( Process.myPid() );
あなたはこれが欲しいと思います
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
APIレベル1で追加されました。アクティビティが完了し、閉じる必要があるときにこれを呼び出します。アクティビティの結果は、onActivityResult()を介して起動したユーザーに反映されます。
system.exit()を使用して、クリックでアプリケーションを強制終了し、アクティビティを直接閉じる必要があります。
なぜfinish()が機能しないのですか?
例として、アクティビティAがアクティビティBを呼び出し、アクティビティが終了した場合にアクティビティBでfinish()を呼び出したが、アクティビティAから呼び出され、それが前のアクティビティであるため、アクティビティA画面に戻る
あなたは何ができますか?
Process.killProcess (your process id);を使用します。
Finish()を使用して現在のアクティビティを強制終了することでホームアクティビティを開始し、次に呼び出します。
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
startActivityForResult
を使用してアクティビティを開始します。result == RESULT_CANCELLED
_の場合、別のアクティビティを開始するアクティビティのonActivityResult
にfinish()
を記述します。finish()
を使用します。