我要在Android 4.0.3.r1中自定义导航栏,并希望发送诸如“Home”和“Back”之类的关键事件。因此,我的应用程序不是系统:

IWindowManager mWindowManager = IWindowManager.Stub.asInterface(
                ServiceManager.getService(Context.WINDOW_SERVICE));
mWindowManager.injectKeyEvent( ev, false );

它不起作用,因为我无法从非系统应用程序获取android.permission.INJECT_EVENTS。我怎样才能做到这一点?

最佳答案

BaseInputConnection  mInputConnection = new BaseInputConnection(targetView, true);
mInputConnection.sendKeyEvent(new KeyEvent(...));

10-08 09:01