我是靠谱客的博主 虚心学姐,最近开发中收集的这篇文章主要介绍J2ME PUSH技术,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一直以来都在JavaEye上看别人的文章,在开发中当遇到技术问题首先想到的是到JavaEye上寻找答案。很多时候都是满意而归。在此感谢不管是GG JJ DD MM 分享的技术资料,真的谢谢你们。今天我也分享一下我在开发J2ME Push 技术时的一些心得吧。由于本人水平有限,在下面的论述中难免有不足处,望各位轻拍。

 

 

Push 技术是一种通过异步方式将信息传送给设备并自动启动 MIDlet 程序的机制。 通常我们进行网络连接的时候,是

客户端主动去连接服务器,服务器处理请求并返回给客户端响应,这是同步处理机制。而 Push 技术不同,它不需要应用程序

通过“拉”的方式通过网络取得数据,应用程序需要的数据会被主动“推”向设备。当设备接收到信息的时候,相关的MIDlet 会

被激活并开始运行,处理发送过来的数据。一般来说用户是不需要参与这个过程的。Push 技术使得MIDlet 同设备更加紧密

地集成了起来,使得 MIDlet 程序在设备上的启动更加的平滑自然。

值得注意的是,Push 是MIDP2.0 的一个可选项。换句话说设备可以支持、不支持、或者部分的支持 Push 技术。

 

要实现Push技术需要通过在 MIDlet 套件的 jad 文件中指定 MIDlet-push 字段的信息注册。

 

在 Push 注册中有两种方式:静态注册和动态注册,静态注册是在 MIDlet 套件安装的时候成的。你需要通过在 MIDlet 套件的 jad 文件中指定 MIDlet-push 字段的信息。 

 

静态注册需要我们在 jad文件或者 manifest 文件中提供 MIDlet-push 字段的内容, 每个 push

册实体需要提供如下的内容: 

MIDlet-Push-<n>: <ConnectionURL>, <MIDletClassName>, <AllowedSender> 

 

 MIDlet-Push-<n>是push注册的属性名称, 一个MIDlet套件可以有多个Push注册属性。  

 ConnectionURL 是在 Connector.open()中使用的连接字符串 

 MIDletClassName 是在 Push Registry中进行注册的 MIDlet 名称,一定要包括包名,例如  cn.aircom.push.PushMIDlet。MIDletClassName一定要是在 jad 文件中记录的。 

 AllowedSender 是用来说明过滤器的,可以对激活 MIDlet 的来源进行限制。我们可以直接指定 ip地址,192.16.8.0.12。也可以使用通配符“*”和“?” ,其中“*”表示任意地址都可以访问,而“?”代表一个单独的字符串。如 192.168.0.? 

 

下面是注册好以后jad的信息

 

MIDlet-1: SMSSend,,example.sms.SMSSend

MIDlet-2: SMSReceive,,example.sms.SMSReceive

MIDlet-Jar-Size: 9201

MIDlet-Jar-URL: SMS.jar

MIDlet-Name: SMSPush

MIDlet-Permissions: javax.microedition.io.PushRegistry, javax.microedition.io.Connector.sms, javax.wireless.messaging.sms.receive,javax.wireless.messaging.sms.send

MIDlet-Push-1: sms://:50000, example.sms.SMSReceive, *

MIDlet-Vendor: aircom

MIDlet-Version: 1.0.0

MicroEdition-Configuration: CLDC-1.0

MicroEdition-Profile: MIDP-1.0

SMS-Port: 50000

 

最后

以上就是虚心学姐为你收集整理的J2ME PUSH技术的全部内容,希望文章能够帮你解决J2ME PUSH技术所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部