private ActivityManager am;
public Object callMethod(ActivityManager activityManager, Method method, Object... args) {
try {
return method.invoke(activityManager, args);
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
} catch (Exception e) {
ToastUtil.show(this, e.getMessage().toString());
}
return null;
}
public Method getMethod(Class clazz, String methodName, Class<?>... parameterTypes) {
Method method = null;
try {
method = clazz.getMethod(methodName, parameterTypes);
} catch (NoSuchMethodException e) {
e.printStackTrace();
}
return method;
}
private Integer state;
@Override
protected void onCreate(Bundle savedInstanceState) {
public class MainActivity {
am = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
Object ret = callMethod(am, getMethod(ActivityManager.class, "fytgetState"));
try {
state = (Integer) ret;
ToastUtil.show(this, state + "");
if (state == 2) {
callMethod(am, getMethod(ActivityManager.class, "fytsetState", int.class), 0);
}
} catch (Exception e) {
ToastUtil.show(this, e.toString() + "");
}