我要停止java.lang.security错误
我正在做一个已经实现了服务的Android应用程序。 此服务将启动一些关键事件。在我的主要活动中,我实现了以下功能:我要停止java.lang.security错误,java,android,security,Java,Android,Security,我正在做一个已经实现了服务的Android应用程序。 此服务将启动一些关键事件。在我的主要活动中,我实现了以下功能: @Override public boolean onKeyDown(int keyCode, KeyEvent evento) { if (keyCode == KeyEvent.KEYCODE_BACK) { stopService(new Intent(this, OpenCVService.class));
@Override
public boolean onKeyDown(int keyCode, KeyEvent evento) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
stopService(new Intent(this, OpenCVService.class));
finish();
}
return true;
}
return super.onKeyDown(keyCode, evento);
}
当密钥返回时停止服务,因为如果我不停止会产生安全错误
问题在于,在某些设备中,有时会再次出现错误,原因如下:
08-02 15:53:47.486: W/dalvikvm(14873): threadid=16: thread exiting with uncaught exception (group=0x40cad930)
08-02 15:53:47.486: E/AndroidRuntime(14873): FATAL EXCEPTION: Thread-373
08-02 15:53:47.486: E/AndroidRuntime(14873): java.lang.SecurityException: Injecting to another application requires INJECT_EVENTS permission
08-02 15:53:47.486: E/AndroidRuntime(14873): at android.os.Parcel.readException(Parcel.java:1425)
08-02 15:53:47.486: E/AndroidRuntime(14873): at android.os.Parcel.readException(Parcel.java:1379)
08-02 15:53:47.486: E/AndroidRuntime(14873): at android.hardware.input.IInputManager$Stub$Proxy.injectInputEvent(IInputManager.java:356)
08-02 15:53:47.486: E/AndroidRuntime(14873): at android.hardware.input.InputManager.injectInputEvent(InputManager.java:619)
08-02 15:53:47.486: E/AndroidRuntime(14873): at android.app.Instrumentation.sendKeySync(Instrumentation.java:887)
08-02 15:53:47.486: E/AndroidRuntime(14873): at android.app.Instrumentation.sendKeyDownUpSync(Instrumentation.java:898)
08-02 15:53:47.486: E/AndroidRuntime(14873): at com.uvigo.gti.PictoDroidLite.Control3$1.run(Control3.java:268)
我的问题是“我怎样才能控制这个错误?”
感谢您在清单文件中写入权限
<uses-permission android:name="android.permission.INJECT_EVENTS"></uses-permission>
我也一直在与之斗争 在我的特殊情况下(可能也是你的),问题是当我运行测试时,仿真器中的锁屏打开了 在清除模拟器的数据或某些其他情况下,往往会发生这种情况 是的,很简单
希望有帮助 我尝试了,但仅对根设备产生此错误“权限仅授予系统应用程序”可能的重复