【Android应用开发】Instrumentation简单的模拟按键发送消息
2017-02-23 14:45
489 查看
前段时间做了一个PSTN通话的应用程序,PAD连接座机实现通话功能。座机上有上翻、下翻通讯录的功能。通讯录用的是Google默认的。在不改动通讯录的情况下只有使用模拟按键来发送消息。代码很简单,共享下!!
public class MenuDemoActivity extends Activity {
protected static final String TAG = "MenuDemoActivity";
@Override
public void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final Button button = (Button) findViewById(R.id.button1);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
sendKeyCode(KeyEvent.KEYCODE_DPAD_DOWN);
}
});
final Button button2 = (Button) findViewById(R.id.button2);
button2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
sendKeyCode(KeyEvent.KEYCODE_DPAD_DOWN);
}
});
}
/**
* 传入需要的键值即可
* @param keyCode
*/
private void sendKeyCode(final int keyCode){
new Thread () {
public void run() {
try {
Instrumentation inst = new Instrumentation();
inst.sendKeyDownUpSync(keyCode);
} catch (Exception e) {
Log.e("Exception when sendPointerSync", e.toString());
}
}
}.start();
}
}
加入权限:
<uses-permission android:name="android.permission.INJECT_EVENTS" /></span>
public class MenuDemoActivity extends Activity {
protected static final String TAG = "MenuDemoActivity";
@Override
public void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final Button button = (Button) findViewById(R.id.button1);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
sendKeyCode(KeyEvent.KEYCODE_DPAD_DOWN);
}
});
final Button button2 = (Button) findViewById(R.id.button2);
button2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
sendKeyCode(KeyEvent.KEYCODE_DPAD_DOWN);
}
});
}
/**
* 传入需要的键值即可
* @param keyCode
*/
private void sendKeyCode(final int keyCode){
new Thread () {
public void run() {
try {
Instrumentation inst = new Instrumentation();
inst.sendKeyDownUpSync(keyCode);
} catch (Exception e) {
Log.e("Exception when sendPointerSync", e.toString());
}
}
}.start();
}
}
加入权限:
<uses-permission android:name="android.permission.INJECT_EVENTS" /></span>
相关文章推荐
- 【Android应用开发】-(20)简单的模拟按键发送消息
- Android 模拟按键发送消息
- Android学习开发——用RecyclerView模拟微信的消息发送和接受报错处理
- android发送模拟按键消息,出现死锁,timeout的解决方法
- android发送模拟按键消息,出现死锁,timeout的解决方法
- 简单介绍如何应用DDMS协助开发Android Apps
- 简单介绍如何应用DDMS协助开发Android Apps
- [Android] Android应用开发中模拟按HOME键效果
- C#TCPClient应用-一个简单的消息发送和接收 (转)
- Android开发之--(WIFI,蓝牙,电池,背光,SD卡,摄像头,按键,MIC,重力感应等)功能的简单使用
- android应用开发之Activity的简单布局切换
- android开发,以记住用户登录密码为例说明SharedPreferences的简单应用
- android 应用模拟按键
- Android应用开发之通过HTTP协议发送XML数据并调用
- android应用开发全程实录-用户界面部分章节-你真的会用最简单的TextView么? 推荐
- 简单介绍如何应用DDMS协助开发Android Apps
- Android简单应用的开发
- 在C#程序中模拟发送键盘按键消息
- Android模拟按键——源码环境下开发应用程序
- [转]Android模拟按键——源码环境下开发应用程序