android 实现模拟按键方法一

通过Runtime实现,代码如下:

try
{
String keyCommand = "input keyevent " + KeyEvent.KEYCODE_MENU;
Runtime runtime = Runtime.getRuntime();
Process proc = runtime.exec(keyCommand);
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}

这个代码是模拟菜单键,模拟其它按键只需将KeyEvent.KEYCODE_MENU替换成其它键值。

缺点:反应速度较慢

以下附带各KeyCode值:

KEYCODE_UNKNOWN=0; 

KEYCODE_SOFT_LEFT=1; 

KEYCODE_SOFT_RIGHT=2; 

KEYCODE_HOME=3; 

KEYCODE_BACK=4; 

KEYCODE_CALL=5; 

KEYCODE_ENDCALL=6; 

KEYCODE_0=7; 

KEYCODE_1=8; 

KEYCODE_2=9; 

KEYCODE_3=10; 

KEYCODE_4=11; 

KEYCODE_5=12; 

KEYCODE_6=13; 

KEYCODE_7=14; 

KEYCODE_8=15; 

KEYCODE_9=16; 

KEYCODE_STAR=17; 

KEYCODE_POUND=18; 

KEYCODE_DPAD_UP=19; 

KEYCODE_DPAD_DOWN=20; 

KEYCODE_DPAD_LEFT=21; 

KEYCODE_DPAD_RIGHT=22; 

KEYCODE_DPAD_CENTER=23; 

KEYCODE_VOLUME_UP=24; 

KEYCODE_VOLUME_DOWN=25; 

KEYCODE_POWER=26; 

KEYCODE_CAMERA=27; 

KEYCODE_CLEAR=28; 

KEYCODE_A=29; 

KEYCODE_B=30; 

KEYCODE_C=31; 

KEYCODE_D=32; 

KEYCODE_E=33; 

KEYCODE_F=34; 

KEYCODE_G=35; 

KEYCODE_H=36; 

KEYCODE_I=37; 

KEYCODE_J=38; 

KEYCODE_K=39; 

KEYCODE_L=40; 

KEYCODE_M=41; 

KEYCODE_N=42; 

KEYCODE_O=43; 

KEYCODE_P=44; 

KEYCODE_Q=45; 

KEYCODE_R=46; 

KEYCODE_S=47; 

KEYCODE_T=48; 

KEYCODE_U=49; 

KEYCODE_V=50; 

KEYCODE_W=51; 

KEYCODE_X=52; 

KEYCODE_Y=53; 

KEYCODE_Z=54; 

KEYCODE_COMMA=55; 

KEYCODE_PERIOD=56; 

KEYCODE_ALT_LEFT=57; 

KEYCODE_ALT_RIGHT=58; 

KEYCODE_SHIFT_LEFT=59; 

KEYCODE_SHIFT_RIGHT=60; 

KEYCODE_TAB=61; 

KEYCODE_SPACE=62; 

KEYCODE_SYM=63; 

KEYCODE_EXPLORER=64; 

KEYCODE_ENVELOPE=65; 

KEYCODE_ENTER=66; 

KEYCODE_DEL=67; 

KEYCODE_GRAVE=68; 

KEYCODE_MINUS=69; 

KEYCODE_EQUALS=70; 

KEYCODE_LEFT_BRACKET=71; 

KEYCODE_RIGHT_BRACKET=72; 

KEYCODE_BACKSLASH=73; 

KEYCODE_SEMICOLON=74; 

KEYCODE_APOSTROPHE=75; 

KEYCODE_SLASH=76; 

KEYCODE_AT=77; 

KEYCODE_NUM=78; 

KEYCODE_HEADSETHOOK=79; 

KEYCODE_FOCUS=80;//*Camera*focus 

KEYCODE_PLUS=81; 

KEYCODE_MENU=82; 

KEYCODE_NOTIFICATION=83; 

KEYCODE_SEARCH=84; 

KEYCODE_MEDIA_PLAY_PAUSE=85; 

KEYCODE_MEDIA_STOP=86; 

KEYCODE_MEDIA_NEXT=87; 

KEYCODE_MEDIA_PREVIOUS=88; 

KEYCODE_MEDIA_REWIND=89; 

KEYCODE_MEDIA_FAST_FORWARD=90; 

KEYCODE_MUTE=91;

