专注于Blackberry

BlackBerry 应用程序开发者指南 第二卷:高级–第10章 访问安装和配置信息

10            第10章 访问安装和配置信息 服务定制API 服务定制API(Service Book API) 服务定制API(net.rim.device.api.servicebook)使应用程序可以和BlackBerry基础(infrastructure)进行交互.服务定制由服务记录组成,每个服务定义了一个在BlackBerry设备上有效的服务. 服务记录定义了通讯协议(WAP或IPPP),网关,以及配置信息,例如浏览器设置. 服务定制API功能 描述 管理MDS服务连接 浏览器应用程序API可以使用任何一个带有BrowserConfig 的UID的ServiceBook入口,连接到一个无线网络.例如, Browser类使用服务定制获取一个BrowserSession. Browser.getTransportUid()查询一个服务定制来获取和一个给定服务记录相关联的UID. 管理mail信息 允许应用程序指定一个频道, 它引用合适的服务记录并通过此频道发送一个email.例如,应用程序可以使用BES或一个BlackBerry Internet Service选择发送消息..为获取更多信息,参看12页的”Mail API”. 为了查看BlackBerry设备上的服务定制,单击选项下的Service Book. ServiceBook类维护一个ServiceRecord对象的集合.每个ServiceRecord对象由一个唯一的ID(UID)和连接ID(CID)标识. CID 描述 CMIME CMIME(compressed multi-purpose mail extensions,压缩多意图邮件扩展) CID定义了消息连接 ALP ALP(address lookup protocol,地址查询协议) CID为无线GAL(Global Address List,全局地址列表)查询定义连接. IPPP IPPP(IP Proxy Protocol)使用BlackBerry® MDS Services定义HTTP连接. BrowserConfig BrowserConfig(浏览器配置)CID定义BlackBerry和WAP浏览器连接. Sync 数据同步(Sync) CID为无线数据同步定义连接. WAP WAP(wireless application [...]

继续阅读本文 →

Taigoo发表于 April 29, 2008 6:00 am | 留言 |文档 

BlackBerry 应用程序开发者指南 第二卷:高级–第9章 备份和恢复持久数据

9             第9章 备份和恢复持久数据 同步API 增加备份持久数据的支持 同步API 在net.rim.device.api.synchronization包里的同步API可以使应用程序和BlackBerry桌面软件集成以完成2个任务: 将一个数据库备份到桌面文件,以后可以恢复它. 和桌面应用程序同步数据. 注::BlackBerry桌面软件需要备份的数据使用下面的格式: Length<2> Type<1> Data<n> 为了验证数据是否有合适的格式,使用net.rim.device.api.synchronization.ConverterUtilities类里的任何一个写方法; 数据备份 桌面软件提供一个Backup and Restore工具,它允许用户将BlackBerry设备上的数据保存到桌面上的一个文件,并且使用此桌面文件将数据恢复到BlackBerry设备上. 当一个应用程序实现了同步API,桌面软件将应用程序数据库备份和恢复到其他的BlackBerry设备数据库.你也可以使用同步API创建数据备份(archives),或者当BlackBerry设备第一次连接到计算机时跳出应用程序数据库. 数据同步 桌面软件提供一个Intellisync的工具,此工具将BlackBerry设备和用户计算机上的应用程序同步. 当备份和恢复加载BlackBerry设备和一个桌面备份文件之间的数据时,同步比较桌面应用程序存在的数据和BlackBerry设备上的数据,然后合并这些数据.. 为了和桌面应用程序进行数据同步,使用BlackBerry桌面API为桌面软件编写一个插件.BlackBerry JDE也包含了一个同步实例应用程序作为桌面的一个插件.  注:你存储数据进行备份的格式是没有限制的.唯一的要求就是应用程序应该使用桌面插件应用程序使用的格式进行读写数据. 同步API 实现下面同步API提供的接口: 接口 描述 SyncConverter 转化BlackBerry设备需要的SyncObject格式和桌面需要的序列化格式之间的数据. SyncCollection 代表了一个应用程序同步对象的集合. SyncObject 代表了一个可以备份和恢复到用户计算机的对象. SerialSyncManager类可以访问同步管理器,特别的,它可以为同步注册新的对象  注:为了备份和恢复非常少的数据,例如应用程序设置选项,你可以扩展SyncItem类,并实现它的抽象方法. SyncItem类为你已经实现了SyncCollection, SyncConverter, 和 SyncObject接口. 增加备份持久数据的支持 为了支持备份,修改一个实现了Persistable接口的类,实现SyncObject接口. 修改应用程序的主类以实现SyncCollection和SyncConverter接口.  注: SyncCollection和SyncConverter接口可以由相同的类或者由单独的类实现,这决定于你的应用程序.下面的章节将解释如何再相同的类里实现这些接口. 定义一个唯一ID 定义一个_uid变量. getUID()的实现为同步操作返回一个唯一ID. 定义一个构造子 你的构造子的实现接受一个唯一ID作为参数,并且将之设置为_uid变量的值.  注:每一个存储在BlackBerry设备上的同步对象,必须有一个关联的ID,此ID对于它的应用程序来说必须是唯一的. UIDGenerator缺省的设置此ID值. 注册一个同步集合 [...]

继续阅读本文 →

Taigoo发表于 April 29, 2008 5:58 am | 留言 |新闻 

BlackBerry 应用程序开发者指南 第二卷:高级–第8章 存储持久数据

8                   第8章 存储持久数据 持久数据选项 管理持久数据 内存管理以及持久对象 管理客户对象 持久数据选项 在BlackBerry设备上,以下面的方式可以存储数据: 使用MIDP记录存储. 使用BlackBerry持久存储模型. 如果你想让你的应用程序可以在多个与Java ME兼容的设备上运行,那么采用MIDP的实现.如果你编写应用程序仅仅为BlackBerry设备,使用BlackBerry持久存储模型,因为它提供了一个更为灵活有效的方式存储数据, MIDP存储记录 javax.microedition.rms包提供了MIDP记录存储的实现.持久数据存储在RecordStore对象里.一个记录存储最大可以为64KB. 数据的离散单元称为记录.一个记录是一个字节数组,赋给它一个唯一标志数. 创建一个记录存储 调用openRecordStore().指定true来描述当记录存储不存在时应该创建此记录存储. RecordStore store = RecordStore.openRecordStore("Contacts", true); 注:当从BlackBerry设备删除一个应用程序时,所有此应用程序创建的记录存储都会删除.每个在MIDlet包(suite)的记录存储都有一个唯一名.MIDlet仅可以访问一个在相同包里的由MIDlet创建的记录存储. 增加一个记录 调用addRecord(). int id = store.addRecord(_data.getBytes(), 0, data.length());   获取一个记录 调用getRecord(int, byte[], int).给本方法提供一个记录ID,字节数组,以及一个偏移作为参数. byte[] data = new byte[store.getRecordSize(id)]; store.getRecord(id, data, 0); String dataString = new String(data);   获取所有记录 打开存储,然后获取其迭代. RecordStore [...]

继续阅读本文 →

Taigoo发表于 April 29, 2008 5:54 am | 留言 |文档 

BlackBerry 应用程序开发者指南 第二卷:高级–第7章 与BlackBerry应用程序通信

7       第7章 与BlackBerry应用程序通信 启动BlackBerry应用程序 加入一个菜单项到BlackBerry应用程序中 代码实例 启动BlackBerry应用程序 调用API(net.rim.blackberry.api.invoke)允许应用程序启动标注你的BlackBerry应用程序. 注: 当应用程序调用电话时,检查一个ControlledAccessException.如果系统管理员通过应用程序控制限制访问电话应用程序,将抛出一个运行时错误. 为获得更多信息,参看BlackBerry应用程序开发者指南 第2卷:高级 第1卷:基础. 调用API新功能 从BlackBerry JDE 4.1起,有下面的功能: 可以改变AddressBookArguments (net.rim.blackberry.api.invoke.AddressBookArguments)来打开一个使用PIMContact的联系人. 可以改变CalendarArguments (net.rim.blackberry.api.invoke.CalendarArguments)查看存在的PIM事件.你不可以创建一个来自PIM对象的新事件. 可以改变MessageArguments (net.rim.blackberry.api.invoke.MessageArguments)创建一个包含主题和内容的消息 在Task应用程序无变化的情况下,不可以更新TaskArguments (net.rim.blackberry.api.invoke.TaskArguments). 为启动一个应用程序,调用带有合适常量和ApplicationArguments 子类的对象的Invoke.invokeApplication(int, ApplicationArguments)方法. 注:使用Invoke.invokeApplication(int, ApplicationArguments)将导致一个处理上下文的转化.当BlackBerry程序启动时,你的应用程序将失去控制.在启动的应用程序对话中止时,内容可能不会返回给你的应用程序. 应用程序 常量 类 Address book(地址本) APP_TYPE_ADDRESSBOOK AddressBookArguments Calendar(日历) APP_TYPE_CALENDAR CalendarArguments Memo pad(便笺) APP_TYPE_MEMOPAD MemoArguments Messages(消息) APP_TYPE_MESSAGES MessageArguments Phone(电话) APP_TYPE_PHONE PhoneArguments Tasks(任务) APP_TYPE_TASKS TaskArguments 技巧:从浏览器应用程序API(net.rim.blackberry.api.browser)中调用BlackBerry浏览器.参看51页的”在浏览器中显示内容”获得更多信息.电话API [...]

继续阅读本文 →

Taigoo发表于 April 29, 2008 5:49 am | 留言 |文档 

下一页上一页