在Google Glass上模拟触控板事件

时间:2014-06-23 22:45:02

标签: android google-glass

背景:我正在尝试为Google Glass创建一个控制器应用程序,可以通过按蓝牙智能手机上的按钮发送滑动和点按。

当前状态:我已经能够模拟这些滑动并在Glass上的应用程序中导航,但是这些滑动不会使显示屏无法关闭(因为我实际上并没有接触到玻璃硬件,只调用我的OnSwipeLeft,OnSwipeRight等听众。)

问题:是否可以通过编程方式模拟来自Google Glass应用程序的点击和滑动触控板事件,以便屏幕保持打开而不会变暗?

4 个答案:

答案 0 :(得分:2)

这就是我在Xamarin中的表现。它在Java中类似。

    private void issueKey(int keyCode)
    {
        Java.Lang.Process p = Java.Lang.Runtime.GetRuntime().Exec("input keyevent " + keyCode.ToString() + "\n");
    }

答案 1 :(得分:1)

请在此处查看我的答案,因为它也可以解决您的问题:https://stackoverflow.com/a/21559601/3767

让我在活动开始时让屏幕变亮的代码是:

PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP, "My Tag");
wl.acquire();
//..screen will stay on during this section..
wl.release();

答案 2 :(得分:1)

触控板本质上是一个d-pad,所以对于向左和向右滑动的基本手势,你可以使用shell命令

输入keyevent 19

19岁以上 20下来 21离开 22对 23回归 24卷 25卷下来 27相机按钮

答案 3 :(得分:0)

Afathman的回答是正确的,但语法只需要对Android进行一些调整。以下是正确的格式:

 try {
        java.lang.Process p = java.lang.Runtime.getRuntime().exec("input keyevent " + Integer.toString(keyCode) + "\n");
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }