RT,我们开发的一个小游戏,在别的android上一切都正常的。但是当在HTC P715a 这台机器上运行我们程序的时候,按下旁边的音量调节能显示出声音栏但是按下 + - 都没有反应,但是用手指在屏幕上触摸滑动的话 却可以调节音量。当回到主界面或者其他程序运行中时 却一切都是正常的,求解
解决方案 »
- android GLSurfaceView半透明出错
- Android 3.2上的一个大BUG!!!
- gridview的第一个item里面的imageview不更新?
- 3G USB上网卡编程问题
- android应用开发,如何指定工程所访问文件路经??急!
- 一个初学者TabHost的问题
- 编译android源码时,gcc将中定义了__x86_64__,编译不过,错误如下。我的PC是32位的,应该如何设置?
- AIDL,调用远程服务的进程被挂掉,以及被不同进程多次连接,远程服务端的进程如何获知?
- 程序退出后,无法接收系统广播了,请帮忙看看,谢谢。
- android开发中的Webservice,一般用什么语言开发的多,c#、Java?
- 求没有SD卡 将图片保存在 系统媒体库里面的方法
- android 定时播放问题,求各位大神帮忙!
if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN || keyCode == KeyEvent.KEYCODE_VOLUME_UP)
{
AudioManager mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
int volume = mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN)
{
volume--;
}
else
{
volume++;
}
mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, volume, AudioManager.FLAG_SHOW_UI);
}
或者是HTC修改了一些android的源代码,刚好你用到的一些activity或者是window的属性,不响应volume up/down.你可以先看看log分析一下。
我找到了我们的函数是这样处理的:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if( keyCode == KeyEvent.KEYCODE_CAMERA
|| keyCode == KeyEvent.KEYCODE_VOLUME_DOWN
|| keyCode == KeyEvent.KEYCODE_VOLUME_UP
)
return false;
......
}