I need close the settings screen from another app, how to works appLock.
here:
my service code, this code works OK
final ActivityManager activityManager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
Timer timer = new Timer();
timer.scheduleAtFixedRate(
new TimerTask() {
public void run() {
String appProcesses = activityManager.getRunningTasks(1).get(0).topActivity.getPackageName();
if (appProcesses.equals("com.android.settings")) {
Intent i1=new Intent(service.this, LockedScreen.class);
i1.setAction(Intent.ACTION_MAIN);
i1.addCategory(Intent.CATEGORY_HOME);
i1.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
i1.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
i1.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(i1);
}
}
}
, 0, 1000);
my lock screen code in backpresed and this code don't close settings activity:
@Override
public void onBackPressed() {
super.onBackPressed();
try {
ActivityManager am = (ActivityManager) getApplicationContext().getSystemService("Settings");
Method forceStopPackage;
forceStopPackage = am.getClass().getDeclaredMethod("forceStopPackage", String.class);
forceStopPackage.setAccessible(true);
forceStopPackage.invoke(am, "com.android.settings");
} catch (NoSuchMethodException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
error in backpressed, this error is in forceStopPackage = am.getClass().getDeclaredMethod("forceStopPackage", String.class);:
09-11 09:35:21.315 3037-3037/? E/AndroidRuntime﹕ FATAL EXCEPTION: main
java.lang.NullPointerException
at pe.com.oscar.settingsintent.LockedScreen.onBackPressed(LockedScreen.java:41)
at android.app.Activity.onKeyUp(Activity.java:2361)
at android.view.KeyEvent.dispatch(KeyEvent.java:2707)
at android.app.Activity.dispatchKeyEvent(Activity.java:2594)
at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchKeyEvent(PhoneWindow.java:2098)
at android.view.ViewRootImpl.deliverKeyEventPostIme(ViewRootImpl.java:3608)
at android.view.ViewRootImpl.handleImeFinishedEvent(ViewRootImpl.java:3578)
at android.view.ViewRootImpl$ViewRootHandler.handleMessage(ViewRootImpl.java:2828)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:153)
at android.app.ActivityThread.main(ActivityThread.java:5071)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:557)
at dalvik.system.NativeStart.main(Native Method)
HELPP PLEASE!!
via Chebli Mohamed
Aucun commentaire:
Enregistrer un commentaire