仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1072|回复: 18
打印 上一主题 下一主题

[学习教程] JAVA网页编程之J2ME播放声响的几个成绩(nokia).

[复制链接]
简单生活 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:35:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
轮性能微软曾做过一个例子,就是同一个项目用java和.net来作,结果开发周期,.net是java的一半,性能java是.net的十分之一,代码量java是.net的三倍。呵呵,这说明了什么,.net的全方位比java好。但是有的人说.net不能跨平台,这个问题我和我同学曾讨论过,都认为微软的.net很可能早都可以跨平台了,但是微软为了保护他们的操作系统,所以才没有推出跨平台的.net,只是推出了跨语言的.net,成绩Nokia的手机对声响播放撑持的仿佛不太好。
本文依据我做j2me的履历,总结一下Nokia三个机型的声响播放办法。

1。NokiaS40(7210,3300)和S60(3650,7650)
/*
这四款机子不撑持MIDP2.0的media。
我只针对我做过的机型申明,其他的机型没有效真机实验,
不晓得是不是撑持MIDP2.0中的media
*/

importcom.nokia.mid.sound.*;

publicclassMyClassextendsCanvas
{
……
privateSoundkSound=null;
privatebyte[]dataKill={
(byte)0x02,(byte)0x4a,(byte)0x3a,(byte)0x40,
(byte)0x04,(byte)0x00,(byte)0x0b,(byte)0x28,
(byte)0x83,(byte)0x28,(byte)0x28,(byte)0xd2,
(byte)0x28,(byte)0x00
};

privateFun()
{

if(kSound!=null)
{
kSound.stop();
kSound=null;
}
kSound=newSound(dataKill,Sound.FORMAT_TONE);
kSound.setGain(255);//设置音量
kSound.play(1);//播放,轮回一次
}
}//EndMyClass.

/*
注:
1。关于dataKill数据怎样失掉。
起首,要有一个midi声响文件;
其次,必要nokia的Nokia_Developers_Suite_for_J2ME。
用这个工具中的audioconverter把midi文件转换成字节数据。
然后把失掉的东东copy到你的代码中。

2。关于WTK怎样用nokia的lib。
在nokia的开辟工具目次
..NokiaDevicesNokia_7210_MIDP_SDK_v1_0lib大概
..NokiaDevicesSeries_60_MIDP_Concept_SDK_Beta_0_3_Nokia_editionlib
中找到class.zip。翻开,找到Sound.class,解压,应当能够失掉com
okiauiSoundsound.class,
然后把全部目次再打包成一个zip文件,放到你的项目标lib下。就好了。
大概间接一点,把class.zip间接方到lib下也能够。
用wtk编译打好package后,再翻开你的jar文件,把包括sound.class的谁人com文件夹
删除,最初再把jad中的jar-size依据实践情形改一下。
ok。
归正我就是这么做的,贫苦是很贫苦。可是其实是不想用JBuilder。
不晓得另有没有更复杂的举措。
*/

2。Nokia7610
/*此机型撑持MIDP2.0*/

importjavax.microedition.media.*;

publicclassMyClassextendsCanvas……
{
privatePlayerplayer=null;

……
privatevoidFun()
{
……
playSound("kill.mid");//此处挪用播放函数
/*关于WTK2.1,kill.mid文件放在res目次下*/
}
protectedvoidplaySound(Stringsource)
{
//创立播放器
try
{
if(player!=null)
{
player.close();
player=null;
}
player=Manager.createPlayer(getClass().getResourceAsStream("/"+source),"audio/midi");
player.addPlayerListener(this);
player.setLoopCount(1);
player.realize();
player.start();
}
catch(Exceptionpe)
{
pe.printStackTrace();
}
}

publicvoidplayerUpdate(finalPlayerp,finalStringevent,finalObjecteventData)
{
//queueacalltoupdateEventintheuserinterfaceeventqueue
Displaydisplay=Display.getDisplay(myColorBall);
display.callSerially(newRunnable(){
publicvoidrun()
{
updateEvent(p,event,eventData);
}
});
}
privatevoidupdateEvent(Playerp,Stringevent,ObjecteventData)
{
if(event==END_OF_MEDIA)
{
p.close();
}
elseif(event==CLOSED)
{
p=null;
}
}
}//EndMyClass.
===================================================
/*
谈别的一个成绩。
当切换出程序,游戏声响仍旧持续播放的办理举措。
*/
//MyClass里增添一个函数
voidstopTone()
{
if(kSound!=null)
{
kSound.stop();
}
}

//在MIDlet里的pauseApp()里增加以下代码
publicvoidpauseApp()
{
if(myClass!=null//播放声响的界面存在
&&sound_s==1)//声响开关翻开了
{
myClass.stopTone();
}
}
/*这还只是一个构思,过两天偶然间了再上真机实测*/



Java的B/s开发是通常是javaweb开发,又叫J2EE开发,J2SE是手机开发。C#的C/s和B/s开发是说.net和Asp开发。。u在这里说明一点;资深一点的Java和C#程序员都明白一点
愤怒的大鸟 该用户已被删除
沙发
发表于 2015-1-21 10:38:50 | 只看该作者
是一种为 Internet发展的计算机语言
乐观 该用户已被删除
板凳
发表于 2015-1-30 15:30:40 | 只看该作者
是一种突破用户端机器环境和CPU
冷月葬花魂 该用户已被删除
地板
发表于 2015-2-3 12:06:43 | 只看该作者
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
若天明 该用户已被删除
5#
发表于 2015-2-4 06:39:51 | 只看该作者
是一种语言,用以产生「小应用程序(Applet(s))
谁可相欹 该用户已被删除
6#
发表于 2015-2-4 21:02:33 | 只看该作者
你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。
再现理想 该用户已被删除
7#
发表于 2015-2-9 01:20:31 | 只看该作者
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
爱飞 该用户已被删除
8#
发表于 2015-2-26 16:51:12 | 只看该作者
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
分手快乐 该用户已被删除
9#
发表于 2015-2-26 23:39:33 | 只看该作者
Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
第二个灵魂 该用户已被删除
10#
发表于 2015-3-8 18:28:49 | 只看该作者
J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。
11#
发表于 2015-3-16 10:06:14 | 只看该作者
Pet Store.(宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威性,想学J2EE和EJB的朋友不要 错过了。
简单生活 该用户已被删除
12#
 楼主| 发表于 2015-3-30 11:02:34 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
深爱那片海 该用户已被删除
13#
发表于 2015-4-3 20:36:21 | 只看该作者
如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。
小女巫 该用户已被删除
14#
发表于 2015-4-4 14:03:42 | 只看该作者
是一种突破用户端机器环境和CPU
因胸联盟 该用户已被删除
15#
发表于 2015-4-7 20:31:16 | 只看该作者
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
灵魂腐蚀 该用户已被删除
16#
发表于 2015-4-13 02:51:45 | 只看该作者
象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。
海妖 该用户已被删除
17#
发表于 2015-4-15 07:06:54 | 只看该作者
是一种语言,用以产生「小应用程序(Applet(s))
柔情似水 该用户已被删除
18#
发表于 2015-4-16 08:11:11 | 只看该作者
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
透明 该用户已被删除
19#
发表于 2015-4-25 21:06:48 | 只看该作者
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 16:30

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表