Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/225.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
Java 如何翻译android keyEvent';机器人可以在台式机上使用的东西的密码?_Java_Android_Awt_Keypress - Fatal编程技术网

Java 如何翻译android keyEvent';机器人可以在台式机上使用的东西的密码?

Java 如何翻译android keyEvent';机器人可以在台式机上使用的东西的密码?,java,android,awt,keypress,Java,Android,Awt,Keypress,如问题所述,我希望将android密钥码转换为java awt密钥码,java.awt.Robot可以在其keyPress()和keyrease()方法中使用 两者的映射不同,是否有提供翻译器的库?或者我必须研究地图并自己硬编码吗?我开始硬编码了: private int translateKeyCode(int keyCode) { switch (keyCode) { case AndroidKeyCode.KEYCODE_0: ret

如问题所述,我希望将android密钥码转换为java awt密钥码,java.awt.Robot可以在其
keyPress()
keyrease()方法中使用


两者的映射不同,是否有提供翻译器的库?或者我必须研究地图并自己硬编码吗?我开始硬编码了:

private int translateKeyCode(int keyCode)
{
    switch (keyCode)
    {
        case AndroidKeyCode.KEYCODE_0:
            return KeyEvent.VK_0;
        case AndroidKeyCode.KEYCODE_1:
            return KeyEvent.VK_1;
        case AndroidKeyCode.KEYCODE_2:
            return KeyEvent.VK_2;
        case AndroidKeyCode.KEYCODE_3:
            return KeyEvent.VK_3;
        // 300 miles more of this stuff
    }
}

我也是,我一直在想为什么Android不遵循ASCII

我也做了一个硬代码,但有点简洁,希望有帮助:

public static int toAscii(int key) {
  if (key >= KeyEvent.KEYCODE_A && key <= KeyEvent.KEYCODE_Z)
    return key - KeyEvent.KEYCODE_A + 'A';
  else ...
}
公共静态int-toAscii(int-key){

如果(key>=KeyEvent.KEYCODE\u A&&key您可以使用
event.getUnicodeChar()
方法。
event
KeyEvent
类的对象

int asciiKey = event.getUnicodeChar(event.getMetaState());

简而言之,这个问题的答案是:不,没有简单的方法插入图书馆。机器人在这方面确实有致命的缺陷。