Comment tuer toute l'application en un seul clic .. finish () ne fonctionne pas ?? il redirige vers l'activité précédente ... merci de me guider.
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()
ne tue pas votre application si vous avez plus d'une activité sur la pile
Utilisez Android.os.Process.killProcess(Android.os.Process.myPid());
de cette façon.
comme échantillon
public void onBackPressed() {
Android.os.Process.killProcess(Android.os.Process.myPid());
super.onBackPressed();
}
Pour plus de détails, voir Quitter une application est-il mal vu? , Comment forcer l'arrêt de mon Android par programme?
J'espère que cela t'aidera.
Vous pouvez utiliser cette fonction pour fermer votre application
Process.killProcess( Process.myPid() );
je pense que tu veux ça
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
Ajouté au niveau 1 de l'API Appelez cela lorsque votre activité est terminée et doit être fermée. Le résultat de l'activité est propagé à la personne qui vous a lancé via onActivityResult ().
vous devez utiliser System.exit () pour tuer votre application en un clic pour fermer directement l'activité.
Pourquoi finish () ne fonctionne pas pour vous?
Prenons un exemple où l'activité A avait appelé l'activité B et lorsque vous appelez finish () sur votre activité B si vous avez terminé l'activité, mais comme l'activité A l'avait appelé et que c'est une activité précédente, elle vous ramène à l'écran de l'activité A
Ce que tu peux faire?
Utilisez Process.killProcess (votre identifiant de processus);
Commencez l'activité à domicile en supprimant votre activité actuelle en utilisant finish (), puis appelez
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
startActivityForResult
pour démarrer une activité.finish()
dans onActivityResult
de l'activité dans laquelle vous commencez une autre activité si result == RESULT_CANCELLED
.finish()
au point de sortie.