bonjour,

je pense avoir essayer a peu prés tous ce qui existe pour tuer un process, mais rien ne marche pour forcer l'arrêt du service Bluetooth

mon problème de base c'est que sur les galaxy tab4 aléatoirement le Bluetooth plante (j'ai 20 tablettes dans la même classe, donc peut-être des interférences,... je sais pas) , en activant et désactivant le Bluetooth ca repart pas, par contre si je vais sur les application, -> toutes les application -> Bluetooth -> forcer l'arrêt , le process redémarre et tout se remet a fonctionner. en redémarrant aussi, néanmoins on peu pas redémarrer les tablettes en pleine activité.

donc si qq'1 sait comment soit faire un raccourcie vers ce bouton, soit killer le Bluetooth, voila mon bout de code qui n'arrête pas le process, mais envoie bien l'ordre puisque les logs le dise.

ActivityManager am = (ActivityManager) mContext.getSystemService(Context.ACTIVITY_SERVICE);
int pid1 = 0;
List<ActivityManager.RunningAppProcessInfo> procInfo = am.getRunningAppProcesses();
for (ActivityManager.RunningAppProcessInfo proc : procInfo)
if (proc.processName.indexOf("com.android.bluetooth") >= 0) {
pid1 = proc.pid;
android.os.Process.killProcess(pid1);
android.os.Process.sendSignal(pid1,
android.os.Process.SIGNAL_KILL);
}
try {
//Runtime.getRuntime().exec( "su" );
android.os.Process.killProcess(pid1);
Runtime.getRuntime().exec("kill -9 " + pid1);
//System.exit(0);
} catch (IOException ioe) {
ioe.printStackTrace();
}
try {
ActivityManager actvityManager = (ActivityManager) this.getSystemService(ACTIVITY_SERVICE);
actvityManager.killBackgroundProcesses("com.android.bluetooth");// pkgn is a process id /////
} catch (Exception e) {
e.printStackTrace();
}

getIntent();

ActivityManager am1 = (ActivityManager) getSystemService(Activity.ACTIVITY_SERVICE);
am1.killBackgroundProcesses("com.android.bluetooth");
android.os.Process.killProcess(android.os.Process.getGidForName("com.android.bluetooth"));
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}