![](/img/trans.png)
[英]Android Studio Java MediaPlayer plays only the first second of audio and then stops
[英]Android stops mediaplayer audio
我有一個高頻率的“喀噠”聲,但是單擊20-25次后聲音消失了。
MediaPlayer mp;
mp = MediaPlayer.create(mService.getApplicationContext(),R.raw.click2);
mp.start();
}
ANdroid默認會阻止這種循環嗎?
好吧,我沒有在您提供的代碼中看到一個循環,但是如果您實際上是在循環中創建MediaPlayer
,而不是調用release()
,那么您將因使用過多可用資源而導致錯誤。 我有幾個秘訣給你。
提示1:不要使用mService.getApplicationContext()
,因為(我假設) mService
是Service
且已經是 Context
( Service
繼承自Context
)。 您基本上應該永遠不要使用getApplicationContext()
。
提示2:使用一個MediaPlayer
並注意狀態機 。 嘗試這樣的事情:
MediaPlayer mp = new MediaPlayer();
...
while (whateverCondition) { // I don't know what loop construct you are using...
mp.reset();
mp.setDataSource(this,
Uri.parse("android.resource://com.your.package/" + R.raw.click2);
mp.prepare();
mp.start();
}
...
mp.release();
您將需要適當地填寫軟件包名稱,但這應該使您走上正確的道路。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.