android 实现模拟按键的更多相关文章

  1. Android(Linux)模拟按键、触摸屏等事件

    前提: 在我们应用程序或者在写Android自己主动化測试时候经常会须要模拟实体按键,来给我们做測试用.这也是我要整理的目的. 基本的涉及的是Linux Input Event事件. 下面的样例基于A ...

  2. Android随笔之——模拟按键操作的几种方式

    前几天转过一篇Android上模拟按键操作.触屏事件的博客,昨天又去找了百度.谷歌了一下,写了一点简单的测试代码,留待不时之需.有需要看之前转载的那篇博客的请看这里→_→转:Android随笔之——使 ...

  3. Android 命令行模拟按键

    /***************************************************************************** * Android 命令行模拟按键 * 说 ...

  4. android后台input命令模拟按键【转】

    本文转载自:http://www.cnblogs.com/sh1o2os/archive/2013/02/05/2893201.html 有时做开发时,我们使用的触摸屏没有虚拟按键(HOME.BACK ...

  5. android 模拟按键事件

    模拟按键事件可以提高代码的复用性,比如在一个edittext的回车事件里做的一些处理 在该edittext的另一个输入要做相同的处理时,模拟按键事件就非常方便了. 代码很简单,直接上代码: new T ...

  6. adb shell命令模拟按键/输入input使用keycode 列表详解

    在adb shell里有一个非常使用的命令,模拟按键输入,这里首先不要理解为是键盘的模拟按键,下面命令的使用和键值做一个详解. input命令格式 adb shell input keyevent & ...

  7. delphi 向其他程序发送模拟按键

    向其他程序发送模拟按键: 1.用keybd_event: varh : THandle;beginh := FindWindow('TFitForm', '1stOpt - [Untitled1]') ...

  8. Android隐藏虚拟按键,关闭开机动画、开机声音

    /*********************************************************************** * Android隐藏虚拟按键,关闭开机动画.开机声音 ...

  9. C#获取窗口,模拟按键操作

    C#获取窗口,模拟按键操作,实现计算器模拟操作.首先引用. using System.Runtime.InteropServices; 使用DllImport引入两个函数: // Get a hand ...

随机推荐

  1. xcode设置 - App内存暴增

    当你发现你的项目中什么没有写,只是启动App内存就飙升到50M甚至60M以上,那么请你接着往下看吧,本文对你绝对非常有用! 1. Enable zombie object: 为了方便我们调试程序,我们 ...

  2. iOS 10 的适配问题-b

    随着iOS10发布的临近,大家的App都需要适配iOS10,下面是我总结的一些关于iOS10适配方面的问题,如果有错误,欢迎指出. 1.系统判断方法失效: 在你的项目中,当需要判断系统版本的话,不要使 ...

  3. 如何正确看待Linq的DistinctBy扩展和ForEach扩展

    在微软标准的Linq中,并没有DistinctBy扩展和ForEach扩展,但在平时使用工作中却又经常需要使用到这两个功能,照理来说,微软在Linq中应该包含这两个扩展才对,可事实上为什么并没有呢?本 ...

  4. GWT RPC

    GWT RPC GWT RPCRemote Procedure Calls GWT: Google Web Toolkit的缩写,有了 GWT可以使用 Java 编程语言编写 AJAX 前端,然后 G ...

  5. C#中字符串驻留技术

    转自:http://www.cnblogs.com/Charles2008/archive/2009/04/12/1434115.html MSDN概念:公共语言运行库通过维护一个表来存放字符串,该表 ...

  6. 【noi2013】【bz3244】树的计数

    题目概括:给出树的dfs.bfs序 求树的期望高度 题解:由于我比较懒 先copy一段百度文库的题解~void copy(){我们可以发现,所求的树之所以会有很多种,是因为出现了这种情况:对于A.B, ...

  7. HDU4611+数学

    /* 找规律 题意:abs(i%A - i%B) 对i从0~N-1求和 从0~N-1一个一个算必TLE,着A,B两者差相同的部分合并起来算 */ #include<stdio.h> #in ...

  8. 50个非常有用的PHP工具

    PHP是使用最为广泛的开源服务器端脚本语言之一,当然PHP并不是速度最快的,但它却是最常用的脚本语言.这里有50个有益的PHP工具,可以大大提高你的编程工作: 调试工具 Webgrind Xdebug ...

  9. FastScroll(2)不分组的listview 打开fastscroll的分组提示功能

    本文只让fastscroll具有提示分组功能,但listview并不显示分组,如果想让分组的listview显示fastscroll,看下篇. 1,在listview中打开fastscroll 2,自 ...

  10. git源码中的Makefile

    https://github.com/chucklu/GitStudy   这链接里面的第一次提交 [chucklu@localhost GitStudy]$ cat Makefile CFLAGS= ...