SNAP,即Scalable Network application Package,翻译为可缩放的网络应用解决方案。
SNAP Mobile APIs是Nokia公司和SUN公司提供给全球众多移动游戏开发者的基于Nokia SNAP 移动平台(像N-Gage™ Arena.)和Sun java Wireless Toolkit (version2.3)的一个功能强大的J2ME客户端的API开发包。在SNAP APIs中提供了基于可高效拓展服务的手机多人在线游戏的开发环境,可以使开发者很方便的为程序添加网络特性,比如注册、登陆、即时通信、多人在线游戏、认证、好友列表、聊天、游戏积分排行、用户帐户和个人信息等游戏特性,大大地简化进行手机多人在线游戏J2ME程序的开发工作。
SNAP Mobile具有三大特点:
l 具有游戏社区功能(IMPS services)
l 具有在线游戏功能(SNAP Game services)
l 具有交流社区功能(Web services)
也就是说,你可根据你的项目特点有选择地进行开发。
snapmobile给出了一些与nokia合作的手机游戏开发商的展示:
http://snapmobile.nokia.com/n-gage/web/en/snapmobile/games.jsp
Octopi Game Development Studio也有很好的示范,你可以浏览
http://www.octopi.com/snap.htm
从那里你能得到一个很好的概念。
对于移动游戏开发者来说,它其实就是多人在线游戏的开发工具。通过它你可以实现手机注册、登陆、进入游戏大厅或者游戏房间进行多种模式的游戏对战。
它的构架是这样的:
对于客户端移动游戏开发者来说,只要实现了客户端访问到服务器,能发出请求,完成登陆、接收信息以及其他的一些社区功能而后登出服务器的话,基本就完成客户端的开发。
在Nokia的产业链中,整个开发运作流程是这样的:
可以看到Nokia有一整套规范的操作流程和成熟的商业运作模式。想了解得更多的话,可以自己仔细查询:
http://snapmobile.nokia.com/n-gage/web/en/snapmobile/PRocess.jsp
只要与Nokia提供的服务器端模拟器完成上述功能,就可以进行SNAP Mobile开发,而不需要在真实的通讯网络里完成。这就大大节约了开发成本,提高效率,也使开发者能回到核心业务,集中精力在游戏开发上,而不需要再费过多的资源关注通讯的细节。
我们下面具体讲解一下SNAP客户端登陆模拟服务器的示例。
下载开发工具:
1。下载SNAP Mobile Client SDK:
http://www.forum.nokia.com/main/0,6566,034-1021,00.Html
2。下载Sun Java Wireless Toolkit 2.3 Beta:
http://java.sun.com/prodUCts/sjwtoolkit/download-2_3.html
(注重,必须要求用Sun Java Wireless Toolkit 2.3。安装它时候,虽然出现的还是WTK2.2版本字样,但不要怀疑。启动时它的界面不再是黄、红、蓝的强势界面,而且友好的浅蓝界面。)
安装完成后,接着就是启动WTK2.3,新建一个项目。例如:
新建 SNAPTest 项目,Midlet的类名为 test.HelloWorld。保持原来的默认设置,其他的可选包都不用选择。
在设置的外部api包 External APIs里面会看到一个 sm-ui-api.jar的选项,还有一个Bundle的选项,都打上勾。
然后在安装SNAPMobile的目录下找到 samples文件夹,把samples/HelloWorld/src 目录下的 test 文件复制到WTK2.3的文件夹 WTK2.3/apps/SNAPTest/src目录下
然后打开设置在权限许可 Permission的地方添加访问权限的API:
MIDlet-Permissions: javax.microedition.io.Connector.socket
MIDlet-Permissions:javax.microedition.io.Connector.http
接着是设置用户自定义 User Defined ,在里面添加连接信息:
SNAP-Mobile-Host: localhost
SNAP-Mobile-Port: 8080
SNAP-Mobile-Protocol: http
username: test1
passWord: test
在安装SNAPMobile的目录下找到 lib 文件夹,把 sm-api.jar复制到WTK2.3/apps/SNAPTest/lib目录下。然后编译生成。
启动安装SNAPMobile的目录下SNAPMobile/tools/ServerEmulator的服务器端模拟器 emu.bat,会出现一个DOS运行框,里面有发布信息,然后再运行客户端的模拟器,就会出现欢迎信息,完成登陆。
可能看完这个示例后,你对SNAP Mobile 有了一个初步的概念。下面我们再深入一点地介绍整个SNAP Moile的构架和实现。
通过以下HelloWorld.java的主要部分代码:
新闻热点
疑难解答