我正在尝试构建一个Android应用程序,它可以检测按下背景上的按钮并播放声音或其他内容。对于演示,我正在尝试添加此方法
public boolean onKeyDown(int keyCode, KeyEvent event) {
final MediaPlayer abc = MediaPlayer.create(this, R.raw.abc);
if (event.getKeyCode() == KeyEvent.KEYCODE_POWER) {
abc.start();
}
return super.onKeyDown(keyCode, event);
}
到这个班级
public class RSSPullService extends IntentService{
public RSSPullService(){
super("Nevermind me");
}
@Override
protected void onHandleIntent(@Nullable Intent intent) {
}
}
有什么东西可以帮助吗?我是Android开发和Java的新手。
答案 0 :(得分:0)
在触摸Android手机时,没有任何键盘硬件。那么请指定您想要按哪个按钮?
编辑:
在Manifest fie中添加以下权限:
<uses-permission android:name="android.permission.PREVENT_POWER_KEY" />
并覆盖以下方法:
//To capture any short click of button
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_POWER) {
// this is method which detect press even of button
event.startTracking(); // Needed to track long presses
return true;
}
return super.onKeyDown(keyCode, event);
}
//To capture long press of power button
@Override
public boolean onKeyLongPress(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_POWER) {
// Here we can detect long press of power button
return true;
}
return super.onKeyLongPress(keyCode, event);
}