Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Blackberry-启动扬声器的事件注入器_Blackberry_Speaker - Fatal编程技术网

Blackberry-启动扬声器的事件注入器

Blackberry-启动扬声器的事件注入器,blackberry,speaker,Blackberry,Speaker,我正在尝试为来电激活扬声器电话。我可以通过EventInjector.KeyCodeEvent以编程方式接受来电,但无法使用KeyCodeEvent打开扬声器电话 我通过以下方法注册了Phone listener Phone.addPhoneListener(instance); 然后,我尝试在callConnected方法中激活扬声器,如下所示 EventInjector.KeyCodeEvent speakerKeyDown = new EventInjector.KeyCode

我正在尝试为来电激活扬声器电话。我可以通过EventInjector.KeyCodeEvent以编程方式接受来电,但无法使用KeyCodeEvent打开扬声器电话

我通过以下方法注册了Phone listener

Phone.addPhoneListener(instance);
然后,我尝试在callConnected方法中激活扬声器,如下所示

EventInjector.KeyCodeEvent speakerKeyDown = 
    new EventInjector.KeyCodeEvent(EventInjector.KeyCodeEvent.KEY_DOWN,
        (char) Keypad.KEY_SPEAKERPHONE, KeypadListener.STATUS_NOT_FROM_KEYPAD);
EventInjector.KeyCodeEvent speakerKeyUp = 
    new EventInjector.KeyCodeEvent(EventInjector.KeyCodeEvent.KEY_UP,
        (char) Keypad.KEY_SPEAKERPHONE, KeypadListener.STATUS_NOT_FROM_KEYPAD);
EventInjector.invokeEvent(speakerKeyDown);
EventInjector.invokeEvent(speakerKeyUp);

尝试在线程中使用代码,并在调用密钥之间使用thread.sleep100,就像这样

这样行吗

EventInjector.invokeEvent(speakerKeyDown);
Thread.sleep(100);
EventInjector.invokeEvent(speakerKeyUp);
Thread.sleep(100);

要激活扬声器,您可以使用以下代码:

EventInjector.KeyCodeEvent speakerKeyDown =  new EventInjector.KeyCodeEvent(EventInjector.KeyCodeEvent.KEY_DOWN,(char)Keypad.key(2359296),KeypadListener.STATUS_NOT_FROM_KEYPAD);
EventInjector.KeyCodeEvent speakerKeyUp   =  new EventInjector.KeyCodeEvent(EventInjector.KeyCodeEvent.KEY_UP,(char)Keypad.key(2359296),KeypadListener.STATUS_NOT_FROM_KEYPAD);
EventInjector.invokeEvent(speakerKeyDown);
try{Thread.sleep(500);}catch(Exception e){}
EventInjector.invokeEvent(speakerKeyUp);

当您的KeyCodeEvent代码执行时,实际发生了什么?它仍然不工作。然而,在引入上述代码后,静音被激活,而不是扬声器手机。之前,它曾用于激活静音键,但现在总是激活静音键。