[J2ME]Nokia播放音乐时发生MediaException的解决办法
[J2ME]Nokia播放音乐时发生MediaException的解决办法
现象
在Nokia7610上播放音乐时遇到了-18的MediaException错误!
J2ME中播放音乐资源的代码很容易找,我是直接从这篇比较经典的《熟练使用J2ME在实际开发中的可选包MMAPI》中复制的代码,
心想,这总不会有错吧?
播放媒体文件流,真机测试发生异常的代码 |
Player p = Manager.createPlayer(m_isInputImage,"audio/amr"); p.realize(); // Set a listener. p.addPlayerListener(new Listener()); // Grab volume control for the player. // Set Volume to max. vc = (VolumeControl)p.getControl("VolumeControl"); if (vc != null) vc.setLevel(100); // Set a start time. p.setMediaTime(5 * SECS_TO_MICROSECS); // Guarantee that the player can start with the smallest latency. p.prefetch(); // Non-blocking start p.start(); |
这段代码在Nokia开发工具包的S60系列模拟器上顺利通过!
但是,不幸的事情发生了,在真机测试中,Nokia7610弹出一个错误:
“javax.microedition.media.MediaException: -18”
这下,在网上根本找不到-18这个错误号到底代表什么。
和我有类似情况的还有houhou,他04年11月报告过这个错误:
http://www.cnjm.net/cgi-bin/lbcjm/topic.cgi?forum=5&topic=4582。
解决
原因是,Player::setMediaTime函数在Nokia 7610上不支持!
修正为以下代码后,真机测试通过。具体的应用文档参见:《[J2ME]手机也可以玩播客(Podcast)! Geek客说明》,源代码下载http://files.cnblogs.com/zhengyun_ustc/toodouPodcastMidlet.rar 。
播放媒体文件流,能测试通过的代码 |
m_player = Manager.createPlayer(m_isInputImage, "audio/amr"); // realize the player m_player.realize(); System.out.println("Got player realize!"); // Guarantee that the player can start with the smallest latency. m_player.prefetch(); System.out.println("Got player prefetch!"); // Grab volume control for the player. // Set Volume to max. m_volume = (VolumeControl) m_player.getControl("VolumeControl"); if (m_volume != null) m_volume.setLevel(m_nVolume); System.out.println("Got VolumeControl!"); m_player.start(); |
希望这个报告对你有参考价值。也希望你能够告诉我-18代表着什么。
郑昀@ultrapower |
产品名称 |
产品版本 |
Keyword: Mobile Media 媒体播放 j2me midp MediaException |
iPodderX Mobile |
0.0.1 BETA |
[J2ME]Nokia播放音乐时发生MediaException的解决办法相关推荐
- 0xC0000005: 写入位置 0x00000000 时发生访问冲突的解决办法(内存对齐)
0xC0000005: 写入位置 0x00000000 时发生访问冲突的解决办法(内存对齐) 顺带总结相关的内存问题: 1)写入位置发生冲突(内存对齐造成) 2)delete造成的this->0 ...
- 【Oracle相关】坑!使用oracle时,发生标识符无效解决办法
–真是个大坑 使用oracle时,发生标识符无效解决办法 一般出现该错误的原因: 1.列名写错导致 2.使用了关键字作为了列名 但是这次遇到的情况有点奇葩 通过dblink直接查询该表,并没有报出问题 ...
- SVN“验证位置时发生错误”的解决办法
验证位置时发生错误:"org.tigris.subversion.javahl.ClientException...... 验证位置时发生错误:"org.tigris.subver ...
- svn——“验证位置时发生错误”的解决办法
验证位置时发生错误:"org.tigris.subversion.javahl.ClientException...... 验证位置时发生错误:"org.tigris.subver ...
- 0xC0000005: 写入位置 0x00000000 时发生访问冲突的解决办法
我是新手,其实对这个东西我自己也不是很清楚,当然更不可能将有的情况都列举出来,在这里我只是将自己见到的,可能的情况做一个汇总: 上面的意识就是你吧值付给了不该赋给的变量,或者说你把值付给了不能付给的变 ...
- [C#]用HttpWebRequest加载证书建立SSL通道时发生异常的解决办法
编写者:郑昀@UltraPower 关键字:HttpWebRequest, SSL,X509Certificate dotNet Framwork 1.1 编写时间:2005-3-29 WSE 2. ...
- 将文件复制到FTP服务器时发生错误的解决办法
自己新搭了一台FTP服务器,给部门同事一起用,用ftp软件上传文件没什么问题,直接通过windows的界面上传文件出现如下提示 应该是文件传输编码有问题 远程到ftp服务器 打开IIS 选择正在使用的 ...
- 使用oracle发生标识符无效解决办法
使用oracle时,发生标识符无效解决办法 1.一直以来写SQL语句发生标识符无效一般多为列名写错导致 2.也有许多情况是使用了关键字作为了列名 但是今天发生了一个意外的情况,在oracle数据库建了 ...
- 解决 后台播放音乐时,设置手机铃声,后台音乐不会暂停
2019独角兽企业重金招聘Python工程师标准>>> 手机后台播放音乐时,设置手机铃声,后台音乐不会暂停,此现象的为设置手机铃声界面,并没要加入播放的foucs机制, 此修改在pa ...
最新文章
- 简析ThinkSNS+ 计算字符显示长度的方法!【社交系统研发日记】
- 1.1初识python
- Python初学者之ImportError: No module named moviepy.editor 的解决办法
- pip安装pytorch 速度更快
- 【设计模式】——工厂方法FactoryMethod
- Android开发工程师面试指南
- 牛客小白月赛 27部分题解
- 远程连接桌面不能全屏显示的解决方法
- 软件测试 - 用例篇
- 下载蓝盒插件_bilibili哔哩哔哩下载助手
- 小米6显示服务器出错,小米6解锁BL显示未连接手机解决办法以及各种小技巧汇总......
- 计算机电源带不起来,电脑电源不稳定的表现有哪些_电脑电源带不动的症状
- android 视频剪辑工具,视频剪辑工具手机版
- 基于核概念的KCCA算法
- Flutter 新一代图形渲染器 Impeller
- 解决Python下安装unrar后仍然提示Couldn't find path to unrar library...
- 国际性PRO-SID研究开始招募患者,该研究评估Panzyga(R)用于慢性淋巴细胞白血病和继发性免疫缺陷患者的一级预防性治疗
- 中标麒麟学习笔记0:安装极点五笔输入法
- GIT提交错误汇总及解决方案
- [精选]看股票走势图的软件用哪个好(如何看懂股市行情大盘的走势)
热门文章
- 依赖注入Dagger2详解
- Java高并发编程:同步工具类
- 网络ip功放连接图_精耕新基建:智能IP网络构筑稳固的连接基石
- xml显示浏览器标签_浅析浏览器书签的导入和导出
- mysql性能调优快捷键_mysql优化篇
- ajax制作表格,Ajax实现表格实时编辑(示例代码)
- java indexof int_Java Stack indexOf(Object, int)用法及代码示例
- LetCode: 227. 简单计算器2
- html文字绕图文字置顶,如何实现html文字绕排
- IIS 上传文件大小配置步骤(默认200K)