Reg*_*ais 13 android android-emulator
protected MediaPlayer _mediaPlayer;
protected void playFromResource(int resId)
{
if (_mediaPlayer != null)
{
_mediaPlayer.stop();
_mediaPlayer.release();
}
_mediaPlayer = MediaPlayer.create(this, resId);
_mediaPlayer.start();
}
Run Code Online (Sandbox Code Playgroud)
此代码用于在模拟器和设备上正常工作.从一段时间以来(我认为自从我更新到ADT r10以来)它只适用于设备.在仿真器上不再有声音,应用程序在通过时会冻结on _mediaPlayer.release()(第二次调用该函数).我能够从通过更换崩溃保持应用程序stop(),并release()通过reset(),但它并没有解决的主要问题:有在模拟器上没有声音.
日志文件在调用之后显示了一堆这些(仅在模拟器上) start()
03-09 19:14:30.716:WARN/AudioTrack(34):obtainBuffer超时(CPU是否挂起?)0x1afb8 user = 00001e00,server = 00000600
任何线索????
我在mac os上也看到了这个问题.在我的情况下,当您为模拟器启用"快照"时会发生这种情况.
http://code.google.com/p/android/issues/detail?id=14953
您必须删除模拟器并创建一个未启用"快照"的新模拟器.
看来问题只出现在我的电脑上。我刚刚在另一台电脑上尝试过,效果很好。当我升级到 ADT r10 时,我遇到了一些问题。也许我的开发设置有问题。
| 归档时间: |
|
| 查看次数: |
19424 次 |
| 最近记录: |