如何修复诺基亚设备(J2me)中的媒体异常
Posted
技术标签:
【中文标题】如何修复诺基亚设备(J2me)中的媒体异常【英文标题】:How to fix Media Exception in Nokia device(J2me) 【发布时间】:2012-01-13 09:39:04 【问题描述】:我正在用 J2ME 开发一个游戏,我在游戏中使用了 4 个不同的声音 (midi) 文件。当我在 nokia 设备上运行此游戏时,它显示too many players prefetched
异常。它在 三星 中运行良好。如何解决?
【问题讨论】:
您必须接受答案以帮助将来查看该问题。 @shalini 你必须点击正确答案的绿色勾号。 【参考方案1】:我遇到了同样的问题并解决了实现 PlayerListener 并在播放后释放声音:
playbackPlayer = Manager.createPlayer(ttsConnection.getFileUrl());
PlayerListener pl = new PlayerListener()
public void playerUpdate(Player player, String event, Object eventData)
if (event.equalsIgnoreCase(PlayerListener.END_OF_MEDIA)
|| event.equalsIgnoreCase(PlayerListener.STOPPED))
player.close();
;
playbackPlayer.addPlayerListener(pl);
【讨论】:
【参考方案2】:原因:
许多设备都限制了可以同时处于
prefetched
状态的声音数量。这因设备而异。例如,在许多 S60 上,它是 6 个,而在许多其他设备上,它只有一个。
可能的解决方案:
Realize
玩家,但不要prefetch
他们 - 他们玩时会自动成为prefetched
。
使用PlayerListener
在玩家玩完后释放玩家,以避免在prefetched
状态下持有太多。
【讨论】:
以上是关于如何修复诺基亚设备(J2me)中的媒体异常的主要内容,如果未能解决你的问题,请参考以下文章
J2ME:设备上的多个 HttpConnection 失败(诺基亚 C2-O3)