<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>专注于blackberry &#187; api</title>
	<atom:link href="http://www.inblackberry.com/web/tag/api/feed" rel="self" type="application/rss+xml" />
	<link>http://www.inblackberry.com/web</link>
	<description>blackberry</description>
	<pubDate>Thu, 26 Aug 2010 14:19:35 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.1</generator>
	<language>en</language>
			<item>
		<title>每周一技：HyperLinkField</title>
		<link>http://www.inblackberry.com/web/development/week-tech/custom-field-hyperlink-field.html</link>
		<comments>http://www.inblackberry.com/web/development/week-tech/custom-field-hyperlink-field.html#comments</comments>
		<pubDate>Tue, 14 Jul 2009 11:35:11 +0000</pubDate>
		<dc:creator>Taigoo</dc:creator>
		
		<category><![CDATA[每周一技]]></category>

		<category><![CDATA[api]]></category>

		<category><![CDATA[blackberry]]></category>

		<category><![CDATA[browser]]></category>

		<category><![CDATA[开发]]></category>

		<guid isPermaLink="false">http://www.inblackberry.com/web/?p=227</guid>
		<description><![CDATA[<p>这是每周一技的第二篇了。</p>
<p>前一篇介绍了从BES读取contacts的技术以及遇到相关问题的解决方案（via <a href="../development/week-tech/lookup-contacts-from-bes.html">每周一技:从BES服务器上lookup联系人</a>）。</p>
<p>本篇将介绍如何编写自定义的超级链接控件。</p>
<p>背景</p>
<p>在很多情况下，我们都会遇见超级连接的显示，遗憾的是在Blackberry没有提供类似于HyperLinkField的组件，这给我们增加了很多麻烦，如果能够解决该问题，将会是一个不错的选择。</p>
<p>分析</p>
<p>既然Blackberry API没有，我们自己可以写一个该Field，在这里，我们将之命名为HyperLinkField，以符合Blackberry API命名的规则。</p>
<p>实现</p>
<p>先看几张效果图：</p>
<p>图1，当focus在其他field时HyperLinkField的样式.</p>
<p><img class="alignnone size-full wp-image-228" title="hyperlinkfield1" src="http://www.inblackberry.com/web/wp-content/uploads/2009/07/hyperlinkfield1.png"]]></description>
			<content:encoded><![CDATA[<p>这是每周一技的第二篇了。</p>
<p>前一篇介绍了从BES读取contacts的技术以及遇到相关问题的解决方案（via <a href="../development/week-tech/lookup-contacts-from-bes.html">每周一技:从BES服务器上lookup联系人</a>）。</p>
<p>本篇将介绍如何编写自定义的超级链接控件。</p>
<p><strong>背景</strong></p>
<p>在很多情况下，我们都会遇见超级连接的显示，遗憾的是在Blackberry没有提供类似于HyperLinkField的组件，这给我们增加了很多麻烦，如果能够解决该问题，将会是一个不错的选择。</p>
<p><strong>分析</strong></p>
<p>既然Blackberry API没有，我们自己可以写一个该Field，在这里，我们将之命名为HyperLinkField，以符合Blackberry API命名的规则。</p>
<p><strong>实现</strong></p>
<p>先看几张效果图：</p>
<p>图1，当focus在其他field时HyperLinkField的样式.</p>
<p><img class="alignnone size-full wp-image-228" title="hyperlinkfield1" src="http://www.inblackberry.com/web/wp-content/uploads/2009/07/hyperlinkfield1.png" alt="hyperlinkfield1" width="320" height="240" /></p>
<p>图2 当光标移到该field上时，颜色会变蓝，当然你也可以更改颜色。</p>
<p><img class="alignnone size-full wp-image-229" title="hyperlinkfield2" src="http://www.inblackberry.com/web/wp-content/uploads/2009/07/hyperlinkfield2.png" alt="hyperlinkfield2" width="320" height="240" /></p>
<p>图3，当点击该Field时，</p>
<p><img class="alignnone size-full wp-image-230" title="hyperlinkfield3" src="http://www.inblackberry.com/web/wp-content/uploads/2009/07/hyperlinkfield3.png" alt="hyperlinkfield3" width="320" height="240" /></p>
<p>图4，其菜单如下</p>
<p><img class="alignnone size-full wp-image-231" title="hyperlinkfield4" src="http://www.inblackberry.com/web/wp-content/uploads/2009/07/hyperlinkfield4.png" alt="hyperlinkfield4" width="320" height="240" /></p>
<p>该Get Page就会打开连接。</p>
<p>在编写代码需要注意一下几个地方：</p>
<ol>
<li>参数的设置</li>
<li>Layout的处理</li>
<li>如何paint</li>
<li>菜单的处理</li>
<li>点击该field如何处理</li>
</ol>
<p>下面给出部分重要的代码。</p>
<pre>package com.taigoo.blackberry.weekskills.hyperlink;

import net.rim.device.api.ui.Color;
import net.rim.device.api.ui.DrawStyle;
import net.rim.device.api.ui.Field;
import net.rim.device.api.ui.MenuItem;
import net.rim.device.api.ui.ContextMenu;
import net.rim.device.api.ui.Font;
import net.rim.device.api.ui.Graphics;
import net.rim.device.api.ui.XYRect;
import net.rim.device.api.system.Display;
import net.rim.blackberry.api.browser.*;

public class HyperLinkField extends Field {

    private String _displayName ;
    private String _url;
    private Font _font;
    private MenuItem _openMenuItem;

    /**
     * Create a field for the hyperlink to implement the behaviour.
     * @param text  The text to display
     * @param url  The url to navigation
     */
    public HyperLinkField(String text, String url) {
        super();
        this._displayName = text;
        this._url = url;
        this._font = Font.getDefault().
                  derive(Font.DOTTED_UNDERLINED).
                  derive(Font.UNDERLINED);

        //create the menu item
        this._openMenuItem = new MenuItem("Get Page",100000,10) {
            public void run() {
                openUrl();
                }
               };
        }

        /**
         * set the display name
         * @param name
         */
        public void setDisplayName(String name) {
                this._displayName = name;
        }

        /**
         * Get the url
         * @return returns the url
         */
        public String getURL() {
                return this._url;
        }

        /**
         * @see net.rim.device.api.ui.Field#paint(Graphics)
         */
        protected void paint(Graphics g) {

                //draw text
                g.setColor(Color.BLUE);
                g.setFont(_font);
                g.drawText(this._displayName, 0, 0,(int)(
                        getStyle() &amp; DrawStyle.ELLIPSIS |
                        DrawStyle.HALIGN_MASK ),
                        this.getPreferredWidth() );

                this.invalidate();
        }

        /**
         * @see net.rim.device.api.ui.Field#layout(int, int)
         */
        protected  void layout(int width , int height) {
                width = Math.min(this.getPreferredWidth(), width) ;
                height = getPreferredHeight() ;
                 // set dimensions
        setExtent( width, height );
        }

     protected void drawFocus(Graphics graphics,boolean on){
         XYRect rect = new XYRect();
         getFocusRect(rect);
         graphics.setColor(Color.RED);
         graphics.setDrawingStyle(Graphics.DRAWSTYLE_FOCUS, true);
         drawHighlightRegion(graphics, Field.HIGHLIGHT_FOCUS, on,
          rect.x, rect.y, rect.width, rect.height);
         this.invalidate();

     }

     protected  boolean navigationClick(int status, int time){
            openUrl();
             return true;

        }

     private void openUrl() {
         BrowserSession visitSession = Browser.getDefaultSession();
         visitSession.displayPage(_url);
         }

     protected  void  makeContextMenu(ContextMenu contextMenu){
          contextMenu.addItem(_openMenuItem);
          contextMenu.setDefaultItem(_openMenuItem);
     }
}</pre>
<p>上面的代码已经很能说明问题了，我就不多解释了。</p>
<p>Field写好之后就是调用。调用也非常简单，和普通的代码一样，代码如下</p>
<pre> HyperLinkField _hyperlinkField = new HyperLinkField(
                      "Click here to visit Inbalckberry",
                      "http://www.inblackberry.com/blog/wap");
        this.add(_hyperlinkField);</pre>
<p><strong>每周一技术系列</strong></p>
<ol>
<li><a href="../development/week-tech/lookup-contacts-from-bes.html">每周一技:从BES服务器上lookup联系人</a></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.inblackberry.com/web/development/week-tech/custom-field-hyperlink-field.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>故技重施：Blackberry Push API</title>
		<link>http://www.inblackberry.com/web/development/blackberry-push-api-just-old-tech.html</link>
		<comments>http://www.inblackberry.com/web/development/blackberry-push-api-just-old-tech.html#comments</comments>
		<pubDate>Mon, 29 Jun 2009 11:46:20 +0000</pubDate>
		<dc:creator>Taigoo</dc:creator>
		
		<category><![CDATA[开发]]></category>

		<category><![CDATA[api]]></category>

		<category><![CDATA[BES]]></category>

		<category><![CDATA[blackberry]]></category>

		<category><![CDATA[mds]]></category>

		<category><![CDATA[push]]></category>

		<guid isPermaLink="false">http://www.inblackberry.com/web/?p=137</guid>
		<description><![CDATA[<p>大概是6月初，RIM以很强的声势推出一个新服务，名曰Blackberry Push API。在没有看文档前，我非常憧憬RIM能给我们带来惊喜。但是我看完之后，发现RIM仅仅把原来的技术重新包装了一遍。</p>
<p>从商业的角度讲，我非常赞成RIM的这种做法，现在的很多新概念有很多都是把N年以前的东西拿出来翻新一下，例如AJax，SaaS等，都取得了不错的效果。</p>
<p>但是从技术角度上讲，也确实没什么。</p>
<p>我将该服务总结为一句话，即将Blackberry最具特色的PUSH功能应用到客户的需求上。</p>
<p>即便如此，我还是将我N年以前使用过的技术重温一下，顺便也说说PUSH API 的应用。</p>
<p>应用背景：</p>
<p>先举个例子，未必是真实的。假如上海有家出租车公司小众（不是大众），要通知司机小张，有个客户在人民广场的来福士广场有个客户于14：00需要车，那么小众通过何种方式将这个信息传给小张呢?假如小众公司正在使用Blackberry的服务，那么可以通过Alert的方式来实现。</p>
<p>现在总结一下：</p>
<ul>
<li>alert</li>
<li>新闻</li>
<li>财经</li>
<li>定单</li>
<li>文档</li>
<li>体育</li>
</ul>
<p>服务不仅仅限于上面。</p>
<p>原理：</p>
<p>先看张图<br />
<a title="push-request-flow by confach, on]]></description>
			<content:encoded><![CDATA[<p>大概是6月初，RIM以很强的声势推出一个新服务，名曰Blackberry Push API。在没有看文档前，我非常憧憬RIM能给我们带来惊喜。但是我看完之后，发现RIM仅仅把原来的技术重新包装了一遍。</p>
<p>从商业的角度讲，我非常赞成RIM的这种做法，现在的很多新概念有很多都是把N年以前的东西拿出来翻新一下，例如AJax，SaaS等，都取得了不错的效果。</p>
<p>但是从技术角度上讲，也确实没什么。</p>
<p>我将该服务总结为一句话，即将Blackberry最具特色的PUSH功能应用到客户的需求上。</p>
<p>即便如此，我还是将我N年以前使用过的技术重温一下，顺便也说说PUSH API 的应用。</p>
<p><strong>应用背景：</strong></p>
<p>先举个例子，未必是真实的。假如上海有家出租车公司小众（不是大众），要通知司机小张，有个客户在人民广场的来福士广场有个客户于14：00需要车，那么小众通过何种方式将这个信息传给小张呢?假如小众公司正在使用Blackberry的服务，那么可以通过Alert的方式来实现。</p>
<p>现在总结一下：</p>
<ul>
<li>alert</li>
<li>新闻</li>
<li>财经</li>
<li>定单</li>
<li>文档</li>
<li>体育</li>
</ul>
<p>服务不仅仅限于上面。</p>
<p><strong>原理：</strong></p>
<p>先看张图<br />
<a title="push-request-flow by confach, on Flickr" href="http://www.flickr.com/photos/taigoo/3670682769/"><img src="http://farm3.static.flickr.com/2457/3670682769_7c00b1efed.jpg" border="0/" alt="push-request-flow" width="500" height="270" /></a><br />
简要解释一下：</p>
<p>先解释身份角色：</p>
<p>Push Initiator：相当于小众公司，后面见车简称PI</p>
<p>Blackberry Push Data Server：相当于部署在小众公司的Blackberry服务基础架构，后面简称BPIS</p>
<p>Mobile Client：司机小张的Blackberry终端，简称，MC</p>
<p>再解释一下流程：</p>
<ol>
<li>PI发送一个push请求，即客户信息</li>
<li>BPIS给出一个返回给PI</li>
<li>BPIS就请求push给MC</li>
<li>MC收到后给出一个ACKnowledge，确认</li>
<li>BPIS给PI一个通知</li>
<li>PI收到后给BPIS一个返回</li>
</ol>
<p>类似的机制和互联网的三次握手类似，就是Request/ACK/Response.目的就是为了保证大家都收到。</p>
<p><strong>优点</strong></p>
<p>很显然，省电，能够及时送达，安全，包括传送，以及安全送达。</p>
<p><strong>实现</strong></p>
<ol>
<li>PAP</li>
<li>XML HTTP 请求</li>
<li>几种push，例如submit，cancel，query等，具体技术细节不讲，因为这些又可以单独拿出来了。</li>
</ol>
<p>综合上述，如果您熟悉PUSH，是不是觉得似曾相识呢。</p>
<p>不管怎么说，从中，我们可以进一步，也更清晰了解Blackberry PUSH这个概念。这在以后的解决方案中提供不少思路。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.inblackberry.com/web/development/blackberry-push-api-just-old-tech.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>黑莓通过编程的方式挂电话</title>
		<link>http://www.inblackberry.com/web/development/how-to-disconnect-phone-call.html</link>
		<comments>http://www.inblackberry.com/web/development/how-to-disconnect-phone-call.html#comments</comments>
		<pubDate>Mon, 13 Oct 2008 09:56:25 +0000</pubDate>
		<dc:creator>Taigoo</dc:creator>
		
		<category><![CDATA[开发]]></category>

		<category><![CDATA[api]]></category>

		<category><![CDATA[call]]></category>

		<guid isPermaLink="false">http://www.inblackberry.com/web/development/how-to-disconnect-phone-call.html</guid>
		<description><![CDATA[<p>最近使用了很多在Blackberry运行的来电防火墙软件。其实他们的实现方式很简单。</p>
<p>先分析一下，如何挂断电话呢？如果你在RIM提供的API里找一圈，你会特别失望，因为它根本没有提供对应的API。这点上，我觉得RIM特别不道德。</p>
<p>但是是不是没有方法了呢？我觉得办法还是有的。</p>
<p>我想出的办法就是模拟挂电话这个操作。</p>
<p>3个步骤：</p>
<ul>
<li>按下去:press down</li>
<li>按住，哪怕0.1s:Hold on</li>
<li>松开: press up</li>
</ul>
<p>代码如下：</p>
EventInjector.KeyEvent pressEndKey=
    new]]></description>
			<content:encoded><![CDATA[<p>最近使用了很多在Blackberry运行的来电防火墙软件。其实他们的实现方式很简单。</p>
<p>先分析一下，如何挂断电话呢？如果你在RIM提供的API里找一圈，你会特别失望，因为它根本没有提供对应的API。这点上，我觉得RIM特别不道德。</p>
<p>但是是不是没有方法了呢？我觉得办法还是有的。</p>
<p>我想出的办法就是模拟挂电话这个操作。</p>
<p>3个步骤：</p>
<ul>
<li>按下去:press down</li>
<li>按住，哪怕0.1s:Hold on</li>
<li>松开: press up</li>
</ul>
<p>代码如下：</p>
<pre>EventInjector.KeyEvent pressEndKey=
    new EventInjector.KeyEvent(EventInjector.KeyEvent.KEY_DOWN,
Keypad.map(Keypad.KEY_END),KeypadListener.STATUS_NOT_FROM_KEYPAD,100);

EventInjector.KeyEvent releaseEndKey=
                new EventInjector.KeyEvent(
                    EventInjector.KeyEvent.KEY_UP,
                    Keypad.map(Keypad.KEY_END),
                     KeypadListener.STATUS_NOT_FROM_KEYPAD,100);

EventInjector.invokeEvent(pressEndKey);
EventInjector.invokeEvent(releaseEndKey);</pre>
<p>是不是觉得很简单呢。</p>
<p>不过，这个方法，包括我上面说的几个软件都有一个共同的缺点，而且我认为是一个特别不好的方式，那就是当对方拨通电话之后，响了一声就挂断。这对于打电话的人来说是特别不友好的。</p>
<p>试想一下，你如果打电话给对方，然后啪一声挂了，接着你又打，又是啪一声。你什么感觉？</p>
]]></content:encoded>
			<wfw:commentRss>http://www.inblackberry.com/web/development/how-to-disconnect-phone-call.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>BlackBerry 应用程序开发者指南 第二卷：高级&#8211;第12章 管理应用程序</title>
		<link>http://www.inblackberry.com/web/development/docs/vol-2-manage-app.html</link>
		<comments>http://www.inblackberry.com/web/development/docs/vol-2-manage-app.html#comments</comments>
		<pubDate>Mon, 28 Apr 2008 22:17:57 +0000</pubDate>
		<dc:creator>Taigoo</dc:creator>
		
		<category><![CDATA[文档]]></category>

		<category><![CDATA[api]]></category>

		<category><![CDATA[doc]]></category>

		<guid isPermaLink="false">http://www.inblackberry.com/web/?p=34</guid>
		<description><![CDATA[<p align="right" class="MsoNormal" style="text-align: right;">12</p>
<a name="_Toc158092558">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 第</a>12章 管理应用程序




<p class="MsoNormal">应用程序管理器</p>
<p class="MsoNormal">管理代码模块</p>




<h2><a]]></description>
			<content:encoded><![CDATA[<p align="right" class="MsoNormal" style="text-align: right;"><strong><span lang="EN-US" style="font-size: 36pt; font-family: 宋体;">12<o:p></o:p></span></strong></p>
<h1><a name="_Toc158092558"><span style="color: rgb(51, 51, 153); font-family: 宋体;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 第</span></a><span><span lang="EN-US" style="color: rgb(51, 51, 153);">12</span></span><span><span style="color: rgb(51, 51, 153); font-family: 宋体;">章</span></span><span><span style="color: rgb(51, 51, 153);"> </span></span><span><span style="color: rgb(51, 51, 153); font-family: 宋体;">管理应用程序</span></span></h1>
<table cellspacing="0" cellpadding="0" border="0" class="MsoTableGrid" style="background: rgb(217, 217, 217) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; border-collapse: collapse;">
<tbody>
<tr>
<td width="568" valign="top" style="padding: 0cm 5.4pt; width: 426.1pt;">
<p class="MsoNormal"><strong><span style="color: rgb(51, 51, 153); font-family: 宋体;">应用程序管理器</span><span lang="EN-US" style="color: rgb(51, 51, 153);"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><strong><span style="color: rgb(51, 51, 153); font-family: 宋体;">管理代码模块</span></strong><span lang="EN-US" style="font-family: 'andale mono';"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h2><a name="_Toc158092559"><span style="color: rgb(51, 51, 153); font-family: 黑体;">应用程序管理器</span></a><span></span><span lang="EN-US" style="color: rgb(51, 51, 153);"><o:p></o:p></span></h2>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'andale mono';">BlackBerry</span><span style="font-family: 'Andale Mono';">设备<span lang="EN-US">VM</span>有一个应用程序管理器<span lang="EN-US">,</span>它的功能和对于其他<span lang="EN-US">Java</span>程序的操作系统事件调动中心一样<span lang="EN-US">.<o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left: 21pt; text-indent: -21pt;"><span lang="EN-US" style="font-family: 'andale mono';">net.rim.device.api.system.ApplicationManager</span><span style="font-family: 'Andale Mono';">类使应用程序可以和应用程序管理器交互<span lang="EN-US">,</span>并完成下面的操作<span lang="EN-US">:</span></span></p>
<ul>
<li><span style="font-family: 'Andale Mono';">与进程交互<span lang="EN-US">,</span>例如获取前台应用程序的<span lang="EN-US">ID.</span></span> </li>
<li><span style="font-family: 'Andale Mono';">发送一个全局事件给系统<span lang="EN-US">.</span></span><span lang="EN-US" style="font-family: wingdings;"><span><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"></span></span></span> </li>
<li><span lang="EN-US" style="font-family: wingdings;"><span><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">&nbsp;</span></span></span><span style="font-family: 'Andale Mono';">锁住或解锁<span lang="EN-US">BlackBerry</span>设备<span lang="EN-US">,</span>或判断<span lang="EN-US">BlackBerry</span>设备是否锁住<span lang="EN-US">.</span></span><span lang="EN-US" style="font-family: wingdings;"><span><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"></span></span></span> </li>
<li><span lang="EN-US" style="font-family: wingdings;"><span><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">&nbsp;</span></span></span><span style="font-family: 'Andale Mono';">立即运行一个程序<span lang="EN-US">,</span>或者在一个特定的时间运行应用程序<span lang="EN-US">.<o:p></o:p></span></span> </li>
</ul>
<p class="MsoNormal"><span style="font-family: 'Andale Mono';">为了使用<span lang="EN-US">ApplicationManager</span>类的任何方法<span lang="EN-US">,</span>你必须获取一个当前应用程序管理器的引用<span lang="EN-US">.</span>调用<span lang="EN-US">getApplicationManager()</span>获得当前应用程序管理器<span lang="EN-US">.<o:p></o:p></span></span></p>
<p class="MsoNormal"><strong><em><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';">ApplicationManager manager = ApplicationManager.getApplicationManager();<o:p></o:p></span></em></strong></p>
<h3><a name="_Toc158092560"><span style="color: rgb(51, 51, 153); font-family: 宋体;">获取应用程序的相关信息</span></a><span></span><span lang="EN-US" style="color: rgb(51, 51, 153);"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 'Andale Mono';">调用静态方法<span lang="EN-US">ApplicationManager.getVisibleApplications()</span>获取当前运行的进程信息<span lang="EN-US">.</span>例如<span lang="EN-US">,</span>你可以编写一个系统管理应用程序来记录<span lang="EN-US">BlackBerry</span>设备的状态<span lang="EN-US">,</span>以决定用户使用每个应用程序所花费的时间<span lang="EN-US">.<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-family: 'Andale Mono';">对于正在运行的可见应用程序<span lang="EN-US">,</span>为获取一组<span lang="EN-US">ApplicationDescriptor</span>对象<span lang="EN-US">,</span>调用<span lang="EN-US">getVisibleApplications().</span>一个<span lang="EN-US">ApplicationDescriptor</span>对象包含了应用程序的描述性信息<span lang="EN-US">,</span>例如它的名称<span lang="EN-US">,</span>图标<span lang="EN-US">,</span>主<span lang="EN-US">(Home)</span>屏幕的位置<span lang="EN-US">,</span>以及资源包<span lang="EN-US">(bundle).</span>使用<span lang="EN-US">ApplicationDescriptor</span>方法获取这个信息<span lang="EN-US">.</span>例如<span lang="EN-US">,</span>为获取一个运行应用程序的名称<span lang="EN-US">,</span>调用一个应用程序描述<span lang="EN-US">(descriptor)</span>上的<span lang="EN-US">getName()</span>方法<span lang="EN-US">.<o:p></o:p></span></span></p>
<table cellspacing="0" cellpadding="0" border="1" class="MsoTableGrid" style="background: rgb(230, 230, 230) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; border-collapse: collapse;">
<tbody>
<tr>
<td width="568" valign="top" style="padding: 0cm 5.4pt; width: 426.1pt;">
<p align="left" class="MsoNormal" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">ApplicationManager manager = ApplicationManager.getApplicationManager();</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p align="left" class="MsoNormal" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">ApplicationDescriptor descriptors[] = manager.getVisibleApplications();</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p align="left" class="MsoNormal" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; color: rgb(63, 127, 95); font-family: 'courier new';">// Retrieve the name of a running application.</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">String appname1 = descriptors[0].getName()</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'andale mono';"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family: 'Andale Mono';">为当前应用程序获取一个<span lang="EN-US">ApplicationDescriptor,</span>调用<span lang="EN-US"><o:p></o:p></span></span></p>
<table cellspacing="0" cellpadding="0" border="1" class="MsoTableGrid" style="background: rgb(230, 230, 230) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; border-collapse: collapse;">
<tbody>
<tr>
<td width="568" valign="top" style="padding: 0cm 5.4pt; width: 426.1pt;">
<p align="left" class="MsoNormal" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">ApplicationDescriptor.currentApplicationDescriptor().</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p align="left" class="MsoNormal" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">ApplicationDescriptor descriptor =</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p align="left" class="MsoNormal" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">ApplicationDescriptor.currentApplicationDescriptor();</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">String appname = descriptor.getName();</span><span lang="EN-US" style="font-family: 'andale mono';"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092561"><span style="color: rgb(51, 51, 153); font-family: 宋体;">发布一个全局事件</span></a><span></span><span lang="EN-US" style="color: rgb(51, 51, 153);"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 'Andale Mono';">使用<span lang="EN-US">ApplicationManager.postGlobalEvent()</span>作为基本机制和其他进程进行通讯<span lang="EN-US">.<o:p></o:p></span></span></p>
<p class="MsoNormal"><span>&nbsp; <strong><img height="31" width="34" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" />注</strong>:</span><span style="font-family: 'Andale Mono';">你也可以使用运行时存储发送和接收进程间的消息<span lang="EN-US">.</span>为获得更多信息<span lang="EN-US">,</span>参看<span lang="EN-US">135</span>页的<span lang="EN-US">&rdquo;</span>在应用程序之间共享运行时对象<span lang="EN-US">&rdquo;.<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-family: 'Andale Mono';">为了发布一个全局事件到指定的应用程序中<span lang="EN-US">,</span>调用<span lang="EN-US">postGlobalEvent(int, long, int, int, Object, Object).<o:p></o:p></span></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'andale mono';">processID</span><span style="font-family: 'Andale Mono';">参数指定了进程的<span lang="EN-US">ID</span>发送事件<span lang="EN-US">.</span>为获取一个进程<span lang="EN-US">ID,</span>调用<span lang="EN-US">getProcessId(ApplicationDescriptor). guid</span>参数为事件指定一个<span lang="EN-US">GUID</span>值<span lang="EN-US">.</span>数据和对象为事件指定附加的信息<span lang="EN-US">.<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-family: 'Andale Mono';">为了对所有应用程序发送一个全局事件<span lang="EN-US">,</span>使用下面形式之一的<span lang="EN-US">postGlobalEvent()</span>方法<span lang="EN-US">:<o:p></o:p></span></span></p>
<table cellspacing="0" cellpadding="0" border="1" width="576" class="MsoNormalTable" style="width: 432pt; border-collapse: collapse;">
<tbody>
<tr style="height: 12pt;">
<td width="319" valign="top" style="padding: 0cm 5.4pt; background: rgb(217, 217, 217) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; width: 239pt; height: 12pt;">
<p class="MsoNormal"><strong><span style="font-family: 宋体;">方法</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
<td width="257" valign="top" style="padding: 0cm 5.4pt; background: rgb(217, 217, 217) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; width: 193pt; height: 12pt;">
<p class="MsoNormal"><strong><span style="font-family: 宋体;">描述</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
</tr>
<tr style="height: 12pt;">
<td width="319" valign="top" style="padding: 0cm 5.4pt; width: 239pt; height: 12pt;">
<p class="MsoNormal"><span lang="EN-US">boolean postGlobalEvent(long)</span></p>
</td>
<td width="257" valign="top" style="padding: 0cm 5.4pt; width: 193pt; height: 12pt;">
<p class="MsoNormal"><span style="font-family: 宋体;">发布一个带有唯一标志符的全局事件</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 12pt;">
<td width="319" valign="top" style="padding: 0cm 5.4pt; background: rgb(230, 230, 230) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; width: 239pt; height: 12pt;">
<p class="MsoNormal"><span lang="EN-US">boolean postGlobalEvent(long, int, int)</span></p>
</td>
<td width="257" valign="top" style="padding: 0cm 5.4pt; background: rgb(230, 230, 230) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; width: 193pt; height: 12pt;">
<p class="MsoNormal"><span style="font-family: 宋体;">发布一个带有附加数据的全局事件</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 19pt;">
<td width="319" valign="top" style="padding: 0cm 5.4pt; width: 239pt; height: 19pt;">
<p class="MsoNormal"><span lang="EN-US">abstract boolean postGlobalEvent(long, int, int, Object, Object)</span></p>
</td>
<td width="257" valign="top" style="padding: 0cm 5.4pt; width: 193pt; height: 19pt;">
<p class="MsoNormal"><span style="font-family: 宋体;">发送一个带有附加整数和对象数据的全局事件</span><span lang="EN-US">.</span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092562"><span style="color: rgb(51, 51, 153); font-family: 宋体;">接收一个全局事件</span></a><span></span><span lang="EN-US" style="color: rgb(51, 51, 153);"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'andale mono';">net.rim.device.api.system.GlobalEventListener</span><span style="font-family: 'Andale Mono';">接口的实现接收全局事件<span lang="EN-US">. GlobalEventListener.eventOccurred()</span>的实现定义了当一个全局事件发生时所发生的事情<span lang="EN-US">.<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-family: 'Andale Mono';">调用<span lang="EN-US">Application.addGlobalEventListener(GlobalEventListener)</span>注册你的实现<span lang="EN-US">.<o:p></o:p></span></span></p>
<h3><a name="_Toc158092563"><span style="color: rgb(51, 51, 153); font-family: 宋体;">锁住一个</span></a><span><span lang="EN-US" style="color: rgb(51, 51, 153);">BlackBerry</span></span><span><span style="color: rgb(51, 51, 153); font-family: 宋体;">设备</span></span><span></span><span lang="EN-US" style="color: rgb(51, 51, 153);"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'andale mono';">&gt;</span><span style="font-family: 'Andale Mono';">调用<span lang="EN-US"> ApplicationManager.lockSystem(true).<o:p></o:p></span></span></p>
<h3><a name="_Toc158092564"><span style="color: rgb(51, 51, 153); font-family: 宋体;">决定一个</span></a><span><span lang="EN-US" style="color: rgb(51, 51, 153);">BlackBerry</span></span><span><span style="color: rgb(51, 51, 153); font-family: 宋体;">设备是否锁住</span></span><span></span><span lang="EN-US" style="color: rgb(51, 51, 153);"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'andale mono';">&gt;</span><span style="font-family: 'Andale Mono';">调用<span lang="EN-US">ApplicationManager.isSystemLocked().<o:p></o:p></span></span></p>
<h3><a name="_Toc158092565"><span style="color: rgb(51, 51, 153); font-family: 宋体;">解锁一个</span></a><span><span lang="EN-US" style="color: rgb(51, 51, 153);">BlackBerry</span></span><span><span style="color: rgb(51, 51, 153); font-family: 宋体;">设备</span></span><span></span><span lang="EN-US" style="color: rgb(51, 51, 153);"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'andale mono';">&gt;</span><span style="font-family: 'Andale Mono';">调用<span lang="EN-US">ApplicationManager.unlockSystem(true).<o:p></o:p></span></span></p>
<h3><a name="_Toc158092566"><span style="color: rgb(51, 51, 153); font-family: 宋体;">用不同的参数运行一个应用程序</span></a><span></span><span lang="EN-US" style="color: rgb(51, 51, 153);"><o:p></o:p></span></h3>
<p class="MsoNormal"><strong><span style="color: rgb(51, 51, 153); font-family: 宋体;">创建一个新的应用程序描述</span><span lang="EN-US" style="color: rgb(51, 51, 153);"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'andale mono';">.</span><span style="font-family: 'Andale Mono';">使用已经存在的<span lang="EN-US">ApplicationDescriptor</span>作为一个模板<span lang="EN-US">.</span>在<span lang="EN-US">main()</span>里指定使用的参数<span lang="EN-US">.<o:p></o:p></span></span></p>
<table cellspacing="0" cellpadding="0" border="1" class="MsoTableGrid" style="background: rgb(230, 230, 230) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; margin-left: -3.6pt; border-collapse: collapse;">
<tbody>
<tr>
<td width="573" valign="top" style="padding: 0cm 5.4pt; width: 429.7pt;">
<p align="left" class="MsoNormal" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">ApplicationDescriptor template = ApplicationDescriptor.currentApplicationDescriptor();</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p align="left" class="MsoNormal" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">String[] args = { </span><span lang="EN-US" style="font-size: 10pt; color: rgb(42, 0, 255); font-family: 'courier new';">&quot;admin&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">, </span><span lang="EN-US" style="font-size: 10pt; color: rgb(42, 0, 255); font-family: 'courier new';">&quot;secure&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';"> };</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">ApplicationDescriptor newdescriptor = </span><strong><span lang="EN-US" style="font-size: 10pt; color: rgb(127, 0, 85); font-family: 'courier new';">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';"> ApplicationDescriptor(template, args);</span><span lang="EN-US" style="font-family: 'andale mono';"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'andale mono';"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'andale mono';">ApplicationDescriptor </span><span style="font-family: 'Andale Mono';">构造子有其他<span lang="EN-US">2</span>种格式<span lang="EN-US">:<o:p></o:p></span></span></p>
<table cellspacing="0" cellpadding="0" border="1" width="571" class="MsoNormalTable" style="width: 428.4pt; border-collapse: collapse;">
<tbody>
<tr style="height: 12pt;">
<td width="273" valign="top" style="padding: 0cm 5.4pt; background: rgb(217, 217, 217) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; width: 205pt; height: 12pt;">
<p class="MsoNormal"><strong><span style="font-family: 宋体;">签名</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
<td width="298" valign="top" style="padding: 0cm 5.4pt; background: rgb(217, 217, 217) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; width: 223.4pt; height: 12pt;">
<p class="MsoNormal"><strong><span style="font-family: 宋体;">描述</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
</tr>
<tr style="height: 22pt;">
<td width="273" valign="top" style="padding: 0cm 5.4pt; width: 205pt; height: 22pt;">
<p class="MsoNormal"><span lang="EN-US">ApplicationDescriptor(ApplicationDescriptor, String, String[])</span></p>
</td>
<td width="298" valign="top" style="padding: 0cm 5.4pt; width: 223.4pt; height: 22pt;">
<p class="MsoNormal"><span style="font-family: 宋体;">此格式允许你为新的</span><span lang="EN-US">ApplicationDescriptor</span><span style="font-family: 宋体;">指定一个名称</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 33pt;">
<td width="273" valign="top" style="padding: 0cm 5.4pt; background: rgb(230, 230, 230) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; width: 205pt; height: 33pt;">
<p class="MsoNormal"><span lang="EN-US">ApplicationDescriptor(ApplicationDescriptor, String, String[], Bitmap, int, String, int)</span></p>
</td>
<td width="298" valign="top" style="padding: 0cm 5.4pt; background: rgb(230, 230, 230) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; width: 223.4pt; height: 33pt;">
<p class="MsoNormal"><span style="font-family: 宋体;">此格式允许你指定一个名称</span><span lang="EN-US">,</span><span style="font-family: 宋体;">初始设置</span><span lang="EN-US">,</span><span style="font-family: 宋体;">包括一个应用程序图标</span><span lang="EN-US">,</span><span style="font-family: 宋体;">主屏幕的位置</span><span lang="EN-US">,</span><span style="font-family: 宋体;">以及资源包</span><span lang="EN-US">,</span><span style="font-family: 宋体;">还有应用程序标题的</span><span lang="EN-US">ID.</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><strong><span lang="EN-US" style="color: rgb(51, 51, 153);"><o:p>&nbsp;</o:p></span></strong></p>
<p class="MsoNormal"><strong><span style="color: rgb(51, 51, 153); font-family: 宋体;">运行应用程序</span><span lang="EN-US" style="color: rgb(51, 51, 153);"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 'Andale Mono';">使用一个新的<span lang="EN-US">ApplicationDescriptor</span>对象运行应用程序<span lang="EN-US">.<o:p></o:p></span></span></p>
<table cellspacing="0" cellpadding="0" border="1" class="MsoTableGrid" style="background: rgb(230, 230, 230) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; border-collapse: collapse;">
<tbody>
<tr>
<td width="568" valign="top" style="padding: 0cm 5.4pt; width: 426.1pt;">
<p align="left" class="MsoNormal" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">ApplicationManager appmanager = ApplicationManager.getApplicationManager();</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p align="left" class="MsoNormal" style="text-align: left;"><strong><span lang="EN-US" style="font-size: 10pt; color: rgb(127, 0, 85); font-family: 'courier new';">try</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p align="left" class="MsoNormal" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';"><span>&nbsp;&nbsp;&nbsp; </span>appmanager.runApplication(newdescriptor);</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p align="left" class="MsoNormal" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">}</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p align="left" class="MsoNormal" style="text-align: left;"><strong><span lang="EN-US" style="font-size: 10pt; color: rgb(127, 0, 85); font-family: 'courier new';">catch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">(ApplicationManagerException) {</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p align="left" class="MsoNormal" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';"><span>&nbsp;&nbsp;&nbsp; </span></span><span lang="EN-US" style="font-size: 10pt; color: rgb(63, 127, 95); font-family: 'courier new';">// Handle the error.</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">}</span><span lang="EN-US" style="font-family: 'andale mono';"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'andale mono';">runApplication()</span><span style="font-family: 'Andale Mono';">方法创建一个新的进程<span lang="EN-US">,</span>并且调用一个指定的描述上的导出<span lang="EN-US">main()</span>方法<span lang="EN-US">,</span>以及使用它的参数<span lang="EN-US">.</span>如果可能<span lang="EN-US">,</span>新进程会转移到前台来<span lang="EN-US">.<o:p></o:p></span></span></p>
<h3><a name="_Toc158092567"><span style="color: rgb(51, 51, 153); font-family: 宋体;">在指定的时间运行一个应用程序</span></a><span></span><span lang="EN-US" style="color: rgb(51, 51, 153);"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'andale mono';">&gt;</span><span style="font-family: 'Andale Mono';">调用<span lang="EN-US">scheduleApplication()</span>代替<span lang="EN-US">runApplication().<o:p></o:p></span></span></p>
<table cellspacing="0" cellpadding="0" border="1" class="MsoTableGrid" style="background: rgb(230, 230, 230) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; border-collapse: collapse;">
<tbody>
<tr>
<td width="568" valign="top" style="padding: 0cm 5.4pt; width: 426.1pt;">
<p align="left" class="MsoNormal" style="text-align: left;"><strong><span lang="EN-US" style="font-size: 10pt; color: rgb(127, 0, 85); font-family: 'courier new';">try</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p align="left" class="MsoNormal" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';"><span>&nbsp;&nbsp;&nbsp; </span>appmanager.scheduleApplication(newdescriptor, 1728000, </span><strong><span lang="EN-US" style="font-size: 10pt; color: rgb(127, 0, 85); font-family: 'courier new';">false</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">);</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p align="left" class="MsoNormal" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">} </span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p align="left" class="MsoNormal" style="text-align: left;"><strong><span lang="EN-US" style="font-size: 10pt; color: rgb(127, 0, 85); font-family: 'courier new';">catch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">(ApplicationManagerException) {</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p align="left" class="MsoNormal" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';"><span>&nbsp;&nbsp;&nbsp; </span></span><span lang="EN-US" style="font-size: 10pt; color: rgb(63, 127, 95); font-family: 'courier new';">// Handle the error.</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">}</span><span lang="EN-US" style="font-family: 'andale mono';"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'andale mono';">scheduleApplication(ApplicationDescriptor, int, Boolean) </span><span style="font-family: 'Andale Mono';">方法需要下面的参数<span lang="EN-US">:<o:p></o:p></span></span></p>
<ul>
<li><span lang="EN-US" style="font-family: 'andale mono';">ApplicationDescriptor</span><span style="font-family: 'Andale Mono';">对象<span lang="EN-US">.</span></span><span lang="EN-US" style="font-family: wingdings;"><span><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"></span></span></span> </li>
<li><span lang="EN-US" style="font-family: wingdings;"><span><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">&nbsp;</span></span></span><span style="font-family: 'Andale Mono';">启动应用程序的时间<span lang="EN-US">,</span>毫秒计<span lang="EN-US">.</span></span><span lang="EN-US" style="font-family: wingdings;"><span><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"></span></span></span> </li>
<li><span lang="EN-US" style="font-family: wingdings;"><span><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">&nbsp;</span></span></span><span lang="EN-US" style="font-family: 'andale mono';">Boolean</span><span style="font-family: 'Andale Mono';">值<span lang="EN-US">,true</span>表示时间是绝对的<span lang="EN-US">(</span>从<span lang="EN-US">January 1, 1970 UTC</span>午夜开始计算<span lang="EN-US">),false</span>表示时间相对于本地午夜的时间<span lang="EN-US">.<o:p></o:p></span></span> </li>
</ul>
<p class="MsoNormal"><v:shape id="_x0000_s1027" style="margin-top: 6.8pt; z-index: 2; left: 0px; margin-left: 0px; width: 27pt; position: absolute; height: 26.2pt; text-align: left;" o:allowoverlap="f" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image001.emz" o:title=""></v:imagedata><o:lock v:ext="edit" aspectratio="f"></o:lock><w:wrap type="square"></w:wrap></v:shape><span>&nbsp;<strong><img height="31" width="34" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" />注</strong>:</span><span style="font-family: 'Andale Mono';">在指定的时间前如果重启或关闭<span lang="EN-US">BlackBerry</span>设备<span lang="EN-US">,</span>此应用程序不会执行<span lang="EN-US">.<o:p></o:p></span></span></p>
<h2><a name="_Toc158092568"><span style="color: rgb(51, 51, 153); font-family: 黑体;">管理代码模块</span></a><span></span><span lang="EN-US" style="color: rgb(51, 51, 153);"><o:p></o:p></span></h2>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'andale mono';">CodeModuleManager</span><span style="font-family: 'Andale Mono';">类在<span lang="EN-US">net.rim.device.api.system</span>里<span lang="EN-US">,</span>它允许你获取相关信息<span lang="EN-US">,</span>并且管理<span lang="EN-US">BlackBerry</span>设备上的代码模块<span lang="EN-US">.<o:p></o:p></span></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'andale mono';"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-family: 'Andale Mono';">一个代码模块是一个<span lang="EN-US">.cod</span>文件<span lang="EN-US">,</span>它是<span lang="EN-US">BlackBerry IDE</span>里单个工程编译的文件<span lang="EN-US">.</span>为了查看安装在<span lang="EN-US">BlackBerry</span>设备上的第三方应用程序列表<span lang="EN-US">,</span>单击<strong><span lang="EN-US">Appication</span></strong><span lang="EN-US">.</span>单击<strong><span lang="EN-US">Propoerties</span></strong>菜单项查看关于每一个应用程序的信息<span lang="EN-US">.<o:p></o:p></span></span></p>
<h3><a name="_Toc158092569"><span style="color: rgb(51, 51, 153); font-family: 宋体;">获取模块信息</span></a><span></span><span lang="EN-US" style="color: rgb(51, 51, 153);"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'andale mono';">CodeModuleManager</span><span style="font-family: 'Andale Mono';">类提供方法使应用程序可以获取<span lang="EN-US">BlackBerry</span>设备上的相关信息<span lang="EN-US">,</span>例如名称<span lang="EN-US">,</span>类型<span lang="EN-US">,</span>描述<span lang="EN-US">,</span>版本以及创建日期<span lang="EN-US">.<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-family: 'Andale Mono';">为获取一个模块的句柄<span lang="EN-US">,</span>调用<span lang="EN-US">getModuleHandle().</span>将代码模块名作为一个参数<span lang="EN-US">.<o:p></o:p></span></span></p>
<table cellspacing="0" cellpadding="0" border="1" class="MsoTableGrid" style="background: rgb(230, 230, 230) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; border-collapse: collapse;">
<tbody>
<tr>
<td width="568" valign="top" style="padding: 0cm 5.4pt; width: 426.1pt;">
<p class="MsoNormal"><strong><span lang="EN-US" style="font-size: 10pt; color: rgb(127, 0, 85); font-family: 'courier new';">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';"> handle = CodeModuleManager.getModuleHandle(</span><span lang="EN-US" style="font-size: 10pt; color: rgb(42, 0, 255); font-family: 'courier new';">&quot;test_module&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">);</span><span lang="EN-US" style="font-family: 'andale mono';"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span style="font-family: 'Andale Mono';">调用<span lang="EN-US">CodeModuleManager</span>类的方法获取指定的信息<span lang="EN-US">.<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-family: 'Andale Mono';">将模块句柄作为参数传给这些方法<span lang="EN-US">.<o:p></o:p></span></span></p>
<table cellspacing="0" cellpadding="0" border="1" class="MsoTableGrid" style="background: rgb(230, 230, 230) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; border-collapse: collapse;">
<tbody>
<tr>
<td width="568" valign="top" style="padding: 0cm 5.4pt; width: 426.1pt;">
<p align="left" class="MsoNormal" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">String name = CodeModuleManager.getModuleName( handle );</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p align="left" class="MsoNormal" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">String vendor = CodeModuleManager.getModuleVendor( handle );</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p align="left" class="MsoNormal" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">String description = CodeModuleManager.getModuleDescription( handle );</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p align="left" class="MsoNormal" style="text-align: left;"><strong><span lang="EN-US" style="font-size: 10pt; color: rgb(127, 0, 85); font-family: 'courier new';">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';"> version = CodeModuleManager.getModuleVersion( handle );</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p align="left" class="MsoNormal" style="text-align: left;"><strong><span lang="EN-US" style="font-size: 10pt; color: rgb(127, 0, 85); font-family: 'courier new';">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';"> size = CodeModuleManager.getModuleCodeSize( handle );</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p class="MsoNormal"><strong><span lang="EN-US" style="font-size: 10pt; color: rgb(127, 0, 85); font-family: 'courier new';">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';"> timestamp = CodeModuleManager.getModuleTimestamp( handle );</span><span lang="EN-US" style="font-family: 'andale mono';"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092570"><span style="color: rgb(51, 51, 153); font-family: 宋体;">获取一组句柄</span></a><span></span><span lang="EN-US" style="color: rgb(51, 51, 153);"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 'Andale Mono';">为获取<span lang="EN-US">BlackBerry</span>设备上所有存在的模块句柄<span lang="EN-US">,</span>调用<span lang="EN-US">getModuleHandles()<o:p></o:p></span></span></p>
<table cellspacing="0" cellpadding="0" border="1" class="MsoTableGrid" style="background: rgb(230, 230, 230) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; border-collapse: collapse;">
<tbody>
<tr>
<td width="568" valign="top" style="padding: 0cm 5.4pt; width: 426.1pt;">
<p align="left" class="MsoNormal" style="text-align: left;"><strong><span lang="EN-US" style="font-size: 10pt; color: rgb(127, 0, 85); font-family: 'courier new';">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';"> handles[] = CodeModuleManager.getModuleHandles();</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">String name = CodeModuleManager.getModuleName( handles[0]);</span><span lang="EN-US" style="font-family: 'andale mono';"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'andale mono';">net.rim.device.api.system.CodeModuleManager</span><span style="font-family: 'Andale Mono';">类提供方法创建<span lang="EN-US">,</span>保存<span lang="EN-US">,</span>删除代码模块<span lang="EN-US">.</span>这些功能允许一个<span lang="EN-US">BlackBerry</span>设备上的应用程序可以无线接收<span lang="EN-US">.cod</span>文件<span lang="EN-US">.<o:p></o:p></span></span></p>
<h3><a name="_Toc158092571"><span style="color: rgb(51, 51, 153); font-family: 宋体;">代码模块管理器方法</span></a><span></span><span lang="EN-US" style="color: rgb(51, 51, 153);"><o:p></o:p></span></h3>
<table cellspacing="0" cellpadding="0" border="1" class="MsoNormalTable" style="border-collapse: collapse;">
<tbody>
<tr style="height: 12pt;">
<td width="355" valign="top" style="padding: 0cm 5.4pt; background: rgb(217, 217, 217) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; width: 266.4pt; height: 12pt;">
<p class="MsoNormal"><strong><span style="font-family: 宋体;">方法</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
<td width="221" valign="top" style="padding: 0cm 5.4pt; background: rgb(217, 217, 217) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; width: 165.6pt; height: 12pt;">
<p class="MsoNormal"><strong><span style="font-family: 宋体;">描述</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
</tr>
<tr style="height: 22pt;">
<td width="355" valign="top" style="padding: 0cm 5.4pt; width: 266.4pt; height: 22pt;">
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';">int handle = CodeModuleManager.getModuleHandleForObject( anObject );<o:p></o:p></span></p>
</td>
<td width="221" valign="top" style="padding: 0cm 5.4pt; width: 165.6pt; height: 22pt;">
<p class="MsoNormal"><span style="font-family: 宋体;">此方法获取一个对象模块的句柄</span><span lang="EN-US">,</span><span style="font-family: 宋体;">在此模块里定义一个对象</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 33pt;">
<td width="355" valign="top" style="padding: 0cm 5.4pt; background: rgb(230, 230, 230) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; width: 266.4pt; height: 33pt;">
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';">boolean library = CodeModuleManager.isLibrary( handle );<o:p></o:p></span></p>
</td>
<td width="221" valign="top" style="padding: 0cm 5.4pt; background: rgb(230, 230, 230) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; width: 165.6pt; height: 33pt;">
<p class="MsoNormal"><span style="font-family: 宋体;">此方法决定一个模块是否为类库</span><span lang="EN-US">,</span><span style="font-family: 宋体;">如果是返回</span><span lang="EN-US">true,</span><span style="font-family: 宋体;">如果是应用程序返回</span><span lang="EN-US">false.</span></p>
</td>
</tr>
<tr style="height: 22pt;">
<td width="355" valign="top" style="padding: 0cm 5.4pt; width: 266.4pt; height: 22pt;">
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';">int size = CodeModuleManager.getModuleHandleForObject( anObject);<o:p></o:p></span></p>
</td>
<td width="221" valign="top" style="padding: 0cm 5.4pt; width: 165.6pt; height: 22pt;">
<p class="MsoNormal"><span style="font-family: 宋体;">决定了模块包含的代码的大小</span><span lang="EN-US">(</span><span style="font-family: 宋体;">字节</span><span lang="EN-US">).</span></p>
</td>
</tr>
<tr style="height: 22pt;">
<td width="355" valign="top" style="padding: 0cm 5.4pt; background: rgb(230, 230, 230) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; width: 266.4pt; height: 22pt;">
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';">ApplicationDescriptor descriptors[] = CodeModuleManager.getApplicationDescriptiors( handle );<o:p></o:p></span></p>
</td>
<td width="221" valign="top" style="padding: 0cm 5.4pt; background: rgb(230, 230, 230) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; width: 165.6pt; height: 22pt;">
<p class="MsoNormal"><span style="font-family: 宋体;">获得一组代码模块包含的所有描述</span><span lang="EN-US">.</span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092572"><span style="color: rgb(51, 51, 153); font-family: 宋体;">创建一个模块</span></a><span></span><span lang="EN-US" style="color: rgb(51, 51, 153);"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'andale mono';">&gt;</span><span style="font-family: 'Andale Mono';">调用<span lang="EN-US">createNewModule().</span>将模块的大小<span lang="EN-US">(</span>字节<span lang="EN-US">)</span>作为参数<span lang="EN-US">:<o:p></o:p></span></span></p>
<table cellspacing="0" cellpadding="0" border="1" class="MsoTableGrid" style="background: rgb(217, 217, 217) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; border-collapse: collapse;">
<tbody>
<tr>
<td width="568" valign="top" style="padding: 0cm 5.4pt; width: 426.1pt;">
<p class="MsoNormal"><strong><span lang="EN-US" style="font-size: 10pt; color: rgb(127, 0, 85); font-family: 'courier new';">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';"> handle = CodeModuleManager.createNewModule( 3000 );</span><span lang="EN-US" style="font-family: 'andale mono';"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span style="font-family: 'Andale Mono';">此方法返回模块的句柄<span lang="EN-US">,</span>否则<span lang="EN-US">,</span>如果不能创建模块<span lang="EN-US">,</span>返回<span lang="EN-US">0.<o:p></o:p></span></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'andale mono';"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-family: 'Andale Mono';">当你创建模块时<span lang="EN-US">,</span>为了将数据增加到其中<span lang="EN-US">,</span>调用下面形式的<span lang="EN-US">createNewModule().</span>将整个模块的时长度<span lang="EN-US">(</span>字节<span lang="EN-US">)</span>作为参数<span lang="EN-US">,</span>一个字节数据将加到模块中<span lang="EN-US">, length</span>参数指定了从增加的字节数组到模块开始的字节数<span lang="EN-US">.<o:p></o:p></span></span></p>
<table cellspacing="0" cellpadding="0" border="1" class="MsoTableGrid" style="background: rgb(217, 217, 217) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; border-collapse: collapse;">
<tbody>
<tr>
<td width="568" valign="top" style="padding: 0cm 5.4pt; width: 426.1pt;">
<p class="MsoNormal"><strong><span lang="EN-US" style="font-size: 10pt; color: rgb(127, 0, 85); font-family: 'courier new';">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: rgb(127, 0, 85); font-family: 'courier new';">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';"> createNewModule(</span><strong><span lang="EN-US" style="font-size: 10pt; color: rgb(127, 0, 85); font-family: 'courier new';">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">, </span><strong><span lang="EN-US" style="font-size: 10pt; color: rgb(127, 0, 85); font-family: 'courier new';">byte</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">[], </span><strong><span lang="EN-US" style="font-size: 10pt; color: rgb(127, 0, 85); font-family: 'courier new';">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">);</span><span lang="EN-US" style="font-family: 'andale mono';"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092573"><span style="color: rgb(51, 51, 153); font-family: 宋体;">将数据写入模块</span></a><span></span><span lang="EN-US" style="color: rgb(51, 51, 153);"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'andale mono';">&gt;</span><span style="font-family: 'Andale Mono';">调用<span lang="EN-US">writeNewModule().</span>将数据的字节数组作为参数提供给本方法<span lang="EN-US">.<o:p></o:p></span></span></p>
<table cellspacing="0" cellpadding="0" border="1" class="MsoTableGrid" style="background: rgb(217, 217, 217) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; border-collapse: collapse;">
<tbody>
<tr>
<td width="568" valign="top" style="padding: 0cm 5.4pt; width: 426.1pt;">
<p class="MsoNormal"><strong><span lang="EN-US" style="font-size: 10pt; color: rgb(127, 0, 85); font-family: 'courier new';">boolean</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';"> success = CodeModuleManager.writeNewModule( handle, data, 0, data.length );</span><span lang="EN-US" style="font-family: 'andale mono';"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'andale mono';">saveNewModule(int)</span><span style="font-family: 'Andale Mono';">返回<span lang="EN-US">CodeModuleManager</span>类定义的结果代码之一<span lang="EN-US">,</span>例如如果模块保存成功<span lang="EN-US">,</span>返回<span lang="EN-US">CMM_OK.<o:p></o:p></span></span></p>
<h3><a name="_Toc158092574"><span style="color: rgb(51, 51, 153); font-family: 宋体;">从</span></a><span><span lang="EN-US" style="color: rgb(51, 51, 153);">BlackBerry</span></span><span><span style="color: rgb(51, 51, 153); font-family: 宋体;">设备数据库删除一个模块</span></span><span></span><span lang="EN-US" style="color: rgb(51, 51, 153);"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 'Andale Mono';">调用<span lang="EN-US">deleteModuleEx(int, Boolean).</span>将模块的句柄作为参数删除<span lang="EN-US">,</span>一个<span lang="EN-US">Boolean</span>值指定是否删除模块和它包含的数据<span lang="EN-US">,</span>或仅删除没有相关数据的模块<span lang="EN-US">.</span>如果模块正在使用<span lang="EN-US">,</span>它将在<span lang="EN-US">BlackBerry</span>下次重启时删除<span lang="EN-US">.<o:p></o:p></span></span></p>
<table cellspacing="0" cellpadding="0" border="1" class="MsoTableGrid" style="background: rgb(230, 230, 230) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; border-collapse: collapse;">
<tbody>
<tr>
<td width="568" valign="top" style="padding: 0cm 5.4pt; width: 426.1pt;">
<p align="left" class="MsoNormal" style="text-align: left;"><strong><span lang="EN-US" style="font-size: 10pt; color: rgb(127, 0, 85); font-family: 'courier new';">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';"> handle = CodeModuleManager.getModuleHandle(</span><span lang="EN-US" style="font-size: 10pt; color: rgb(42, 0, 255); font-family: 'courier new';">&quot;test_module&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">);</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p align="left" class="MsoNormal" style="text-align: left;"><strong><span lang="EN-US" style="font-size: 10pt; color: rgb(127, 0, 85); font-family: 'courier new';">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">( handle != 0 ) {</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p align="left" class="MsoNormal" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';"><span>&nbsp;&nbsp;&nbsp; </span>Boolean success = CodeModuleManager.deleteModule( handle, </span><strong><span lang="EN-US" style="font-size: 10pt; color: rgb(127, 0, 85); font-family: 'courier new';">true</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';"> );</span><span lang="EN-US" style="font-size: 10pt; font-family: 'courier new';"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'courier new';">}</span></p>
</td>
</tr>
</tbody>
</table>
<p><span lang="EN-US" style="font-size: 10.5pt; font-family: 'times new roman';">   <br clear="all" style="page-break-before: always;" /></span> </p>
<hr style="width: 100%; height: 2px;" />
<ul>
<li><span lang="EN-US" style="font-size: 10.5pt; font-family: 'times new roman';">Last Updated:2007年2月6日       <br /></span></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.inblackberry.com/web/development/docs/vol-2-manage-app.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>BlackBerry 应用程序开发者指南 第二卷：高级&#8211;第13章 应用程序间共享运行时对象</title>
		<link>http://www.inblackberry.com/web/development/docs/dev-guide-vol-2-share-objects-in-apps.html</link>
		<comments>http://www.inblackberry.com/web/development/docs/dev-guide-vol-2-share-objects-in-apps.html#comments</comments>
		<pubDate>Mon, 28 Apr 2008 22:15:32 +0000</pubDate>
		<dc:creator>Taigoo</dc:creator>
		
		<category><![CDATA[文档]]></category>

		<category><![CDATA[api]]></category>

		<category><![CDATA[doc]]></category>

		<guid isPermaLink="false">http://www.inblackberry.com/web/development/docs/dev-guide-vol-2-share-objects-in-apps.html</guid>
		<description><![CDATA[<p class="MsoNormal" style="text-align: right" align="right">13</p>
<a name="_Toc158092575">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 第</a>13章 应用程序间共享运行时对象




<p class="MsoNormal">共享运行时对象</p>




<h2><a name="_Toc158092576">共享运行时对象</a></h2>
<p]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="text-align: right" align="right"><strong><span lang="EN-US" style="font-size: 36pt">13<o:p></o:p></span></strong></p>
<h1><a name="_Toc158092575"><span style="color: #333399; font-family: 宋体">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 第</span></a><span><span lang="EN-US" style="color: #333399">13</span></span><span><span style="color: #333399; font-family: 宋体">章</span></span><span><span style="color: #333399"> </span></span><span><span style="color: #333399; font-family: 宋体">应用程序间共享运行时对象</span></span></h1>
<table class="MsoTableGrid" style="background: #d9d9d9 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">共享运行时对象</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
</td>
</tr>
</tbody>
</table>
<h2><a name="_Toc158092576"><span style="color: #333399; font-family: 黑体">共享运行时对象</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h2>
<p class="MsoNormal"><strong><span style="font-family: 宋体"><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" />注</span></strong><span lang="EN-US">: </span><span style="font-family: 宋体">当应用程序第一次访问运行时存储时</span><span lang="EN-US">,</span><span style="font-family: 宋体">检查一个</span> <span lang="EN-US">NoClassDefFoundError.</span><span style="font-family: 宋体">如果系统管理员通过应用程序控制限制访问运行时存储</span><span lang="EN-US">,</span><span style="font-family: 宋体">将抛出此错误</span><span lang="EN-US">. </span><span style="font-family: 宋体">为获得更多信息</span><span lang="EN-US">,</span><span style="font-family: 宋体">参看</span><em><span lang="EN-US">BlackBerry</span></em><em><span style="font-family: 宋体">应用程序开发者指南</span> </em><em><span style="font-family: 宋体">第</span><span lang="EN-US">2</span></em><em><span style="font-family: 宋体">卷</span><span lang="EN-US">:</span></em><em><span style="font-family: 宋体">高级</span> </em><em><span style="font-family: 宋体">第</span><span lang="EN-US">1</span></em><em><span style="font-family: 宋体">卷</span><span lang="EN-US">:</span></em><em><span style="font-family: 宋体">基础</span></em><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备使用一个运行时存储提供一个中心位置</span><span lang="EN-US">,</span><span style="font-family: 宋体">在此位置上应用程序可以共享运行时对象</span><span lang="EN-US">.</span><span style="font-family: 宋体">缺省的</span><span lang="EN-US">,</span><span style="font-family: 宋体">仅由</span><span lang="EN-US">RIM</span><span style="font-family: 宋体">数字签名的应用程序才可以访问运行时存储上的数据</span><span lang="EN-US">.</span><span style="font-family: 宋体">联系</span><span lang="EN-US">RIM</span><span style="font-family: 宋体">获得关于如何控制访问你的数据的信息</span><span lang="EN-US">.</span></p>
<h3><a name="_Toc158092577"><span style="color: #333399; font-family: 宋体">获取运行时存储</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US">&gt;</span><span style="font-family: 宋体">调用</span><span lang="EN-US">RuntimeStore.getRuntimeStore().</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">RuntimeStore store = RuntimeStore.getRuntimeStore();</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span style="font-family: 宋体">为增加或获得运行时对象</span><span lang="EN-US">,</span><span style="font-family: 宋体">调用</span><span lang="EN-US">RuntimeStore</span><span style="font-family: 宋体">上的方法</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><v:shape id="_x0000_s1026" style="margin-top: 0.85pt; z-index: 1; left: 0px; margin-left: -9pt; width: 27pt; position: absolute; height: 26.2pt; text-align: left; mso-wrap-distance-left: 9.05pt; mso-wrap-distance-right: 9.05pt" o:allowoverlap="f" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image001.emz" o:title=""></v:imagedata><o:lock v:ext="edit" aspectratio="f"></o:lock><w:wrap type="square"></w:wrap></v:shape><span><font face="Times New Roman"></font><strong><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" />注</strong></span><span lang="EN-US">:</span><span style="font-family: 宋体">运行时存储不是持久的</span><span lang="EN-US">,</span><span style="font-family: 宋体">如果</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">重启</span><span lang="EN-US">,</span><span style="font-family: 宋体">运行时存储的数据将丢失</span><span lang="EN-US">.</span></p>
<h3><a name="_Toc158092578"><span style="color: #333399; font-family: 宋体">增加一个运行时对象</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US">&gt;</span><span style="font-family: 宋体">调用</span><span lang="EN-US">RuntimeStore.put(long, String). </span><span style="font-family: 宋体">将一个唯一</span><span lang="EN-US">long ID</span><span style="font-family: 宋体">和存储的对象作为参数</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">RuntimeStore store = RuntimeStore.getRuntimeStore();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Create an object and a unique number to identify the object.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">String msg = </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Some shared text&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ID = 0&#215;60ac754bc0867248L;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// put() throws an IllegalArgumentException if an object with the same ID exists.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">try</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>store.put( ID, msg );</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">catch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(IllegalArgumentException e) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Handle exception - an object with the same ID exists.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092579"><span style="color: #333399; font-family: 宋体">替换一个运行时对象</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US">&gt;</span><span style="font-family: 宋体">调用</span><span lang="EN-US"> replace().</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">RuntimeStore store = RuntimeStore.getRuntimeStore();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">String newmsg = </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Some new text&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">try</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Returns the existing object with the specified ID if it exists; null</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// otherwise.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>Object obj = store.replace( 0&#215;60ac754bc0867248L, newmsg);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">catch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(ControlledAccessException e) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Handle exception - insufficient permissions.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092580"><span style="color: #333399; font-family: 宋体">获取一个注册的运行时对象</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US">&gt;</span><span style="font-family: 宋体">调用</span><span lang="EN-US">RuntimeStore.get(). </span><span style="font-family: 宋体">将对象</span><span lang="EN-US">ID</span><span style="font-family: 宋体">作为参数</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">RuntimeStore store = RuntimeStore.getRuntimeStore();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// get() throws a ControlledAccessException if your application does not have read access to the specified object.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">try</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// get() returns the objectm with the specified ID if it exists; null</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// otherwise.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>Object obj = store.get(0&#215;60ac754bc0867248L);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">catch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(ControlledAccessException e) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Handle exception.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092581"><span style="color: #333399; font-family: 宋体">获取一个未注册的运行时对象</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US">&gt;</span><span style="font-family: 宋体">调用</span><span lang="EN-US">RuntimeStore.waitFor() </span><span style="font-family: 宋体">等待一个运行时对象注册</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">RuntimeStore store = RuntimeStore.getRuntimeStore();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">try</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>Object obj = store.waitFor(0&#215;60ac754bc0867248L);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">catch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(ControlledAccessException e) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Handle exception - insufficient permissions.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">catch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(RuntimeException e) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Handle exception - time out.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p>&#160;</o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><v:shape id="_x0000_s1028" style="margin-top: 5.2pt; z-index: 3; left: 0px; margin-left: -9pt; width: 27pt; position: absolute; height: 26.2pt; text-align: left; mso-wrap-distance-left: 9.05pt; mso-wrap-distance-right: 9.05pt; mso-position-horizontal-relative: text; mso-position-vertical-relative: text" o:allowoverlap="f" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image001.emz" o:title=""></v:imagedata><o:lock v:ext="edit" aspectratio="f"></o:lock><w:wrap type="square"></w:wrap></v:shape><span>&#160;<strong><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" />注</strong></span><span style="font-family: 宋体">如果指定</span><span lang="EN-US">ID</span><span style="font-family: 宋体">的对象不存在</span><span lang="EN-US">, waitFor()</span><span style="font-family: 宋体">会阻止一个</span><span lang="EN-US">MAX_WAIT_MILLIS</span><span style="font-family: 宋体">的最大数</span><span lang="EN-US">.</span><span style="font-family: 宋体">如果此时对象还没有注册</span><span lang="EN-US">, waitFor()</span><span style="font-family: 宋体">将会抛出一个</span><span lang="EN-US">RuntimeException</span><span style="font-family: 宋体">异常</span><span lang="EN-US">.</span></p>
<hr style="width: 100%; height: 2px" />Last Updated:2007年2月6日  <br /> 
<p class="MsoNormal"><span lang="EN-US"></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&#160;</o:p></span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.inblackberry.com/web/development/docs/dev-guide-vol-2-share-objects-in-apps.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>BlackBerry 应用程序开发者指南 第二卷：高级&#8211;第11章 管理通知(Notification)</title>
		<link>http://www.inblackberry.com/web/development/docs/guide-vol-2-manage-notification.html</link>
		<comments>http://www.inblackberry.com/web/development/docs/guide-vol-2-manage-notification.html#comments</comments>
		<pubDate>Mon, 28 Apr 2008 22:04:50 +0000</pubDate>
		<dc:creator>Taigoo</dc:creator>
		
		<category><![CDATA[文档]]></category>

		<category><![CDATA[api]]></category>

		<category><![CDATA[doc]]></category>

		<guid isPermaLink="false">http://www.inblackberry.com/web/development/docs/guide-vol-2-manage-notification.html</guid>
		<description><![CDATA[<p class="MsoNormal" style="text-align: right" align="right">11</p>
<a name="_Toc158092534">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 第</a>11章 管理通知(Notification)




<p class="MsoNormal">通知API</p>
<p class="MsoNormal">增加事件</p>
<p]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="text-align: right" align="right"><strong><span lang="EN-US" style="font-size: 36pt">11<o:p></o:p></span></strong></p>
<h1><a name="_Toc158092534"><span style="color: #333399; font-family: 宋体">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 第</span></a><span><span lang="EN-US" style="color: #333399">11</span></span><span><span style="color: #333399; font-family: 宋体">章</span></span><span><span style="color: #333399"> </span></span><span><span style="color: #333399; font-family: 宋体">管理通知</span></span><span><span lang="EN-US" style="color: #333399">(Notification)</span></span></h1>
<table class="MsoTableGrid" style="background: #d9d9d9 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="0">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">通知</span><span lang="EN-US" style="color: #333399">API<o:p></o:p></span></strong></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">增加事件</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">响应事件</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">自定义系统的通知</span></strong></p>
</td>
</tr>
</tbody>
</table>
<h2><a name="_Toc158092535"><span style="color: #333399; font-family: 黑体">通知</span></a><span><span lang="EN-US" style="color: #333399">API</span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h2>
<p class="MsoNormal"><span style="font-family: 宋体">通知</span><span lang="EN-US">API(net.rim.device.api.notification)</span><span style="font-family: 宋体">让你可以为你的应用程序增加自定义事件</span><span lang="EN-US">,</span><span style="font-family: 宋体">并且当自定义事件发生时</span><span lang="EN-US">,</span><span style="font-family: 宋体">又允许你定义用户接收的通知类型</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><strong><span style="font-family: 宋体"><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" />注</span><span lang="EN-US">:</span></strong><span style="font-family: 宋体">当你的应用程序第一次访问通知</span><span lang="EN-US">API</span><span style="font-family: 宋体">时</span><span lang="EN-US">,</span><span style="font-family: 宋体">它将检查一个</span><span lang="EN-US">ControlledAccessException.</span><span style="font-family: 宋体">如果系统管理员使用应用程序控制限制访问通知</span><span lang="EN-US">API,</span><span style="font-family: 宋体">一将抛出个运行时异常</span><span lang="EN-US">.</span><span style="font-family: 宋体">为获取更多信息</span><span lang="EN-US">,</span><span style="font-family: 宋体">参看</span><span lang="EN-US">&#8221;<em>BlackBerry</em></span><em><span style="font-family: 宋体">应用程序开发者指南</span> </em><em><span style="font-family: 宋体">第</span><span lang="EN-US">2</span></em><em><span style="font-family: 宋体">卷</span><span lang="EN-US">:</span></em><em><span style="font-family: 宋体">高级</span> </em><em><span style="font-family: 宋体">第一卷</span><span lang="EN-US">:</span></em><em><span style="font-family: 宋体">基础</span></em><span lang="EN-US">&#8221;.</span></p>
<table class="MsoNormalTable" style="width: 432pt; border-collapse: collapse" cellspacing="0" cellpadding="0" width="576" border="1">
<tbody>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 97pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="129">
<p class="MsoNormal"><strong><span style="font-family: 宋体">通知事件类型</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 335pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="447">
<p class="MsoNormal"><strong><span style="font-family: 宋体">描述</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 97pt; padding-top: 0cm; height: 12pt" valign="top" width="129">
<p class="MsoNormal"><span style="font-family: 宋体">短暂事件</span><span lang="EN-US"> </span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 335pt; padding-top: 0cm; height: 12pt" valign="top" width="447">
<p class="MsoNormal"><span style="font-family: 宋体">系统通知</span><span lang="EN-US">,</span><span style="font-family: 宋体">例如</span><span lang="EN-US">LED</span><span style="font-family: 宋体">闪烁</span><span lang="EN-US">,</span><span style="font-family: 宋体">振动或铃声</span><span lang="EN-US">. </span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 97pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="129">
<p class="MsoNormal"><span style="font-family: 宋体">延续事件</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 335pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="447">
<p class="MsoNormal"><span style="font-family: 宋体">应用程序指定的通知</span><span lang="EN-US">,</span><span style="font-family: 宋体">例如一个</span><span lang="EN-US">UI.</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal"><span style="font-family: 宋体">对于短暂事件</span><span lang="EN-US">,</span><span style="font-family: 宋体">只要事件一发生</span><span lang="EN-US">,BlackBerry</span><span style="font-family: 宋体">设备就会使用一个系统通知</span><span lang="EN-US">, </span><span style="font-family: 宋体">例如</span><span lang="EN-US">LED</span><span style="font-family: 宋体">闪烁</span><span lang="EN-US">,</span><span style="font-family: 宋体">振动或铃声</span><span lang="EN-US">,</span><span style="font-family: 宋体">尽快将消息发送给用户</span><span lang="EN-US">.</span><span style="font-family: 宋体">应用程序不可以请求一指定类型的通知</span><span lang="EN-US">.</span><span style="font-family: 宋体">在手持设备配置</span><span lang="EN-US">(Profile)</span><span style="font-family: 宋体">列表里</span><span lang="EN-US">,</span><span style="font-family: 宋体">用户通过选择一个活动的配置和设置配置选项来控制它们如何接收短暂事件的通知</span><span lang="EN-US">.</span><span style="font-family: 宋体">为了将一个自定义的系统通知加入到短暂事件</span><span lang="EN-US">,</span><span style="font-family: 宋体">请实现</span><span lang="EN-US">Consequence</span><span style="font-family: 宋体">接口</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family: 宋体">在延续的事件里</span><span lang="EN-US">,BlackBerry</span><span style="font-family: 宋体">设备根据事件的优先级将它们安排在一个队列里</span><span lang="EN-US">.</span><span style="font-family: 宋体">当事件发生时</span><span lang="EN-US">,</span><span style="font-family: 宋体">事件影响的应用程序可能为用户提供一个自定义的通知</span><span lang="EN-US">,</span><span style="font-family: 宋体">一般是通过显示一个用户界面</span><span lang="EN-US">(UI)</span><span style="font-family: 宋体">元素</span><span lang="EN-US">,</span><span style="font-family: 宋体">例如一个对话框来完成</span><span lang="EN-US">.</span><span style="font-family: 宋体">为了监听延续的事件</span><span lang="EN-US">,</span><span style="font-family: 宋体">实现</span><span lang="EN-US">NotificationsEngineListener</span><span style="font-family: 宋体">接口</span><span lang="EN-US">.BlackBerry</span><span style="font-family: 宋体">设备不会为延续事件提供一个系统级的通知</span><span lang="EN-US">.</span></p>
<h2><a name="_Toc158092536"><span style="color: #333399; font-family: 黑体">增加事件</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h2>
<h3><a name="_Toc158092537"><span style="color: #333399; font-family: 宋体">注册一个新的事件源</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">创建一个唯一</span><span lang="EN-US" style="color: #333399">long ID<o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">为每个通知事件定义一个</span><span lang="EN-US">long ID.</span></p>
<table class="MsoTableGrid" style="background: #d9d9d9 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-indent: 10pt"><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;">public static final long ID_1 = 0xdc5bf2f81374095L;<o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><v:shape id="_x0000_s1027" style="margin-top: 11.25pt; z-index: 2; left: 0px; margin-left: -9pt; width: 27pt; position: absolute; height: 27.75pt; text-align: left; mso-wrap-distance-left: 9.05pt; mso-wrap-distance-right: 9.05pt" o:allowoverlap="f" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image001.emz" o:title=""></v:imagedata><o:lock v:ext="edit" aspectratio="f"></o:lock><w:wrap type="square"></w:wrap></v:shape><span style="font-family: 宋体"><font face="Times New Roman"></font><strong><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" /></strong></span><strong><span style="font-family: 宋体">注</span></strong><span lang="EN-US">:</span><span style="font-family: 宋体">使用</span><span lang="EN-US">BlackBerry IDE</span><span style="font-family: 宋体">将一个</span><span lang="EN-US">String</span><span style="font-family: 宋体">转化为一个</span><span lang="EN-US">long,</span><span style="font-family: 宋体">为你的应用程序创建一个</span><span lang="EN-US">long</span><span style="font-family: 宋体">的标记符</span><span lang="EN-US">:</span></p>
<p class="MsoNormal" style="margin-left: 10.5pt; text-indent: 26.25pt"><span lang="EN-US">1.</span><span style="font-family: 宋体">在</span><span lang="EN-US">BlackBerry IDE</span><span style="font-family: 宋体">文本里</span><span lang="EN-US">,</span><span style="font-family: 宋体">输入一个字符串</span><span lang="EN-US">.     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 2.</span><span style="font-family: 宋体">选择字符串</span><span lang="EN-US">,</span><span style="font-family: 宋体">右击</span><span lang="EN-US">,</span><span style="font-family: 宋体">然后单击</span><strong><span lang="EN-US">Convert &#8220;string&#8221; to Long.</span></strong></p>
<p class="MsoNormal"><strong><span lang="EN-US" style="color: #333399"><o:p>&#160;</o:p></span></strong></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">定义一个源对象</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">定义一个为事件提供源的对象</span><span lang="EN-US">. toString()</span><span style="font-family: 宋体">的实现返回显示在配置列表里的字符串</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">Object event = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Object() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String toString() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Notification Demo&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">将你的应用程序注册一个通知源</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">为了将你的应用程序作为一个事件源加入到手持设备的配置列表里</span><span lang="EN-US">,</span><span style="font-family: 宋体">调用</span><span lang="EN-US">NotificationsManager.registerSource().</span><span style="font-family: 宋体">在此方法里</span><span lang="EN-US">,</span><span style="font-family: 宋体">指定一个唯一的事件</span><span lang="EN-US">ID,</span><span style="font-family: 宋体">源对象以及通知级别</span><span lang="EN-US">.</span></p>
<p class="MsoNormal" style="margin-left: 42pt; text-indent: -21pt"><span style="font-family: 宋体">通知级别设置了事件的优先级</span><span lang="EN-US">,</span><span style="font-family: 宋体">它决定了延续事件发生的顺序</span><span lang="EN-US">.</span><span style="font-family: 宋体">以最高级到最低级的顺序</span><span lang="EN-US">,</span><span style="font-family: 宋体">级别如下</span><span lang="EN-US">:</span></p>
<ul>
<li><span lang="EN-US">NotificationsConstants.CRITICAL</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span> </li>
<li><span lang="EN-US">NotificationsConstants.SENSITIVE</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span> </li>
<li><span lang="EN-US">NotificationsConstants.IMPORTANT</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span> </li>
<li><span lang="EN-US">NotificationsConstants.DEFAULT_LEVEL</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span> </li>
<li><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal">&#160;</span></span></span><span lang="EN-US">NotificationsConstants.CASUAL</span> </li>
</ul>
<p class="MsoNormal"><v:shape id="_x0000_s1028" style="margin-top: 7.8pt; z-index: 3; left: 0px; margin-left: -9pt; width: 27pt; position: absolute; height: 26.2pt; text-align: left; mso-wrap-distance-left: 9.05pt; mso-wrap-distance-right: 9.05pt" o:allowoverlap="f" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image001.emz" o:title=""></v:imagedata><o:lock v:ext="edit" aspectratio="f"></o:lock><w:wrap type="square"></w:wrap></v:shape><span style="font-family: 宋体"><font face="Times New Roman">&#160;</font><strong><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" /></strong></span><strong><span style="font-family: 宋体">注</span></strong><span lang="EN-US">:</span><span style="font-family: 宋体">优先级仅适用于延续事件</span><span lang="EN-US">.</span><span style="font-family: 宋体">只要短暂事件触发</span><span lang="EN-US">,</span><span style="font-family: 宋体">它们就会发生</span><span lang="EN-US">.</span><span style="font-family: 宋体">当触发一个延续事件时</span><span lang="EN-US">,</span><span style="font-family: 宋体">指定一个过期时间</span><span lang="EN-US">.</span><span style="font-family: 宋体">如果事件在最高级事件之前已经过期</span><span lang="EN-US">,</span><span style="font-family: 宋体">用户可能不会接收到此最低级事件的通知</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">当</span><span lang="EN-US" style="color: #333399">BlackBerry</span></strong><strong><span style="color: #333399; font-family: 宋体">设备启动时注册事件源</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">为了注册一个事件源</span><span lang="EN-US">,</span><span style="font-family: 宋体">创建一个带有</span><span lang="EN-US">libMain()</span><span style="font-family: 宋体">的工程</span><span lang="EN-US">,</span><span style="font-family: 宋体">在</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备启动时进行注册</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">创建一个类库工程</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span lang="EN-US">1.</span><span style="font-family: 宋体">在</span><span lang="EN-US">BlackBerry IDE, </span><span style="font-family: 宋体">创建一个工程</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US">2.</span><span style="font-family: 宋体">右击工程</span><span lang="EN-US">,</span><span style="font-family: 宋体">单击</span><strong><span lang="EN-US">Properties</span></strong><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US">3.</span><span style="font-family: 宋体">单击</span> <strong><span lang="EN-US">Application</span></strong><span style="font-family: 宋体">标签</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US">4.</span><span style="font-family: 宋体">在</span><strong><span lang="EN-US">Project type </span></strong><span style="font-family: 宋体">下拉列里</span><span lang="EN-US">,</span><span style="font-family: 宋体">单击</span><strong><span lang="EN-US">Library</span></strong><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US">5.</span><span style="font-family: 宋体">选择</span><strong><span lang="EN-US">Auto-run on startup</span></strong><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US">6.</span><span style="font-family: 宋体">单击</span><strong><span lang="EN-US">OK</span></strong><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US">7.</span><span style="font-family: 宋体">定义</span><span lang="EN-US">libMain().</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ID_1 = 0xdc5bf2f81374095L;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Object event = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Object() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String toString()</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>{ </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Sample Notification Event #1&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">; </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>};</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> libMain(String[] args) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>NotificationsManager.registerSource(ID_1, event,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>NotificationsConstants.CASUAL);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092538"><span style="color: #333399; font-family: 宋体">触发一个短暂事件</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">调用</span><span lang="EN-US">triggerImmediateEvent().</span><span style="font-family: 宋体">短暂事件由标准的系统通知描述</span><span lang="EN-US">,</span><span style="font-family: 宋体">例如铃声</span><span lang="EN-US">,</span><span style="font-family: 宋体">振动</span><span lang="EN-US">,</span><span style="font-family: 宋体">或</span><span lang="EN-US">LED.</span></p>
<p class="MsoNormal" style="text-indent: 5pt"><strong><em><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;">NotificationsManager.triggerImmediateEvent(ID_1, 0, this, null);<o:p></o:p></span></em></strong></p>
<p class="MsoNormal"><span lang="EN-US">triggerImmediateEvent</span><span style="font-family: 宋体">方法接受下面的参数</span><span lang="EN-US">:</span></p>
<table class="MsoNormalTable" style="width: 432pt; border-collapse: collapse" cellspacing="0" cellpadding="0" width="576" border="1">
<tbody>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 83pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="111">
<p class="MsoNormal"><strong><span style="font-family: 宋体">参数</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 349pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="465">
<p class="MsoNormal"><strong><span style="font-family: 宋体">描述</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 83pt; padding-top: 0cm; height: 12pt" valign="top" width="111">
<p class="MsoNormal"><span lang="EN-US">sourceID</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 349pt; padding-top: 0cm; height: 12pt" valign="top" width="465">
<p class="MsoNormal"><span style="font-family: 宋体">启动事件</span><span lang="EN-US">(</span><span style="font-family: 宋体">当调用</span><span lang="EN-US">registerSource()</span><span style="font-family: 宋体">时指定</span><span lang="EN-US">)</span><span style="font-family: 宋体">的应用程序的标志符</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 83pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="111">
<p class="MsoNormal"><span lang="EN-US">eventID</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 349pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="465">
<p class="MsoNormal"><span style="font-family: 宋体">应用程序事件标志符</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 83pt; padding-top: 0cm; height: 12pt" valign="top" width="111">
<p class="MsoNormal"><span lang="EN-US">eventReference</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 349pt; padding-top: 0cm; height: 12pt" valign="top" width="465">
<p class="MsoNormal"><span style="font-family: 宋体">应用程序事件</span><span lang="EN-US">cookie.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 83pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="111">
<p class="MsoNormal"><span lang="EN-US">context</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 349pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="465">
<p class="MsoNormal"><span style="font-family: 宋体">可选的上下文对象</span><span lang="EN-US">.</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span style="font-family: 宋体">在大多数情况下</span><span lang="EN-US">,</span><span style="font-family: 宋体">不要使用短暂事件</span><span lang="EN-US">,</span><span style="font-family: 宋体">因为</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备事件通知不会充分说明发生了什么事情</span><span lang="EN-US">.</span><span style="font-family: 宋体">例如</span><span lang="EN-US">,</span><span style="font-family: 宋体">如果</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备振动</span><span lang="EN-US">,</span><span style="font-family: 宋体">对于用户来说</span><span lang="EN-US">,</span><span style="font-family: 宋体">它将很难知道到底是在你的应用程序里发生了一个事件</span><span lang="EN-US">,</span><span style="font-family: 宋体">还是一个新消息已经到达了</span><span lang="EN-US">.</span><span style="font-family: 宋体">如果你使用了短暂消息</span><span lang="EN-US">,</span><span style="font-family: 宋体">考虑实现一个自定义的通知</span><span lang="EN-US">,</span><span style="font-family: 宋体">例如一个特殊的铃声</span><span lang="EN-US">,</span><span style="font-family: 宋体">来区分你的应用程序事件和其他</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备事件</span><span lang="EN-US">.</span><span style="font-family: 宋体">为获取更多信息</span><span lang="EN-US">,</span><span style="font-family: 宋体">参看</span><span lang="EN-US">122</span><span style="font-family: 宋体">页的</span><span lang="EN-US">&#8221;</span><span style="font-family: 宋体">自定义系统通知</span><span lang="EN-US">&#8221;.</span></p>
<h3><a name="_Toc158092539"><span style="color: #333399; font-family: 宋体">触发一个延续事件</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">调用</span><span lang="EN-US">negotiateDeferredEvent().</span><span style="font-family: 宋体">一个延续事件让你的应用程序以一个</span><span lang="EN-US">UI</span><span style="font-family: 宋体">元素</span><span lang="EN-US">,</span><span style="font-family: 宋体">例如一个对话框通知用户</span></p>
<p class="MsoNormal"><strong><em><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;">NotificationsManager.negotiateDeferredEvent(ID_1, 0, this, -1,<o:p></o:p></span></em></strong></p>
<p class="MsoNormal"><strong><em><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;">NotificationsConstants.MANUAL_TRIGGER, null);<o:p></o:p></span></em></strong></p>
<p class="MsoNormal"><strong><em><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p>&#160;</o:p></span></em></strong></p>
<p class="MsoNormal"><strong><em><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;">negotiateDeferredEvent(long, long, Object, long, int, Object)</span></em></strong><span lang="EN-US"> </span><span style="font-family: 宋体">方法接受下面的参数</span><span lang="EN-US">:</span></p>
<table class="MsoNormalTable" style="width: 432pt; border-collapse: collapse" cellspacing="0" cellpadding="0" width="576" border="1">
<tbody>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 76.1pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="101">
<p class="MsoNormal"><strong><span style="font-family: 宋体">参数</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 355.9pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="475">
<p class="MsoNormal"><strong><span style="font-family: 宋体">描述</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 76.1pt; padding-top: 0cm; height: 12pt" valign="top" width="101">
<p class="MsoNormal"><span lang="EN-US">sourceID</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 355.9pt; padding-top: 0cm; height: 12pt" valign="top" width="475">
<p class="MsoNormal"><span style="font-family: 宋体">启动事件</span><span lang="EN-US">(</span><span style="font-family: 宋体">当调用</span><span lang="EN-US">registerSource()</span><span style="font-family: 宋体">时指定</span><span lang="EN-US">)</span><span style="font-family: 宋体">的应用程序的标志符</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 76.1pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="101">
<p class="MsoNormal"><span lang="EN-US">eventID</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 355.9pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="475">
<p class="MsoNormal"><span style="font-family: 宋体">应用程序事件标志符</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 76.1pt; padding-top: 0cm; height: 12pt" valign="top" width="101">
<p class="MsoNormal"><span lang="EN-US">eventReference</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 355.9pt; padding-top: 0cm; height: 12pt" valign="top" width="475">
<p class="MsoNormal"><span style="font-family: 宋体">应用程序事件</span><span lang="EN-US">cookie.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 76.1pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="101">
<p class="MsoNormal"><span lang="EN-US">timeout</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 355.9pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="475">
<p class="MsoNormal"><span style="font-family: 宋体">事件过期时间</span><span lang="EN-US">,</span><span style="font-family: 宋体">以毫秒计</span><span lang="EN-US">,</span><span style="font-family: 宋体">当调用方法时的相对时间</span><span lang="EN-US">(</span><span style="font-family: 宋体">忽略过期时间</span><span lang="EN-US">,</span><span style="font-family: 宋体">除非</span><span lang="EN-US">trigger</span><span style="font-family: 宋体">是</span><span lang="EN-US">OUT_OF_HOLSTER_TRIGGER)</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 76.1pt; padding-top: 0cm; height: 12pt" valign="top" width="101">
<p class="MsoNormal"><span lang="EN-US">trigger</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 355.9pt; padding-top: 0cm; height: 12pt" valign="top" width="475">
<p class="MsoNormal"><span style="font-family: 宋体">要么是</span><span lang="EN-US">NotificationsConstants.OUT_OF_HOLSTER_TRIGGER,</span><span style="font-family: 宋体">它指定了当</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备和计算机断开时的事件</span><span lang="EN-US">,</span><span style="font-family: 宋体">要么是</span><span lang="EN-US">NotificationsConstants.MANUAL_TRIGGER,</span><span style="font-family: 宋体">它指定了应用程序本身触发事件</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 76.1pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="101">
<p class="MsoNormal"><span lang="EN-US">context</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 355.9pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="475">
<p class="MsoNormal"><span style="font-family: 宋体">可选对象</span><span lang="EN-US">,</span><span style="font-family: 宋体">可以存储附加的</span><span lang="EN-US">,</span><span style="font-family: 宋体">任意的参数来控制事件通知的状态或者行为</span><span lang="EN-US">.</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal"><span style="font-family: 宋体">如果你调用</span><span lang="EN-US">negotiateDeferredEvent(long, long, Object, long, int, Object),</span><span style="font-family: 宋体">你的应用程序必须实现</span><span lang="EN-US">NotificationEventListener</span><span style="font-family: 宋体">来监听事件并充分响应它</span><span lang="EN-US">.</span><span style="font-family: 宋体">为获取更多信息</span><span lang="EN-US">,</span><span style="font-family: 宋体">参看</span><span lang="EN-US">121</span><span style="font-family: 宋体">页的</span><span lang="EN-US">&#8221;</span><span style="font-family: 宋体">响应事件</span><span lang="EN-US">&#8221;.</span></p>
<h3><a name="_Toc158092540"><span style="color: #333399; font-family: 宋体">取消一个事件</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">取消一个短暂事件</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">调用</span><span lang="EN-US">cancelImmediateEvent(long, long, Object, Object), </span><span style="font-family: 宋体">然后指定源以及事件</span><span lang="EN-US">ID</span><span style="font-family: 宋体">．</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&#160;</span></span><strong><em><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;">NotificationsManager.cancelImmediateEvent(ID_1, 0, this, null);<o:p></o:p></span></em></strong></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">取消一个延续事件</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">调用</span><span lang="EN-US"> cancelDeferredEvent(long, long, Object, int, Object), </span><span style="font-family: 宋体">然后指定源以及事件</span><span lang="EN-US">ID</span><span style="font-family: 宋体">．</span></p>
<p class="MsoNormal"><strong><em><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;">NotificationsManager.cancelDeferredEvent(ID_1, 0, this, NotificationsConstants.MANUAL_TRIGGER, null);<o:p></o:p></span></em></strong></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">取消所有延续事件</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">调用</span><span lang="EN-US">cancelAllDeferredEvents(long, int, Object)</span><span style="font-family: 宋体">方法取消所有应用程序启动的是延续事件</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><strong><em><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;">NotificationsManager.cancelAllDeferredEvents(ID_1, NotificationsConstants.MANUAL_TRIGGER, null);<o:p></o:p></span></em></strong></p>
<p class="MsoNormal"><v:shape id="_x0000_s1029" style="margin-top: 7.8pt; z-index: 4; left: 0px; margin-left: -9pt; width: 27pt; position: absolute; height: 26.2pt; text-align: left; mso-wrap-distance-left: 9.05pt; mso-wrap-distance-right: 9.05pt" o:allowoverlap="f" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image001.emz" o:title=""></v:imagedata><o:lock v:ext="edit" aspectratio="f"></o:lock><w:wrap type="square"></w:wrap></v:shape><span style="font-family: 宋体"><font face="Times New Roman">&#160;</font><strong><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" /></strong></span><strong><span style="font-family: 宋体">注</span></strong><span lang="EN-US">.</span><span style="font-family: 宋体">如果你调用</span><span lang="EN-US">negotiateDeferredEvent()</span><span style="font-family: 宋体">方法</span><span lang="EN-US">,</span><span style="font-family: 宋体">但没有指定过期事件</span><span lang="EN-US">,</span><span style="font-family: 宋体">你必须调用</span><span lang="EN-US">cancelDeferredEvent()</span><span style="font-family: 宋体">方法取消事件</span><span lang="EN-US">,</span><span style="font-family: 宋体">否则事件永远不过期</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&#160;</o:p></span></p>
<h3><a name="_Toc158092541"><span style="color: #333399; font-family: 宋体">代码实例</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><strong><span style="font-family: 宋体"></span></strong></p>
<hr style="width: 100%; height: 2px" />
<p class="MsoNormal"><strong><span style="font-family: 宋体">例</span><span lang="EN-US">: NotificationDemo.java<o:p></o:p></span></strong></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">/**</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">*</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">NotificationsDemo.java</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">*</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Copyright</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">(C)</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">2001</span><span lang="EN-US" style="font-size: 10pt; color: #7f7f9f; font-family: &#39;courier new&#39;">-</span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">2005</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Research</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">In</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Motion</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Limited.</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">All</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">rights</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">reserved.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">*/</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">package</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> com.rim.samples.docs.notifications;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.notification.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.ui.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.ui.component.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.ui.container.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.system.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.util.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> com.rim.samples.docs.baseapp.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> NotificationsDemo </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">extends</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> BaseApp {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">ID_1</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 0xdc5bf2f81374095L;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_eventIdGenerator</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Object </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">er</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Object </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">event</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Object() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String toString() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Sample Notification Event #1&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>};</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> main(String[] args) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>NotificationsManager.registerSource(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">ID_1</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">event</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, NotificationsConstants.CASUAL);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>NotificationsManager.registerConsequence(ConsequenceDemo.ID,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ConsequenceDemo());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>NotificationsDemo app = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> NotificationsDemo();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>app.enterEventDispatcher();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> NotificationsDemo() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>MainScreen mainScreen = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MainScreen();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.setTitle(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Notification Demo App&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.addKeyListener(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">this</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.addTrackwheelListener(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">this</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>NotificationsManager.registerNotificationsEngineListener(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">ID_1</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> NotificationsEngineListenerImpl(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">this</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>pushScreen(mainScreen);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem triggerItem = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, 0, 100, 10) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> run() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>NotificationsManager.triggerImmediateEvent(ID_1, 0, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">this</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String toString() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Trigger event&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>};</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem deferItem = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, 0, 100, 10) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> run() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> timeout = -1; </span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Ignored unless trigger is OUT_OF_HOLSTER_TRIGGER.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> trigger = NotificationsConstants.MANUAL_TRIGGER;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Object er = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Object();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>NotificationsManager.negotiateDeferredEvent(ID_1, ++_eventIdGenerator,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>er, timeout, trigger, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String toString() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Start deferred event&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>};</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem cancelItem = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, 0, 100, 10) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> run() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> trigger = NotificationsConstants.MANUAL_TRIGGER;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>NotificationsManager.cancelDeferredEvent(ID_1, _eventIdGenerator, er,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>trigger, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String toString() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Cancel deferred event&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>};</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> makeMenu( Menu menu, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> instance ) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>menu.add(triggerItem);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>menu.add(deferItem);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>menu.add(cancelItem);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">super</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.makeMenu(menu, instance);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> onExit() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>System.<em>exit</em>(0);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> NotificationsEngineListenerImpl </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">implements</span></strong><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>NotificationsEngineListener {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> UiApplication _app;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> NotificationsEngineListenerImpl(UiApplication app) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>_app = app;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> deferredEventWasSuperseded(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> sourceID, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> eventID,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Object eventReference, Object context) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> _eventID = eventID;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">er</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = eventReference;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>_app.invokeLater(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Runnable() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> run() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>NotificationsManager.cancelDeferredEvent(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">ID_1</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, _eventID, </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">er</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>NotificationsConstants.MANUAL_TRIGGER, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>});</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> notificationsEngineStateChanged(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> stateInt, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> sourceID,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> eventID, Object eventReference, Object context) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(stateInt == NotificationsConstants.OUT_OF_HOLSTER_ENGINE_STATE) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Perform some action if handheld is removed from holster.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(stateInt == NotificationsConstants.IN_HOLSTER_ENGINE_STATE) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Perform some action if handheld is inserted into holster.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> proceedWithDeferredEvent(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> sourceID, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> eventID,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Object eventReference, Object context) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> _eventID = eventID;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>_app.invokeLater(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Runnable() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> run() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>String s = </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;This event has occurred: &quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> + _eventID;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Dialog d = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Dialog(Dialog.D_OK, s, Dialog.OK,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Bitmap.getPredefinedBitmap(Bitmap.INFORMATION), 0);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160; </span>};</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem cancelItem = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, 0, 100, 10) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> run() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> trigger = NotificationsConstants.MANUAL_TRIGGER;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>NotificationsManager.cancelDeferredEvent(ID_1, </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>_eventIdGenerator, er,trigger, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String toString() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Cancel deferred event&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>};</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> makeMenu( Menu menu, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> instance ) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>menu.add(triggerItem);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>menu.add(deferItem);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>menu.add(cancelItem);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">super</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.makeMenu(menu, instance);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> onExit() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>System.exit(0);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> NotificationsEngineListenerImpl </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">implements</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> NotificationsEngineListener {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> UiApplication _app;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> NotificationsEngineListenerImpl(UiApplication app) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>_app = app;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> deferredEventWasSuperseded(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> sourceID, </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> eventID,Object eventReference, Object context) </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> _eventID = eventID;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>er = eventReference;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>_app.invokeLater(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Runnable() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> run() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>NotificationsManager.cancelDeferredEvent(ID_1,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>_eventID, er,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>NotificationsConstants.MANUAL_TRIGGER, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>});</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> notificationsEngineStateChanged(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> stateInt, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> sourceID,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> eventID, Object eventReference, Object context) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(stateInt == NotificationsConstants.OUT_OF_HOLSTER_ENGINE_STATE) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Perform some action if handheld is removed from holster.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(stateInt == NotificationsConstants.IN_HOLSTER_ENGINE_STATE) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Perform some action if handheld is inserted into holster.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> proceedWithDeferredEvent(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> sourceID, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> eventID,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Object eventReference, Object context) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> _eventID = eventID;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>_app.invokeLater(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Runnable() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> run() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>String s = </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;This event has occurred: &quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> + _eventID;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Dialog d = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Dialog(Dialog.D_OK, s, Dialog.OK,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Bitmap.getPredefinedBitmap(Bitmap.INFORMATION), 0);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>d.show();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>});</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US"><v:shape id="_x0000_i1026" type="#_x0000_t75"> </v:shape></span></p>
<h2><a name="_Toc158092542"><span style="color: #333399; font-family: 黑体">响应事件</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h2>
<p class="MsoNormal"><span lang="EN-US">NotificationsEngineListener</span><span style="font-family: 宋体">的实现定义了自定义的通知</span><span lang="EN-US">.</span><span style="font-family: 宋体">调用</span><span lang="EN-US">negotiateDeferredEvent()</span><span style="font-family: 宋体">注册你的实现</span><span lang="EN-US">.</span><span style="font-family: 宋体">如果你触发一个短暂事件</span><span lang="EN-US">,</span><span style="font-family: 宋体">你没有必要为每个</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备提供的标准系统通知实现监听者</span><span lang="EN-US">.<strong><o:p></o:p></strong></span></p>
<h3><a name="_Toc158092543"><span style="color: #333399; font-family: 宋体">为延续事件提供一个自定义的</span></a><span><span lang="EN-US" style="color: #333399">UI</span></span><span><span style="color: #333399; font-family: 宋体">通知</span></span><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US">NotificationsEngineListener</span><span style="font-family: 宋体">接口的实现为延续事件提供了一个自定义的</span><span lang="EN-US">UI</span><span style="font-family: 宋体">通知</span><span lang="EN-US">.</span><span style="font-family: 宋体">为获取关于创建</span><span lang="EN-US">UI</span><span style="font-family: 宋体">的更多信息</span><span lang="EN-US">,</span><span style="font-family: 宋体">参看</span><em><span lang="EN-US">BlackBerry</span></em><em><span style="font-family: 宋体">应用程序开发者指南</span> </em><em><span style="font-family: 宋体">第</span><span lang="EN-US">2</span></em><em><span style="font-family: 宋体">卷</span><span lang="EN-US">:</span></em><em><span style="font-family: 宋体">高级</span> </em><em><span style="font-family: 宋体">第一卷基础</span></em><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ListenerImpl </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">implements</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> NotificationsEngineListener</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">{&#8230;}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal" style="text-indent: 5.25pt"><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">定义挂起事件的行为</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span lang="EN-US">deferredEventWasSuperseded()</span><span style="font-family: 宋体">的实现定义了当一个延续事件挂起时发生的事情</span><span lang="EN-US">.</span><span style="font-family: 宋体">当一个事件由另外一个相同的或者优先级更高的事件挂起时</span><span lang="EN-US">,</span><span style="font-family: 宋体">调用此方法</span><span lang="EN-US">.</span><span style="font-family: 宋体">例如</span><span lang="EN-US">,</span><span style="font-family: 宋体">如果事件挂起时</span><span lang="EN-US">,</span><span style="font-family: 宋体">你可以取消此事件</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> deferredEventWasSuperseded(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> sourceID, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> eventID, </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>Object eventReference, Object context) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> _eventID = eventID;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>er = eventReference;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>_app.invokeLater(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Runnable() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> run() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>NotificationsManager.cancelDeferredEvent(ID_1, _eventID, er,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>NotificationsConstants.MANUAL_TRIGGER, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>});</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><strong><span lang="EN-US" style="color: #333399"><o:p>&#160;</o:p></span></strong></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">定义套座</span><span lang="EN-US" style="color: #333399">(holstering)</span></strong><strong><span style="color: #333399; font-family: 宋体">行为</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span lang="EN-US">notificationsEngineStateChanged()</span><span style="font-family: 宋体">的实现定义了套座的行为</span><span lang="EN-US">.</span><span style="font-family: 宋体">当</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备插入到套座或从套座移出时</span><span lang="EN-US">,</span><span style="font-family: 宋体">调用此方法</span><span lang="EN-US">.</span><span style="font-family: 宋体">例如</span><span lang="EN-US">,</span><span style="font-family: 宋体">当安排了一个延续事件</span><span lang="EN-US">,</span><span style="font-family: 宋体">并且</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备和计算机已经相连或断开时</span><span lang="EN-US">,</span><span style="font-family: 宋体">你可以完成一个指定的操作</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> notificationsEngineStateChanged(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> stateInt, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> sourceID, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> eventID, Object eventReference, Object context) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(stateInt == otificationsConstants.OUT_OF_HOLSTER_ENGINE_STATE) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Perform action if BlackBerry device is removed from holster.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(stateInt == NotificationsConstants.IN_HOLSTER_ENGINE_STATE) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Perform action if BlackBerry device is inserted into holster.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">定义通知</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span lang="EN-US">proceedWithDeferredEvent()</span><span style="font-family: 宋体">的实现定义了当发生事件时如何通知用户</span><span lang="EN-US">,</span><span style="font-family: 宋体">例如显示一个对话框</span><span lang="EN-US">.</span><span style="font-family: 宋体">当监听者处理一个事件</span><span lang="EN-US">(</span><span style="font-family: 宋体">没有其他更高优先级的事件在队列里</span><span lang="EN-US">)</span><span style="font-family: 宋体">时</span><span lang="EN-US">,</span><span style="font-family: 宋体">调用此方法</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> proceedWithDeferredEvent(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> sourceID, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> eventID, Object eventReference,Object context) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> _eventID = eventID;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>_app.invokeLater(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Runnable() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> run() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>String s = </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;This event has occurred: &quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> + _eventID;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Dialog d = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Dialog(Dialog.D_OK, s, Dialog.OK,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Bitmap.getPredefinedBitmap(Bitmap.INFORMATION), 0);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>d.show();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>_eventHashtable.put(_eventID, d);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>});</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092544"><span style="color: #333399; font-family: 宋体">注册通知监听者</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">调用</span><span lang="EN-US">registerNotificationsEngineListener(int, NotificationsEngineListener)</span><span style="font-family: 宋体">在</span><span lang="EN-US">NotificationsManager</span><span style="font-family: 宋体">注册监听者</span><span lang="EN-US">.</span><span style="font-family: 宋体">提供应用程序的事件源</span><span lang="EN-US">ID</span><span style="font-family: 宋体">以及实现</span><span lang="EN-US">NotificationsEngineListener</span><span style="font-family: 宋体">接口的类的实例作为参数</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><strong><em><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;">NotificationsManager.registerNotificationsEngineListener( ID_1, new ListenerImpl(this))</span></em></strong><strong><em><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;">;<o:p></o:p></span></em></strong></p>
<p class="MsoNormal"><span lang="EN-US"><img height="35" hspace="hspace" src="file:///C:/DOCUME~1/CONFAC~1.ZHA/LOCALS~1/Temp/msohtml1/01/clip_image002.gif" width="36" v:shapes="_x0000_i1027" /></span><strong><span style="font-family: 宋体">注</span></strong><span lang="EN-US">:</span><span style="font-family: 宋体">每个应用程序只能注册一个</span><span lang="EN-US">NotificationsEngineListener</span></p>
<h2><a name="_Toc158092545"><span style="color: #333399; font-family: 黑体">自定义系统通知</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h2>
<p class="MsoNormal"><span lang="EN-US">Consequence</span><span style="font-family: 宋体">接口的实现为短暂事件创建了一个系统通知</span><span lang="EN-US">,</span><span style="font-family: 宋体">例如特殊的铃声</span><span lang="EN-US">,</span><span style="font-family: 宋体">或当发生事件</span><span lang="EN-US">,</span><span style="font-family: 宋体">例如创建一个日志记录接收到的通知数时</span><span lang="EN-US">,</span><span style="font-family: 宋体">进行其他的操作</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><v:shape id="_x0000_s1030" style="margin-top: 0px; z-index: 5; left: 0px; margin-left: -9pt; width: 27pt; position: absolute; height: 26.2pt; text-align: left; mso-wrap-distance-left: 9.05pt; mso-wrap-distance-right: 9.05pt" o:allowoverlap="f" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image001.emz" o:title=""></v:imagedata><o:lock v:ext="edit" aspectratio="f"></o:lock><w:wrap type="square"></w:wrap></v:shape><span style="font-family: 宋体"><font face="Times New Roman"></font><strong><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" /></strong></span><strong><span style="font-family: 宋体">注</span></strong><span lang="EN-US">:Consequence</span><span style="font-family: 宋体">接口仅使用在需要系统通知的短暂事件上</span><span lang="EN-US">.</span><span style="font-family: 宋体">延续事件需要你的应用程序实现</span><span lang="EN-US">NotificationsEngineListener</span><span style="font-family: 宋体">接口</span><span lang="EN-US">,</span><span style="font-family: 宋体">并且以一个特定的应用程序回应作为响应</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">在主屏幕上提供一个应用程序</span><span lang="EN-US">,</span><span style="font-family: 宋体">使用户可以设置通知选项</span><span lang="EN-US">.</span></p>
<h3><a name="_Toc158092546"><span style="color: #333399; font-family: 宋体">响应一个通知事件</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US">Consequence </span><span style="font-family: 宋体">和</span><span lang="EN-US">SyncConverter</span><span style="font-family: 宋体">接口的实现对通知事件做出响应</span><span lang="EN-US">. Consequence</span><span style="font-family: 宋体">接口定义了一个对通知事件做出的应用程序响应</span><span lang="EN-US">.SyncConverter</span><span style="font-family: 宋体">接口定义了需要的功能将一个对象转化为序列化格式</span><span lang="EN-US">.</span><span style="font-family: 宋体">这需要使</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备可以备份和恢复</span><span lang="EN-US">Profile</span><span style="font-family: 宋体">配置</span><span lang="EN-US">.</span><span style="font-family: 宋体">为获得更多信息</span><span lang="EN-US">,</span><span style="font-family: 宋体">参看</span><span lang="EN-US">90</span><span style="font-family: 宋体">页的</span><span lang="EN-US">&#8221;BlackBerry</span><span style="font-family: 宋体">持久存储</span><span lang="EN-US">&#8221;.</span></p>
<p class="MsoNormal"><strong><em><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;">private static class ConsequenceImpl implements Consequence,SyncConverter {&#8230;}<o:p></o:p></span></em></strong></p>
<h3><a name="_Toc158092547"><span style="color: #333399; font-family: 宋体">定义一个唯一</span></a><span><span lang="EN-US" style="color: #333399">ID</span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">为结果</span><span lang="EN-US">(consequence)</span><span style="font-family: 宋体">定义一个唯一</span><span lang="EN-US">ID.</span></p>
<p class="MsoNormal"><strong><em><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;">public static final long ID = 0xbd<st1:chmetcnv unitname="C" sourcevalue="2350" hasspace="False" negative="False" numbertype="1" tcsc="0" w:st="on">2350c</st1:chmetcnv>0dfda<st1:chmetcnv unitname="a" sourcevalue="2" hasspace="False" negative="False" numbertype="1" tcsc="0" w:st="on">2a</st1:chmetcnv><st1:chmetcnv unitname="l" sourcevalue="51" hasspace="False" negative="False" numbertype="1" tcsc="0" w:st="on">51L</st1:chmetcnv>;<o:p></o:p></span></em></strong></p>
<h3><a name="_Toc158092548"><span style="color: #333399; font-family: 宋体">定义常量</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">为应用程序定义</span><span lang="EN-US">DATA</span><span style="font-family: 宋体">和</span><span lang="EN-US">TYPE</span><span style="font-family: 宋体">常量</span><span lang="EN-US">.</span><span style="font-family: 宋体">当</span><span lang="EN-US">convert()</span><span style="font-family: 宋体">调用时</span><span lang="EN-US">,</span><span style="font-family: 宋体">为了标记从</span><span lang="EN-US">SyncConverter</span><span style="font-family: 宋体">进来的数据类型</span><span lang="EN-US">,</span><span style="font-family: 宋体">使用这些常量</span><span lang="EN-US">.</span><span style="font-family: 宋体">对于适合的应用程序的数据来说</span><span lang="EN-US">,</span><span style="font-family: 宋体">它们是任意的标志符</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> TYPE = </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;n&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> &lt;&lt; 24 | </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;o&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> &lt;&lt; 16 | </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;t&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> &lt;&lt; 8 | </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;d&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">byte</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[] DATA = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">byte</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[] {</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;m&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;y&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;-&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;c&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;o&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;n&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;f&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;i&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;g&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;-&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;o&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;b&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;j&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;e&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;c&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;t&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">};</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Configuration CONFIG = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Configuration(DATA);</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092549"><span style="color: #333399; font-family: 宋体">创建一个铃声</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">作为事件通知的一部分</span><span lang="EN-US">,</span><span style="font-family: 宋体">创建一个铃声来播放</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">short</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> BFlat = 466; </span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// 466.16</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">short</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> TEMPO = 125;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">short</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> d16 = 1 * TEMPO;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">short</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> dpause = 10; </span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// 10 millisecond pause</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">short</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[] TUNE = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">short</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[] {BFlat, d16, pause, BFlat};</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> VOLUME = 80; </span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Percentage volume.</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092550"><span style="color: #333399; font-family: 宋体">定义一个通知</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US">startNotification()</span><span style="font-family: 宋体">的实现为本结果定义了通知</span><span lang="EN-US">.</span><span style="font-family: 宋体">下面的代码实例里</span><span lang="EN-US">,LED</span><span style="font-family: 宋体">将会闪烁</span><span lang="EN-US">,</span><span style="font-family: 宋体">并且会播放一个铃声</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> startNotification(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> consequenceID, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> sourceID, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> eventID, Object configuration, Object context) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>LED.setConfiguration(500, 250, LED.BRIGHTNESS_50);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>LED.setState(LED.STATE_BLINKING);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>Alert.startAudio(TUNE, VOLUME);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>Alert.startBuzzer(TUNE, VOLUME);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092551"><span style="color: #333399; font-family: 宋体">停止一个通知</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US" style="font-family: &#39;andale mono&#39;">stopNotification()</span><span style="font-family: &#39;Andale Mono&#39;">的实现停止本结果的通知<span lang="EN-US">.<o:p></o:p></span></span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; margin-left: 10.5pt; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> stopNotification(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> consequenceID, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> sourceID,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> eventID, Object configuration, Object context) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>LED.setState(LED.STATE_OFF);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>Alert.stopAudio();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>Alert.stopBuzzer();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092552"><span style="color: #333399; font-family: 宋体">设置用户</span></a><span><span lang="EN-US" style="color: #333399">Profile</span></span><span><span style="color: #333399; font-family: 宋体">选项</span></span><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US" style="font-family: &#39;andale mono&#39;">newConfiguration()</span><span style="font-family: &#39;Andale Mono&#39;">的实现创建一个新的配置对象来存储用户资料的设置<span lang="EN-US">.</span>此对象传到结果的实现中<span lang="EN-US">,</span>以决定用户指定的结果类型是否合适事件<span lang="EN-US">.</span>下面的代码实例返回早期定义的<span lang="EN-US">CONFIG</span>对象<span lang="EN-US"><o:p></o:p></span></span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Object newConfiguration(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> consequenceID, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> sourceID,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">byte</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> profileIndex, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> level, Object context) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> CONFIG;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092553"><span style="color: #333399; font-family: 宋体">启动</span></a><span><span lang="EN-US" style="color: #333399">BlackBerry</span></span><span><span style="color: #333399; font-family: 宋体">设备数据备份</span></span><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US" style="font-family: &#39;andale mono&#39;">SyncConverter.convert()</span><span style="font-family: &#39;Andale Mono&#39;">的实现可以备份<span lang="EN-US">BlackBerry</span>设备数据<span lang="EN-US">.</span>当把<span lang="EN-US">BlackBerry</span>设备上的数据备份到用户计算机上时<span lang="EN-US">,</span>调用此方法<span lang="EN-US">.</span>下面的实例从<span lang="EN-US">DatBuffer</span>读取进入的数据<span lang="EN-US">,</span>并且对未经处理的数据应用一个<span lang="EN-US">4</span>个字节的类型和长度<span lang="EN-US">.<o:p></o:p></span></span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> SyncObject convert(DataBuffer data, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> version, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> UID) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">try</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> type = data.readInt();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> length = data.readCompressedInt();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ( type == TYPE ) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">byte</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[] rawdata = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">byte</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[length];</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>data.readFully(rawdata);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Configuration(rawdata);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">catch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (EOFException e) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>System.err.println(e);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092554"><span style="color: #333399; font-family: 宋体">启动</span></a><span><span lang="EN-US" style="color: #333399">BlackBerry</span></span><span><span style="color: #333399; font-family: 宋体">设备数据恢复</span></span><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US" style="font-family: &#39;andale mono&#39;">SyncConverter.convert()</span><span style="font-family: &#39;Andale Mono&#39;">的实现恢复<span lang="EN-US">BlackBerry</span>设备上的数据<span lang="EN-US">.</span>当数据从用户计算机上恢复到<span lang="EN-US">BlackBerry</span>设备上时<span lang="EN-US">,</span>调用此方法<span lang="EN-US">.<o:p></o:p></span></span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">boolean</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> convert(SyncObject object, </span><u><span lang="EN-US" style="font-size: 10pt; color: blue; font-family: &#39;courier new&#39;">DataBuffer</span></u><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> buffer, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> version) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">boolean</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> retval = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">false</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ( object </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">instanceof</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Configuration ) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>Configuration c = (Configuration)object;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>buffer.writeInt(TYPE);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>buffer.writeCompressedInt(c._data.length);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>buffer.write(c._data);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>retval = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">true</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> retval;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092555"><span style="color: #333399; font-family: 宋体">定义通知配置</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: &#39;Andale Mono&#39;">创建一个类描述通知配置信息<span lang="EN-US">.</span>此类实现了<span lang="EN-US">SyncObject</span>和<span lang="EN-US">Persistable.</span>你必须实现<span lang="EN-US">SyncObject.getUID()</span>方法<span lang="EN-US">,</span>但是如果数据同步不需要<span lang="EN-US">,</span>你的实现可以返回<span lang="EN-US">0,</span>正如下面的例子<span lang="EN-US">.<o:p></o:p></span></span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Configuration </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">implements</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> SyncObject, Persistable {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">byte</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[] </span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_data</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Configuration(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">byte</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[] data) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_data</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = data;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> getUID() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> 0;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092556"><span style="color: #333399; font-family: 宋体">注册一个结果</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: &#39;Andale Mono&#39;">如果你创建一个自定义的<span lang="EN-US">Consequence,</span>调用<span lang="EN-US">registerNotificationsObjects(long, Consequence)</span>方法将之在<span lang="EN-US">NotificationsManager</span>上注册<span lang="EN-US">.<o:p></o:p></span></span></p>
<p class="MsoNormal"><strong><em><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;">NotificationsManager.registerConsequence(ConsequenceImpl.ID, new ConsequenceImpl());<o:p></o:p></span></em></strong></p>
<p class="MsoNormal"><span style="font-family: &#39;Andale Mono&#39;">当<span lang="EN-US">BlackBerry</span>设备启动时<span lang="EN-US">,</span>为了注册<span lang="EN-US">consequence,</span>在一个类库工程里完成这个注册<span lang="EN-US">.</span>为获得更多信息<span lang="EN-US">,</span>参看<span lang="EN-US">116</span>页的<span lang="EN-US">&#8221;</span><em>当<span lang="EN-US">BlackBerry</span>启动时注册一个事件源</em><span lang="EN-US">&#8221;.<o:p></o:p></span></span></p>
<h3><a name="_Toc158092557"><span style="color: #333399; font-family: 宋体">代码实例</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<hr style="width: 100%; height: 2px" />
<p class="MsoNormal"><strong><span style="font-family: &#39;Andale Mono&#39;">例<span lang="EN-US">: ConsequenceDemo.java<o:p></o:p></span></span></strong></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">/**</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">*</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">ConsequenceDemo.java</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">*</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Copyright</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">(C)</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">2001</span><span lang="EN-US" style="font-size: 10pt; color: #7f7f9f; font-family: &#39;courier new&#39;">-</span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">2005</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Research</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">In</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Motion</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Limited.</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">All</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">rights</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">reserved.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">*/</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">package</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> com.rim.samples.docs.notifications;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.synchronization.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.notification.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.system.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.util.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> java.io.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ConsequenceDemo </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">implements</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Consequence, SyncConverter {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">ID</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 0xbd2350c0dfda2a51L;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> TYPE = </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;n&#8217; &lt;&lt; 24 | &#8216;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">o</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216; &lt;&lt; 16 | &#8216;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">t</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216; &lt;&lt; 8 | &#8216;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">d</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">byte</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[] </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">DATA</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">byte</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[] {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;m&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;y&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;-&#8217;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;c&#8217;, &#8216;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">o</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;, &#8216;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">n</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;, &#8216;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">f</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;, &#8216;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">i&#8217;,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;g&#8217;, &#8216;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">-</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;, &#8216;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">o</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;, &#8216;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">b</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;, &#8216;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">j</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;, &#8216;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">e</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;, &#8216;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">c</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216;, &#8216;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">t</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&#8216; };</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Configuration </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">CONFIG</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Configuration(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">DATA</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">short</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">BFlat</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 466; </span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// The actual value is 466.16.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">short</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">TEMPO</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 125;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">short</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">d16</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 1 * </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">TEMPO</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">short</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">pause</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 10; </span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// 10 millisecond pause.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">short</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[] </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">TUNE</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">short</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[] {</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">BFlat</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">d16</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">pause</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">BFlat</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">};</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">VOLUME</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 80; </span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Percentage volume.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> startNotification(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> consequenceID, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> sourceID, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> eventID,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Object configuration, Object context) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>LED.setConfiguration(500, 250, LED.BRIGHTNESS_50);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>LED.setState(LED.STATE_BLINKING);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Alert.startAudio(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">TUNE</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">VOLUME</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Alert.startBuzzer(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">TUNE</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">VOLUME</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> stopNotification(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> consequenceID, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> sourceID, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> eventID,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Object configuration, Object context) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>LED.setState(LED.STATE_OFF);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Alert.stopAudio();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Alert.stopBuzzer();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Object newConfiguration(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> consequenceID, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> sourceID,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">byte</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> profileIndex, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> level, Object context) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">CONFIG</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> SyncObject convert(DataBuffer data, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> version, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> UID) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">try</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> type = data.readInt();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> length = data.readCompressedInt();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ( type == </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">TYPE</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">byte</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[] rawdata = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">byte</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[length];</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>data.readFully(rawdata);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Configuration(rawdata);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">catch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (EOFException e) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>System.</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">err</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.println(e);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">boolean</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> convert(SyncObject object, DataBuffer buffer, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> version) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">boolean</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> retval = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">false</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ( object </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">instanceof</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Configuration ) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Configuration c = (Configuration)object;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>buffer.writeInt(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">TYPE</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>buffer.writeCompressedInt(c.</span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_data</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.</span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">length</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>buffer.write(c.</span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_data</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>retval = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">true</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> retval;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">/* Inner class to store configuration profile. */</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Configuration </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">implements</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> SyncObject, Persistable {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">byte</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[] </span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_data</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Configuration(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">byte</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[] data) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_data</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = data;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> getUID() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> 0;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p> <span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><br />
<hr style="width: 100%; height: 2px" />Last&#160; Updated:2007年2月5日<span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"></span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.inblackberry.com/web/development/docs/guide-vol-2-manage-notification.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>BlackBerry 应用程序开发者指南 第二卷：高级&#8211;第10章 访问安装和配置信息</title>
		<link>http://www.inblackberry.com/web/development/docs/dev-guide-vol-2-access-config-of-install.html</link>
		<comments>http://www.inblackberry.com/web/development/docs/dev-guide-vol-2-access-config-of-install.html#comments</comments>
		<pubDate>Mon, 28 Apr 2008 22:00:56 +0000</pubDate>
		<dc:creator>Taigoo</dc:creator>
		
		<category><![CDATA[文档]]></category>

		<category><![CDATA[api]]></category>

		<category><![CDATA[configure]]></category>

		<category><![CDATA[doc]]></category>

		<guid isPermaLink="false">http://www.inblackberry.com/web/development/docs/dev-guide-vol-2-access-config-of-install.html</guid>
		<description><![CDATA[<p class="MsoNormal" style="text-align: right" align="right">10</p>
<a name="_Toc158092531">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 第</a>10章 访问安装和配置信息




<p class="MsoNormal">服务定制API</p>




<h2><a name="_Toc158092532">服务定制</a>API(Service]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="text-align: right" align="right"><strong><span lang="EN-US" style="font-size: 36pt">10<o:p></o:p></span></strong></p>
<h1><a name="_Toc158092531"><span style="color: #333399; font-family: 宋体">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 第</span></a><span><span lang="EN-US" style="color: #333399">10</span></span><span><span style="color: #333399; font-family: 宋体">章</span></span><span><span style="color: #333399"> </span></span><span><span style="color: #333399; font-family: 宋体">访问安装和配置信息</span></span></h1>
<table class="MsoTableGrid" style="background: #d9d9d9 0% 50%; border-collapse: collapse; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="0">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">服务定制</span><span lang="EN-US" style="color: #333399">API<o:p></o:p></span></strong></p>
</td>
</tr>
</tbody>
</table>
<h2><a name="_Toc158092532"><span style="color: #333399; font-family: 黑体">服务定制</span></a><span><span lang="EN-US" style="color: #333399">API(Service Book API)</span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h2>
<p class="MsoNormal"><span style="font-family: 宋体">服务定制</span><span lang="EN-US">API(net.rim.device.api.servicebook)</span><span style="font-family: 宋体">使应用程序可以和</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">基础</span><span lang="EN-US">(infrastructure)</span><span style="font-family: 宋体">进行交互</span><span lang="EN-US">.</span><span style="font-family: 宋体">服务定制由服务记录组成</span><span lang="EN-US">,</span><span style="font-family: 宋体">每个服务定义了一个在</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备上有效的服务</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">服务记录定义了通讯协议</span><span lang="EN-US">(WAP</span><span style="font-family: 宋体">或</span><span lang="EN-US">IPPP),</span><span style="font-family: 宋体">网关</span><span lang="EN-US">,</span><span style="font-family: 宋体">以及配置信息</span><span lang="EN-US">,</span><span style="font-family: 宋体">例如浏览器设置</span><span lang="EN-US">.</span></p>
<table class="MsoNormalTable" style="width: 432pt; border-collapse: collapse" cellspacing="0" cellpadding="0" width="576" border="1">
<tbody>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 142pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="189">
<p class="MsoNormal"><strong><span style="font-family: 宋体">服务定制</span><span lang="EN-US">API</span></strong><strong><span style="font-family: 宋体">功能</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 290pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="387">
<p class="MsoNormal"><strong><span style="font-family: 宋体">描述</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
</tr>
<tr style="height: 42pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 142pt; padding-top: 0cm; height: 42pt" valign="top" width="189">
<p class="MsoNormal"><span style="font-family: 宋体">管理</span><span lang="EN-US">MDS</span><span style="font-family: 宋体">服务连接</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 290pt; padding-top: 0cm; height: 42pt" valign="top" width="387">
<p class="MsoNormal"><span style="font-family: 宋体">浏览器应用程序</span><span lang="EN-US">API</span><span style="font-family: 宋体">可以使用任何一个带有</span><span lang="EN-US">BrowserConfig </span><span style="font-family: 宋体">的</span><span lang="EN-US">UID</span><span style="font-family: 宋体">的</span><span lang="EN-US">ServiceBook</span><span style="font-family: 宋体">入口</span><span lang="EN-US">,</span><span style="font-family: 宋体">连接到一个无线网络</span><span lang="EN-US">.</span><span style="font-family: 宋体">例如</span><span lang="EN-US">, Browser</span><span style="font-family: 宋体">类使用服务定制获取一个</span><span lang="EN-US">BrowserSession. Browser.getTransportUid()</span><span style="font-family: 宋体">查询一个服务定制来获取和一个给定服务记录相关联的</span><span lang="EN-US">UID.</span></p>
</td>
</tr>
<tr style="height: 42pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 142pt; padding-top: 0cm; height: 42pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="189">
<p class="MsoNormal"><span style="font-family: 宋体">管理</span><span lang="EN-US">mail</span><span style="font-family: 宋体">信息</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 290pt; padding-top: 0cm; height: 42pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="387">
<p class="MsoNormal"><span style="font-family: 宋体">允许应用程序指定一个频道</span><span lang="EN-US">, </span><span style="font-family: 宋体">它引用合适的服务记录并通过此频道发送一个</span><span lang="EN-US">email.</span><span style="font-family: 宋体">例如</span><span lang="EN-US">,</span><span style="font-family: 宋体">应用程序可以使用</span><span lang="EN-US">BES</span><span style="font-family: 宋体">或一个</span><span lang="EN-US">BlackBerry Internet Service</span><span style="font-family: 宋体">选择发送消息</span><span lang="EN-US">..</span><span style="font-family: 宋体">为获取更多信息</span><span lang="EN-US">,</span><span style="font-family: 宋体">参看</span><span lang="EN-US">12</span><span style="font-family: 宋体">页的</span><span lang="EN-US">&#8221;Mail API&#8221;.</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span style="font-family: 宋体">为了查看</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备上的服务定制</span><span lang="EN-US">,</span><span style="font-family: 宋体">单击选项下的</span><span lang="EN-US">Service Book.</span></p>
<p class="MsoNormal"><span lang="EN-US">ServiceBook</span><span style="font-family: 宋体">类维护一个</span><span lang="EN-US">ServiceRecord</span><span style="font-family: 宋体">对象的集合</span><span lang="EN-US">.</span><span style="font-family: 宋体">每个</span><span lang="EN-US">ServiceRecord</span><span style="font-family: 宋体">对象由一个唯一的</span><span lang="EN-US">ID(UID)</span><span style="font-family: 宋体">和连接</span><span lang="EN-US">ID(CID)</span><span style="font-family: 宋体">标识</span><span lang="EN-US">.</span></p>
<table class="MsoNormalTable" style="background: white 0% 50%; width: 432pt; border-collapse: collapse; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" width="576" border="1">
<tbody>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 75.55pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="101">
<p class="MsoNormal"><strong><span lang="EN-US">CID<o:p></o:p></span></strong></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 356.45pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="475">
<p class="MsoNormal"><strong><span style="font-family: 宋体">描述</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 75.55pt; padding-top: 0cm; height: 12pt" valign="top" width="101">
<p class="MsoNormal"><span lang="EN-US">CMIME</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 356.45pt; padding-top: 0cm; height: 12pt" valign="top" width="475">
<p class="MsoNormal"><span lang="EN-US">CMIME(compressed multi-purpose mail extensions,</span><span style="font-family: 宋体">压缩多意图邮件扩展</span><span lang="EN-US">) CID</span><span style="font-family: 宋体">定义了消息连接</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 75.55pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="101">
<p class="MsoNormal"><span lang="EN-US">ALP</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 356.45pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="475">
<p class="MsoNormal"><span lang="EN-US">ALP(address lookup protocol,</span><span style="font-family: 宋体">地址查询协议</span><span lang="EN-US">) CID</span><span style="font-family: 宋体">为无线</span><span lang="EN-US">GAL(Global Address List,</span><span style="font-family: 宋体">全局地址列表</span><span lang="EN-US">)</span><span style="font-family: 宋体">查询定义连接</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 75.55pt; padding-top: 0cm; height: 12pt" valign="top" width="101">
<p class="MsoNormal"><span lang="EN-US">IPPP</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 356.45pt; padding-top: 0cm; height: 12pt" valign="top" width="475">
<p class="MsoNormal"><span lang="EN-US">IPPP(IP Proxy Protocol)</span><span style="font-family: 宋体">使用</span><span lang="EN-US">BlackBerry&#174; MDS Services</span><span style="font-family: 宋体">定义</span><span lang="EN-US">HTTP</span><span style="font-family: 宋体">连接</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 75.55pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="101">
<p class="MsoNormal"><span lang="EN-US">BrowserConfig</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 356.45pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="475">
<p class="MsoNormal"><span lang="EN-US">BrowserConfig(</span><span style="font-family: 宋体">浏览器配置</span><span lang="EN-US">)CID</span><span style="font-family: 宋体">定义</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">和</span><span lang="EN-US">WAP</span><span style="font-family: 宋体">浏览器连接</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 75.55pt; padding-top: 0cm; height: 12pt" valign="top" width="101">
<p class="MsoNormal"><span lang="EN-US">Sync</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 356.45pt; padding-top: 0cm; height: 12pt" valign="top" width="475">
<p class="MsoNormal"><span style="font-family: 宋体">数据同步</span><span lang="EN-US">(Sync) CID</span><span style="font-family: 宋体">为无线数据同步定义连接</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 75.55pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="101">
<p class="MsoNormal"><span lang="EN-US">WAP</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 356.45pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="475">
<p class="MsoNormal"><span lang="EN-US">WAP(wireless application protocol) CID</span><span style="font-family: 宋体">定义了</span><span lang="EN-US">WAP</span><span style="font-family: 宋体">网关连接</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 75.55pt; padding-top: 0cm; height: 12pt" valign="top" width="101">
<p class="MsoNormal"><span lang="EN-US">CICAL</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 356.45pt; padding-top: 0cm; height: 12pt" valign="top" width="475">
<p class="MsoNormal"><span lang="EN-US">CICAL(compressed iCalendar,</span><span style="font-family: 宋体">压缩的</span><span lang="EN-US">iCalendar)</span><span style="font-family: 宋体">为无线日历同步定义连接</span><span lang="EN-US">.</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"><o:p>&#160;</o:p></span></p>
<table class="MsoNormalTable" style="width: 432pt; border-collapse: collapse" cellspacing="0" cellpadding="0" width="576" border="1">
<tbody>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 110pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="147">
<p class="MsoNormal"><strong><span style="font-family: 宋体">服务记录</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 322pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="429">
<p class="MsoNormal"><strong><span style="font-family: 宋体">描述</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
</tr>
<tr style="height: 22pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 110pt; padding-top: 0cm; height: 22pt" valign="top" width="147">
<p class="MsoNormal"><span lang="EN-US">Desktop [CMIME]</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 322pt; padding-top: 0cm; height: 22pt" valign="top" width="429">
<p class="MsoNormal"><span style="font-family: 宋体">此服务记录包含了使用桌面发送消息需要的信息</span><span lang="EN-US">.,</span><span style="font-family: 宋体">也包含了完成其他功能需要的消息</span><span lang="EN-US">,</span><span style="font-family: 宋体">例如无线消息调解</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 110pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="147">
<p class="MsoNormal"><span lang="EN-US">Desktop [ALP]</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 322pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="429">
<p class="MsoNormal"><span style="font-family: 宋体">此服务记录包含了完成无线</span><span lang="EN-US">GAB(Global Address Book)</span><span style="font-family: 宋体">查询所需要的信息</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 22pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 110pt; padding-top: 0cm; height: 22pt" valign="top" width="147">
<p class="MsoNormal"><span lang="EN-US">Desktop [IPPP]</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 322pt; padding-top: 0cm; height: 22pt" valign="top" width="429">
<p class="MsoNormal"><span style="font-family: 宋体">此服务记录包含了通过</span><span lang="EN-US">MDS</span><span style="font-family: 宋体">服务使用并且浏览</span><span lang="EN-US">Internet</span><span style="font-family: 宋体">所要的信息</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 110pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="147">
<p class="MsoNormal"><span lang="EN-US">Desktop [CICAL]</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 322pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="429">
<p class="MsoNormal"><span style="font-family: 宋体">此服务包含了进行无线日历操作所需要的信息</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 110pt; padding-top: 0cm; height: 12pt" valign="top" width="147">
<p class="MsoNormal"><span lang="EN-US">Desktop [BrowserConfig]</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 322pt; padding-top: 0cm; height: 12pt" valign="top" width="429">
<p class="MsoNormal"><span style="font-family: 宋体">此服务记录包含了</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">浏览器的配置信息</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 22pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 110pt; padding-top: 0cm; height: 22pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="147">
<p class="MsoNormal"><span lang="EN-US">Web Client [CMIME]</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 322pt; padding-top: 0cm; height: 22pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="429">
<p class="MsoNormal"><span style="font-family: 宋体">此服务记录包含了发送消息需要的信息</span><span lang="EN-US">.,</span><span style="font-family: 宋体">也包含了使用</span><span lang="EN-US">BlackBerry Internet Service.</span><span style="font-family: 宋体">进行其他功能</span><span lang="EN-US">(</span><span style="font-family: 宋体">例如无线消息调解</span><span lang="EN-US">)</span><span style="font-family: 宋体">所需要的消息</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 22pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 110pt; padding-top: 0cm; height: 22pt" valign="top" width="147">
<p class="MsoNormal"><span lang="EN-US">WAP Secure Transport [WAP]</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 322pt; padding-top: 0cm; height: 22pt" valign="top" width="429">
<p class="MsoNormal"><span style="font-family: 宋体">此服务记录包含了连接到服务商</span><span lang="EN-US">WAP</span><span style="font-family: 宋体">网关所需要的信息</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 110pt; padding-top: 0cm; height: 12pt" valign="top" width="147">
<p class="MsoNormal"><span lang="EN-US">WAP Browser [BrowserConfig]</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 322pt; padding-top: 0cm; height: 12pt" valign="top" width="429">
<p class="MsoNormal"><span style="font-family: 宋体">此服务记录包含了</span><span lang="EN-US">WAP</span><span style="font-family: 宋体">浏览器的配置信息</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 110pt; padding-top: 0cm; height: 12pt" valign="top" width="147">
<p class="MsoNormal"><span lang="EN-US">Desktop [Sync]</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 322pt; padding-top: 0cm; height: 12pt" valign="top" width="429">
<p class="MsoNormal"><span style="font-family: 宋体">此服务记录包含了完成数据同步所需要的信息</span><span lang="EN-US">.</span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092533"><span style="color: #333399; font-family: 宋体">监听服务定制事件</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US">GlobalEventListener</span><span style="font-family: 宋体">接口</span><span lang="EN-US">(</span><span style="font-family: 宋体">在</span><span lang="EN-US">net.rim.device.api.system </span><span style="font-family: 宋体">包里</span><span lang="EN-US">)</span><span style="font-family: 宋体">的实现使应用程序可以监听服务定制事件</span><span lang="EN-US">. </span><span style="font-family: 宋体">当接收到一个全局事件时</span><span lang="EN-US">,GlobalEventListener.eventOccurred()</span><span style="font-family: 宋体">的实现指定了进行的操作</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">为了注册一个全局事件监听者</span><span lang="EN-US">,</span><span style="font-family: 宋体">调用</span><span lang="EN-US">Application.addGlobalEventListener(GlobalEventListener).</span></p>
<p class="MsoNormal"><span lang="EN-US">ServiceBook</span><span style="font-family: 宋体">类定义了下面的事件</span><span lang="EN-US">,</span><span style="font-family: 宋体">它们由一个</span><span lang="EN-US">GUID</span><span style="font-family: 宋体">标识</span><span lang="EN-US">.</span></p>
<table class="MsoNormalTable" style="width: 432pt; border-collapse: collapse" cellspacing="0" cellpadding="0" width="576" border="1">
<tbody>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 126.65pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="169">
<p class="MsoNormal"><strong><span lang="EN-US">GUID<o:p></o:p></span></strong></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 305.35pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="407">
<p class="MsoNormal"><strong><span style="font-family: 宋体">描述</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 126.65pt; padding-top: 0cm; height: 12pt" valign="top" width="169">
<p class="MsoNormal"><span lang="EN-US">GUID_SB_ADDED</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 305.35pt; padding-top: 0cm; height: 12pt" valign="top" width="407">
<p class="MsoNormal"><span style="font-family: 宋体">当增加一个服务定制时发送的全局事件的</span><span lang="EN-US">GUID.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 126.65pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="169">
<p class="MsoNormal"><span lang="EN-US">GUID_SB_BR_END</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 305.35pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="407">
<p class="MsoNormal"><span style="font-family: 宋体">当服务定制备份或恢复结束时发送的全局事件的</span><span lang="EN-US">GUID.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 126.65pt; padding-top: 0cm; height: 12pt" valign="top" width="169">
<p class="MsoNormal"><span lang="EN-US">GUID_SB_BR_START</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 305.35pt; padding-top: 0cm; height: 12pt" valign="top" width="407">
<p class="MsoNormal"><span style="font-family: 宋体">当服务定制备份或恢复开始时发送的全局事件的</span><span lang="EN-US">GUID.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 126.65pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="169">
<p class="MsoNormal"><span lang="EN-US">GUID_SB_CHANGED</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 305.35pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="407">
<p class="MsoNormal"><span style="font-family: 宋体">当一个服务定制改变时发送的全局事件的</span><span lang="EN-US">GUID.</span></p>
</td>
</tr>
<tr style="height: 22pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 126.65pt; padding-top: 0cm; height: 22pt" valign="top" width="169">
<p class="MsoNormal"><span lang="EN-US">GUID_SB_OTA_SWITCH</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 305.35pt; padding-top: 0cm; height: 22pt" valign="top" width="407">
<p class="MsoNormal"><span style="font-family: 宋体">当所有服务记录因为一个移动的</span><span lang="EN-US">BES</span><span style="font-family: 宋体">命令</span><span lang="EN-US">OTA</span><span style="font-family: 宋体">而被插入时发送的全局事件的</span><span lang="EN-US">GUID.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 126.65pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="169">
<p class="MsoNormal"><span lang="EN-US">GUID_SB_OTA_UPDATE</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 305.35pt; padding-top: 0cm; height: 12pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="407">
<p class="MsoNormal"><span style="font-family: 宋体">当</span><span lang="EN-US">OTA</span><span style="font-family: 宋体">为一个</span><span lang="EN-US">UID</span><span style="font-family: 宋体">更新所有服务记录时发送的全局事件的</span><span lang="EN-US">GUID.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 126.65pt; padding-top: 0cm; height: 12pt" valign="top" width="169">
<p class="MsoNormal"><span lang="EN-US">GUID_SB_REMOVED</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 305.35pt; padding-top: 0cm; height: 12pt" valign="top" width="407">
<p class="MsoNormal"><span style="font-family: 宋体">当删除一个服务定制时发送的全局事件的</span><span lang="EN-US">GUID.</span></p>
</td>
</tr>
</tbody>
</table>
<p> <br />
<hr style="width: 100%; height: 2px" />Last Updated:2007年2月5日</p>
]]></content:encoded>
			<wfw:commentRss>http://www.inblackberry.com/web/development/docs/dev-guide-vol-2-access-config-of-install.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>BlackBerry 应用程序开发者指南 第二卷：高级&#8211;第9章 备份和恢复持久数据</title>
		<link>http://www.inblackberry.com/web/news/dev-guide-vol-2-backup-and-restore-data.html</link>
		<comments>http://www.inblackberry.com/web/news/dev-guide-vol-2-backup-and-restore-data.html#comments</comments>
		<pubDate>Mon, 28 Apr 2008 21:58:06 +0000</pubDate>
		<dc:creator>Taigoo</dc:creator>
		
		<category><![CDATA[新闻]]></category>

		<category><![CDATA[api]]></category>

		<category><![CDATA[backup]]></category>

		<category><![CDATA[doc]]></category>

		<category><![CDATA[restore]]></category>

		<guid isPermaLink="false">http://www.inblackberry.com/web/news/dev-guide-vol-2-backup-and-restore-data.html</guid>
		<description><![CDATA[<p class="MsoNormal" style="text-align: right" align="right">9</p>
<a name="_Toc158092521">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 第</a>9章 备份和恢复持久数据
<p> <br />




<p]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="text-align: right" align="right"><strong><span lang="EN-US" style="font-size: 36pt">9<o:p></o:p></span></strong></p>
<h1><a name="_Toc158092521"><span style="color: #333399; font-family: 宋体">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 第</span></a><span><span lang="EN-US" style="color: #333399">9</span></span><span><span style="color: #333399; font-family: 宋体">章</span></span><span><span style="color: #333399"> </span></span><span><span style="color: #333399; font-family: 宋体">备份和恢复持久数据</span></span></h1>
<p> <br />
<table class="MsoTableGrid" style="background: #d9d9d9 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="0">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">同步</span><span lang="EN-US" style="color: #333399">API<o:p></o:p></span></strong></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">增加备份持久数据的支持</span></strong></p>
</td>
</tr>
</tbody>
</table>
<h2><a name="_Toc158092522"><span style="color: #333399; font-family: 黑体">同步</span></a><span><span lang="EN-US" style="color: #333399">API</span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h2>
<p class="MsoNormal" style="margin-left: 21pt; text-indent: -21pt"><span style="font-family: 宋体">在</span><span lang="EN-US">net.rim.device.api.synchronization</span><span style="font-family: 宋体">包里的同步</span><span lang="EN-US">API</span><span style="font-family: 宋体">可以使应用程序和</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">桌面软件集成以完成</span><span lang="EN-US">2</span><span style="font-family: 宋体">个任务:</span></p>
<ul>
<li><span style="font-family: 宋体">将一个数据库备份到桌面文件</span><span lang="EN-US">,</span><span style="font-family: 宋体">以后可以恢复它</span><span lang="EN-US">.</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span> </li>
<li><span style="font-family: 宋体">和桌面应用程序同步数据</span><span lang="EN-US">.</span> </li>
</ul>
<p> <span lang="EN-US"></span><strong><span style="font-family: 宋体"><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" />注</span></strong><span lang="EN-US">::BlackBerry</span><span style="font-family: 宋体">桌面软件需要备份的数据使用下面的格式</span><span lang="EN-US">:</span>
<p class="MsoNormal" style="text-indent: 21pt"><span lang="EN-US">Length&lt;2&gt; Type&lt;1&gt; Data&lt;n&gt;</span></p>
<p class="MsoNormal" style="text-indent: 15.75pt"><span style="font-family: 宋体">为了验证数据是否有合适的格式</span><span lang="EN-US">,</span><span style="font-family: 宋体">使用</span><span lang="EN-US">net.rim.device.api.synchronization.ConverterUtilities</span><span style="font-family: 宋体">类里的任何一个写方法</span><span lang="EN-US">;</span></p>
<h3><a name="_Toc158092523"><span style="color: #333399; font-family: 宋体">数据备份</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">桌面软件提供一个</span><strong><span lang="EN-US">Backup and Restore</span></strong><span style="font-family: 宋体">工具</span><span lang="EN-US">,</span><span style="font-family: 宋体">它允许用户将</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备上的数据保存到桌面上的一个文件</span><span lang="EN-US">,</span><span style="font-family: 宋体">并且使用此桌面文件将数据恢复到</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备上</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">当一个应用程序实现了同步</span><span lang="EN-US">API,</span><span style="font-family: 宋体">桌面软件将应用程序数据库备份和恢复到其他的</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备数据库</span><span lang="EN-US">.</span><span style="font-family: 宋体">你也可以使用同步</span><span lang="EN-US">API</span><span style="font-family: 宋体">创建数据备份</span><span lang="EN-US">(archives),</span><span style="font-family: 宋体">或者当</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备第一次连接到计算机时跳出应用程序数据库</span><span lang="EN-US">.</span></p>
<h3><a name="_Toc158092524"><span style="color: #333399; font-family: 宋体">数据同步</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">桌面软件提供一个</span><strong><span lang="EN-US">Intellisync</span></strong><span style="font-family: 宋体">的工具</span><span lang="EN-US">,</span><span style="font-family: 宋体">此工具将</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备和用户计算机上的应用程序同步</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">当备份和恢复加载</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备和一个桌面备份文件之间的数据时</span><span lang="EN-US">,</span><span style="font-family: 宋体">同步比较桌面应用程序存在的数据和</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备上的数据</span><span lang="EN-US">,</span><span style="font-family: 宋体">然后合并这些数据</span><span lang="EN-US">..</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">为了和桌面应用程序进行数据同步</span><span lang="EN-US">,</span><span style="font-family: 宋体">使用</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">桌面</span><span lang="EN-US">API</span><span style="font-family: 宋体">为桌面软件编写一个插件</span><span lang="EN-US">.BlackBerry JDE</span><span style="font-family: 宋体">也包含了一个同步实例应用程序作为桌面的一个插件</span><span lang="EN-US">.</span>    <br /><v:shape id="_x0000_s1027" style="margin-top: 7.05pt; z-index: 2; left: 0px; margin-left: -9pt; width: 27pt; position: absolute; height: 26.2pt; text-align: left; mso-wrap-distance-left: 9.05pt; mso-wrap-distance-right: 9.05pt" o:allowoverlap="f" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image001.emz" o:title=""></v:imagedata><o:lock v:ext="edit" aspectratio="f"></o:lock><w:wrap type="square"></w:wrap></v:shape><span>&#160;<strong><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" />注</strong></span><span lang="EN-US">:</span><span style="font-family: 宋体">你存储数据进行备份的格式是没有限制的</span><span lang="EN-US">.</span><span style="font-family: 宋体">唯一的要求就是应用程序应该使用桌面插件应用程序使用的格式进行读写数据</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">同步</span><span lang="EN-US" style="color: #333399">API<o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">实现下面同步</span><span lang="EN-US">API</span><span style="font-family: 宋体">提供的接口</span><span lang="EN-US">:</span></p>
<table class="MsoNormalTable" style="width: 432pt; border-collapse: collapse" cellspacing="0" cellpadding="0" width="576" border="1">
<tbody>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 75.55pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="101">
<p class="MsoNormal"><strong><span style="font-family: 宋体">接口</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 356.45pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="475">
<p class="MsoNormal"><strong><span style="font-family: 宋体">描述</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
</tr>
<tr style="height: 22pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 75.55pt; padding-top: 0cm; height: 22pt" valign="top" width="101">
<p class="MsoNormal"><span lang="EN-US">SyncConverter</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 356.45pt; padding-top: 0cm; height: 22pt" valign="top" width="475">
<p class="MsoNormal"><span style="font-family: 宋体">转化</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备需要的</span><span lang="EN-US">SyncObject</span><span style="font-family: 宋体">格式和桌面需要的序列化格式之间的数据</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 75.55pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="101">
<p class="MsoNormal"><span lang="EN-US">SyncCollection</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 356.45pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="475">
<p class="MsoNormal"><span style="font-family: 宋体">代表了一个应用程序同步对象的集合</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 75.55pt; padding-top: 0cm; height: 12pt" valign="top" width="101">
<p class="MsoNormal"><span lang="EN-US">SyncObject</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 356.45pt; padding-top: 0cm; height: 12pt" valign="top" width="475">
<p class="MsoNormal"><span style="font-family: 宋体">代表了一个可以备份和恢复到用户计算机的对象</span><span lang="EN-US">.</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US">SerialSyncManager</span><span style="font-family: 宋体">类可以访问同步管理器</span><span lang="EN-US">,</span><span style="font-family: 宋体">特别的</span><span lang="EN-US">,</span><span style="font-family: 宋体">它可以为同步注册新的对象</span>    <br /><v:shape id="_x0000_s1028" style="margin-top: 7.8pt; z-index: 3; left: 0px; margin-left: -18pt; width: 27pt; position: absolute; height: 26.2pt; text-align: left; mso-wrap-distance-left: 9.05pt; mso-wrap-distance-right: 9.05pt" o:allowoverlap="f" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image001.emz" o:title=""></v:imagedata><o:lock v:ext="edit" aspectratio="f"></o:lock><w:wrap type="square"></w:wrap></v:shape><span>&#160;<strong><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" />注</strong></span><span lang="EN-US">:</span><span style="font-family: 宋体">为了备份和恢复非常少的数据</span><span lang="EN-US">,</span><span style="font-family: 宋体">例如应用程序设置选项</span><span lang="EN-US">,</span><span style="font-family: 宋体">你可以扩展</span><span lang="EN-US">SyncItem</span><span style="font-family: 宋体">类</span><span lang="EN-US">,</span><span style="font-family: 宋体">并实现它的抽象方法</span><span lang="EN-US">. SyncItem</span><span style="font-family: 宋体">类为你已经实现了</span><span lang="EN-US">SyncCollection, SyncConverter, </span><span style="font-family: 宋体">和</span><span lang="EN-US"> SyncObject</span><span style="font-family: 宋体">接口</span><span lang="EN-US">.</span></p>
<h2><a name="_Toc158092525"><span style="color: #333399; font-family: 黑体">增加备份持久数据的支持</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h2>
<p class="MsoNormal"><span style="font-family: 宋体">为了支持备份</span><span lang="EN-US">,</span><span style="font-family: 宋体">修改一个实现了</span><span lang="EN-US">Persistable</span><span style="font-family: 宋体">接口的类</span><span lang="EN-US">,</span><span style="font-family: 宋体">实现</span><span lang="EN-US">SyncObject</span><span style="font-family: 宋体">接口</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">修改应用程序的主类以实现</span><span lang="EN-US">SyncCollection</span><span style="font-family: 宋体">和</span><span lang="EN-US">SyncConverter</span><span style="font-family: 宋体">接口</span><span lang="EN-US">.</span>    <br /><v:shape id="_x0000_s1029" style="margin-top: 2.7pt; z-index: 4; left: 0px; margin-left: -9pt; width: 27pt; position: absolute; height: 26.2pt; text-align: left; mso-wrap-distance-left: 9.05pt; mso-wrap-distance-right: 9.05pt" o:allowoverlap="f" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image001.emz" o:title=""></v:imagedata><o:lock v:ext="edit" aspectratio="f"></o:lock><w:wrap type="square"></w:wrap></v:shape><span>&#160;<strong><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" />注</strong></span><span lang="EN-US">: SyncCollection</span><span style="font-family: 宋体">和</span><span lang="EN-US">SyncConverter</span><span style="font-family: 宋体">接口可以由相同的类或者由单独的类实现</span><span lang="EN-US">,</span><span style="font-family: 宋体">这决定于你的应用程序</span><span lang="EN-US">.</span><span style="font-family: 宋体">下面的章节将解释如何再相同的类里实现这些接口</span><span lang="EN-US">.</span></p>
<h3><a name="_Toc158092526"><span style="color: #333399; font-family: 宋体">定义一个唯一</span></a><span><span lang="EN-US" style="color: #333399">ID</span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">定义一个</span><span lang="EN-US">_uid</span><span style="font-family: 宋体">变量</span><span lang="EN-US">. getUID()</span><span style="font-family: 宋体">的实现为同步操作返回一个唯一</span><span lang="EN-US">ID.</span></p>
<h3><a name="_Toc158092527"><span style="color: #333399; font-family: 宋体">定义一个构造子</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">你的构造子的实现接受一个唯一</span><span lang="EN-US">ID</span><span style="font-family: 宋体">作为参数</span><span lang="EN-US">,</span><span style="font-family: 宋体">并且将之设置为</span><span lang="EN-US">_uid</span><span style="font-family: 宋体">变量的值</span><span lang="EN-US">.</span>    <br /><v:shape id="_x0000_s1030" style="margin-top: 7.8pt; z-index: 5; left: 0px; margin-left: -9pt; width: 27pt; position: absolute; height: 26.2pt; text-align: left; mso-wrap-distance-left: 9.05pt; mso-wrap-distance-right: 9.05pt" o:allowoverlap="f" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image001.emz" o:title=""></v:imagedata><o:lock v:ext="edit" aspectratio="f"></o:lock><w:wrap type="square"></w:wrap></v:shape><span>&#160;<strong><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" />注</strong></span><span lang="EN-US">:</span><span style="font-family: 宋体">每一个存储在</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备上的同步对象</span><span lang="EN-US">,</span><span style="font-family: 宋体">必须有一个关联的</span><span lang="EN-US">ID,</span><span style="font-family: 宋体">此</span><span lang="EN-US">ID</span><span style="font-family: 宋体">对于它的应用程序来说必须是唯一的</span><span lang="EN-US">. UIDGenerator</span><span style="font-family: 宋体">缺省的设置此</span><span lang="EN-US">ID</span><span style="font-family: 宋体">值</span><span lang="EN-US">.</span></p>
<h3><a name="_Toc158092528"><span style="color: #333399; font-family: 宋体">注册一个同步集合</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">在</span><span lang="EN-US">main()</span><span style="font-family: 宋体">方法里</span><span lang="EN-US">,</span><span style="font-family: 宋体">在同步管理器上注册你的</span><span lang="EN-US">SyncCollection., </span><span style="font-family: 宋体">当</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备第一次启动时</span><span lang="EN-US">,</span><span style="font-family: 宋体">创建一个独立的工程传入初始化参数</span><span lang="EN-US">.</span><span style="font-family: 宋体">为获的更多的信息</span><span lang="EN-US">,</span><span style="font-family: 宋体">参看</span><span lang="EN-US">108</span><span style="font-family: 宋体">页的</span><span lang="EN-US">&#8221;</span><span style="font-family: 宋体">当</span><span lang="EN-US">BlackBery</span><span style="font-family: 宋体">设备启动时注册一个同步集合</span><span lang="EN-US">&#8221;.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> main(String[] args) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">boolean</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> startup = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">false</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">for</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> i=0; i&lt;args.length; ++i) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (args[i].startsWith(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;init&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">)) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>startup = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">true</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (startup) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">//enable application for synchronization on startup</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>SerialSyncManager.getInstance().enableSynchronization(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantsSync());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">else</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>RestaurantsSync app = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantsSync();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>app.enterEventDispatcher();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092529"><span style="color: #333399; font-family: 宋体">当</span></a><span><span lang="EN-US" style="color: #333399">BlackBery</span></span><span><span style="color: #333399; font-family: 宋体">设备启动时注册一个同步集合</span></span><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">当</span><span lang="EN-US">BlackBery</span><span style="font-family: 宋体">设备启动时</span><span lang="EN-US">,</span><span style="font-family: 宋体">为了注册一个同步集合</span><span lang="EN-US">, </span><span style="font-family: 宋体">为你的主要应用程序创建一个独立的工程来完成一个可选的入口</span><span lang="EN-US">.</span><span style="font-family: 宋体">在</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">第一次启动时</span><span lang="EN-US">,</span><span style="font-family: 宋体">此工程传递一个参数到你的应用程序中</span><span lang="EN-US">,</span><span style="font-family: 宋体">这样你的应用程序仅注册一次</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">创建一个初始化工程</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span lang="EN-US">1.</span><span style="font-family: 宋体">在</span><span lang="EN-US">BlackBerry IDE</span><span style="font-family: 宋体">里</span><span lang="EN-US">,</span><span style="font-family: 宋体">创建一个工程</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US">2.</span><span style="font-family: 宋体">右击工程</span><span lang="EN-US">,</span><span style="font-family: 宋体">点击</span><strong><span lang="EN-US">Properties</span></strong></p>
<p class="MsoNormal"><span lang="EN-US">3.</span><span style="font-family: 宋体">单击</span><strong><span lang="EN-US">Application</span></strong><span style="font-family: 宋体">标签</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US">4.</span><span style="font-family: 宋体">在</span><strong><span lang="EN-US">Project type</span></strong><span lang="EN-US"> </span><span style="font-family: 宋体">下拉列里</span><span lang="EN-US">, </span><span style="font-family: 宋体">点击</span><strong><span lang="EN-US">Alternate CLDC Application Entry Point</span></strong><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US">5.</span><span style="font-family: 宋体">在</span><strong><span lang="EN-US">Alternate entry point fo</span></strong><span lang="EN-US">r</span><span style="font-family: 宋体">的下拉列里</span><span lang="EN-US">, </span><span style="font-family: 宋体">单击实现同步的工程</span><span lang="EN-US">. </span><span style="font-family: 宋体">在</span><strong><span lang="EN-US">Arguments passed to</span></strong><span lang="EN-US"> </span><span style="font-family: 宋体">域</span><span lang="EN-US">, </span><span style="font-family: 宋体">输入</span><span lang="EN-US"> init.</span></p>
<p class="MsoNormal"><span lang="EN-US">7.</span><span style="font-family: 宋体">选择</span><strong><span lang="EN-US">Auto-run on startup</span></strong><span style="font-family: 宋体">选项</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US">8.</span><span style="font-family: 宋体">选择</span><strong><span lang="EN-US">System module</span></strong><span lang="EN-US"> </span><span style="font-family: 宋体">选项</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US">9.</span><span style="font-family: 宋体">单击</span><strong><span lang="EN-US">OK</span></strong><span lang="EN-US">.</span>    <br /><v:shape id="_x0000_s1031" style="margin-top: 5.2pt; z-index: 6; left: 0px; margin-left: -9pt; width: 27pt; position: absolute; height: 26.2pt; text-align: left; mso-wrap-distance-left: 9.05pt; mso-wrap-distance-right: 9.05pt" o:allowoverlap="f" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image001.emz" o:title=""></v:imagedata><o:lock v:ext="edit" aspectratio="f"></o:lock><w:wrap type="square"></w:wrap></v:shape><strong><span style="font-family: 宋体"><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" /></span></strong><strong><span style="font-family: 宋体">注</span></strong><span lang="EN-US">:</span><span style="font-family: 宋体">在启动时</span><span lang="EN-US">,</span><span style="font-family: 宋体">可以将参数传入</span><span lang="EN-US">BlackBerry CLDC</span><span style="font-family: 宋体">的应用程序里</span><span lang="EN-US">.</span><span style="font-family: 宋体">尽管这样</span><span lang="EN-US">,</span><span style="font-family: 宋体">此功能在</span><span lang="EN-US">MIDlet</span><span style="font-family: 宋体">应用程序里不会存在</span><span lang="EN-US">.</span></p>
<h3><a name="_Toc158092530"><span style="color: #333399; font-family: 宋体">代码实例</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">此代码实例描述如何使桌面软件为你的应用程序备份和恢复持久数据</span><span lang="EN-US">.</span><span style="font-family: 宋体">此实例修改了</span><span lang="EN-US">Restaurants.java</span><span style="font-family: 宋体">的代码</span><span lang="EN-US">,</span><span style="font-family: 宋体">用来实现同步</span><span lang="EN-US">API.</span></p>
<p class="MsoNormal"><span lang="EN-US"></span><span style="font-family: 宋体"></span></p>
<hr style="width: 100%; height: 2px" />
<p class="MsoNormal"><span style="font-family: 宋体"><a></a>例</span>: RestaurantsSync.java<o:p></o:p></p>
<p> <strong><span lang="EN-US"></span></strong>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">/**</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">*</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">RestaurantsSync.java</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">*</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Copyright</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">(C)</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">2001</span><span lang="EN-US" style="font-size: 10pt; color: #7f7f9f; font-family: &#39;courier new&#39;">-</span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">2005</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Research</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">In</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Motion</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Limited.</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">All</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">rights</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">reserved.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">*/</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">package</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> com.rim.samples.docs.restaurantssync;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> java.io.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.ui.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.ui.component.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.ui.container.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.system.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.util.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> java.util.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.i18n.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.synchronization.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> com.rim.samples.docs.resource.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> com.rim.samples.docs.baseapp.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantsSync </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">extends</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> BaseApp </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">implements</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantsSyncResource,SyncCollection, SyncConverter,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>KeyListener, TrackwheelListener {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">KEY</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 0xdec6a67096f833cL;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> AutoTextEditField namefield;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> AutoTextEditField addressfield;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> EditField phonefield;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> EditField specialtyfield;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> PersistentObject store;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Vector </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_data</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ResourceBundle </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">FIELDTAG_NAME</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 1;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">FIELDTAG_PHONE</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 2;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">FIELDTAG_ADDRESS</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 3;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">FIELDTAG_SPECIALTY</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 4;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantsSync </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_instance</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem saveItem = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, MenuItem.SAVE_CLOSE, 110, 10) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> run() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>RestaurantInfo info = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantInfo();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>info.setElement(RestaurantInfo.NAME, namefield.getText());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>info.setElement(RestaurantInfo.ADDRESS, addressfield.getText());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>info.setElement(RestaurantInfo.PHONE, phonefield.getText());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>info.setElement(RestaurantInfo.SPECIALTY, specialtyfield.getText());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>_data.addElement(info);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">synchronized</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(store) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>store.setContents(_data);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>store.commit();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Dialog.inform(_resources.getString(APP_SUCCESS));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>namefield.setText(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>adressfield.setText(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>phonefield.setText(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>specialtyfield.setText(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>};</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem getItem = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Get&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, 110, 11) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> run() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">synchronized</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(store) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>_data = (Vector)store.getContents();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (!_data.isEmpty()) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>RestaurantInfo info = (RestaurantInfo)_data.lastElement();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>namefield.setText(info.getElement(RestaurantInfo.NAME));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>addressfield.setText(info.getElement(RestaurantInfo.ADDRESS));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>phonefield.setText(info.getElement(RestaurantInfo.PHONE));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>specialtyfield.setText(info.getElement(</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>RestaurantInfo.SPECIALTY));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160; </span>};</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = ResourceBundle.<em>getBundle</em>(RestaurantsSyncResource.BUNDLE_ID,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>RestaurantsSyncResource.BUNDLE_NAME);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>store = PersistentStore.getPersistentObject(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">KEY</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">synchronized</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (store) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>_data = (Vector)store.getContents();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ( _data == </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ) </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>data = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Vector();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>store.setContents( _data );</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>store.commit();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> main(String[] args) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">boolean</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> startup = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">false</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">for</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> i=0; i&lt;args.</span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">length</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">; ++i) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (args[i].startsWith(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;init&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">)) </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>startup = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">true</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (startup) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Enable application for synchronization on startup.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>SyncManager.getInstance().enableSynchronization(</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>RestaurantsSync.<em>getInstance</em>());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">else</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>RestaurantsSync app = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantsSync();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>app.enterEventDispatcher();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantsSync getInstance() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_instance</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> == </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_instance</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantsSync();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_instance</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantInfo </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">implements</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Persistable, SyncObject {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String[] </span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_elements</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">; </span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Data.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">NAME</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 0;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">ADDRESS</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 1;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">PHONE</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 2;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">SPECIALTY</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 3;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_uid</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> getUID() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_uid</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantInfo() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_elements</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String[4];</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">for</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ( </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> i = 0; i &lt; </span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_elements</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.</span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">length</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">; ++i) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_elements</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[i] = </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantInfo(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> uid) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_elements</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String[4];</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">for</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> i = 0; i &lt; </span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_elements</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.</span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">length</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">; ++i) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_elements</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[i] = </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_uid</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = uid;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String getElement(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> id) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_elements</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[id];</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> setElement(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> id, String value) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_elements</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[id] = value;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// SyncConverter methods.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> SyncObject convert(DataBuffer data, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> version, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> UID) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">try</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>RestaurantInfo info = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantInfo(UID);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">while</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(data.available() &gt; 0) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> length = data.readShort();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">byte</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[] bytes = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">byte</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[length];</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">switch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (data.readByte()) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">FIELDTAG_NAME</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>data.readFully(bytes);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">//trim null-terminator</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>info.setElement(RestaurantInfo.</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">NAME</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String(bytes).trim());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">FIELDTAG_PHONE</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>data.readFully(bytes);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>info.setElement(RestaurantInfo.</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">PHONE</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String(bytes).trim());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">FIELDTAG_ADDRESS</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>data.readFully(bytes);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>info.setElement(RestaurantInfo.</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">ADDRESS</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String(bytes).trim());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">FIELDTAG_SPECIALTY</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>data.readFully(bytes);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>info.setElement(RestaurantInfo.</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">SPECIALTY</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String(bytes).trim());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">default</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>data.readFully(bytes);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> info;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">catch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (EOFException e) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>System.</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">err</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.println(e.toString());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">boolean</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> convert(SyncObject object, DataBuffer buffer, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> version) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (version == getSyncVersion()) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (object </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">instanceof</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantInfo )</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>String name = ((RestaurantInfo)object).getElement(</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>RestaurantInfo.</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">NAME</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>String phone = ((RestaurantInfo)object).getElement(</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>RestaurantInfo.</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">PHONE</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>String address = ((RestaurantInfo)object).getElement(</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>RestaurantInfo.</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">ADDRESS</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>String specialty = ((RestaurantInfo)object).getElement(</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>RestaurantInfo.</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">SPECIALTY</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>buffer.writeShort(name.length()+1);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>buffer.writeByte(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">FIELDTAG_NAME</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>buffer.write(name.getBytes());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>buffer.writeByte(0);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>buffer.writeShort(phone.length()+1);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>buffer.writeByte(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">FIELDTAG_PHONE</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>buffer.write(phone.getBytes());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>buffer.writeByte(0);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>buffer.writeShort(address.length()+1);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>buffer.writeByte(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">FIELDTAG_ADDRESS</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>buffer.write(address.getBytes());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>buffer.writeByte(0);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>buffer.writeShort(specialty.length()+1);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160; </span>buffer.writeByte(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">FIELDTAG_SPECIALTY</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>buffer.write(specialty.getBytes());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>buffer.writeByte(0);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">true</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">false</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> beginTransaction() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>store = PersistentStore.getPersistentObject(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">KEY</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_data</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = (Vector)store.getContents();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> endTransaction() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>store.setContents(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_data</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>store.commit();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> SyncConverter getSyncConverter() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">this</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String getSyncName() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Restaurant Synchronization Demo&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String getSyncName(Locale locale) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> getSyncName();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> getSyncObjectCount() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>store = PersistentStore.getPersistentObject(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">KEY</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_data</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = (Vector)store.getContents();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_data</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.size();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> SyncObject[] getSyncObjects() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>SyncObject[] array = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> SyncObject[</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_data</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.size()];</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">for</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> i = </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_data</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.size() - 1; i &gt;= 0; &#8211;i) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>array[i] = (SyncObject)</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_data</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.elementAt(i);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> array;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> SyncObject getSyncObject(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> uid) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">for</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> i = </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_data</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.size() -1; i&gt;= 0; &#8211;i) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>SyncObject so = (SyncObject)</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_data</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.elementAt(i);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (so.getUID() == uid ) </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> so;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> getSyncVersion() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> 1;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">boolean</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> addSyncObject(SyncObject object) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_data</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.addElement(object);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">true</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">boolean</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> removeAllSyncObjects() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_data</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.removeAllElements();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">true</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> clearSyncObjectDirty(SyncObject object) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Not applicable.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">boolean</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> isSyncObjectDirty(SyncObject object) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">false</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">boolean</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> removeSyncObject(SyncObject object) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">false</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> setSyncObjectDirty(SyncObject object) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">boolean</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> updateSyncObject(SyncObject oldObject, SyncObject newObject) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">false</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantsSync() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>MainScreen mainScreen = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MainScreen();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.setTitle(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> LabelField( </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(APPLICATION_TITLE)));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>namefield = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> AutoTextEditField(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(FIELD_NAME), </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>addressfield = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> AutoTextEditField( </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(FIELD_ADDRESS),</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>phonefield = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> EditField( </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(FIELD_PHONE), </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Integer.</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">MAX_VALUE</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, BasicEditField.FILTER_PHONE);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>specialtyfield = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> EditField(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(FIELD_SPECIALTY), </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Integer.</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">MAX_VALUE</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, BasicEditField.FILTER_DEFAULT);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.add(namefield);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.add(addressfield);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.add(phonefield);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.add(specialtyfield);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.addKeyListener(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">this</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.addTrackwheelListener(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">this</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>pushScreen(mainScreen);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> makeMenu( Menu menu, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> instance) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>menu.add(saveItem);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>menu.add(getItem);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">super</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.makeMenu(menu, instance);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><u><span lang="EN-US" style="font-size: 10pt; color: blue; font-family: &#39;courier new&#39;">onExit</span></u><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Dialog.alert(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(APP_EXIT));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p> <span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}    <br /></span><br />
<hr style="width: 100%; height: 2px" />Last Updated:2007年2月2日<span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">   <br /></span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.inblackberry.com/web/news/dev-guide-vol-2-backup-and-restore-data.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>BlackBerry 应用程序开发者指南 第二卷：高级&#8211;第8章 存储持久数据</title>
		<link>http://www.inblackberry.com/web/development/docs/dev-guide-vol-2-persitent-stored-data.html</link>
		<comments>http://www.inblackberry.com/web/development/docs/dev-guide-vol-2-persitent-stored-data.html#comments</comments>
		<pubDate>Mon, 28 Apr 2008 21:54:00 +0000</pubDate>
		<dc:creator>Taigoo</dc:creator>
		
		<category><![CDATA[文档]]></category>

		<category><![CDATA[api]]></category>

		<category><![CDATA[doc]]></category>

		<category><![CDATA[store]]></category>

		<guid isPermaLink="false">http://www.inblackberry.com/web/development/docs/dev-guide-vol-2-persitent-stored-data.html</guid>
		<description><![CDATA[<p class="MsoNormal" style="text-align: right" align="right">8</p>
<a name="_Toc158092501">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 第</a>8章 存储持久数据
<p> <br />




<p]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="text-align: right" align="right"><strong><span lang="EN-US" style="font-size: 36pt">8<o:p></o:p></span></strong></p>
<h1><a name="_Toc158092501"><span style="color: #333399; font-family: 宋体">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 第</span></a><span><span lang="EN-US" style="color: #333399">8</span></span><span><span style="color: #333399; font-family: 宋体">章</span></span><span><span style="color: #333399"> </span></span><span><span style="color: #333399; font-family: 宋体">存储持久数据</span></span></h1>
<p> <br />
<table class="MsoTableGrid" style="background: #d9d9d9 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="0">
<tbody>
<tr style="height: 53.85pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm; height: 53.85pt" valign="top" width="568">
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">持久数据选项</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">管理持久数据</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">内存管理以及持久对象</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">管理客户对象</span></strong></p>
</td>
</tr>
</tbody>
</table>
<h2><a name="_Toc158092502"><span style="color: #333399; font-family: 黑体">持久数据选项</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h2>
<p class="MsoNormal" style="margin-left: 21pt; text-indent: -21pt"><span style="font-family: 宋体">在</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备上，以下面的方式可以存储数据</span><span lang="EN-US">:</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span></p>
<ul>
<li><span style="font-family: 宋体">使用</span><span lang="EN-US">MIDP</span><span style="font-family: 宋体">记录存储</span><span lang="EN-US">.</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span> </li>
<li><span style="font-family: 宋体">使用</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">持久存储模型</span><span lang="EN-US">. </span></li>
</ul>
<p class="MsoNormal"><span style="font-family: 宋体">如果你想让你的应用程序可以在多个与</span><span lang="EN-US">Java ME</span><span style="font-family: 宋体">兼容的设备上运行</span><span lang="EN-US">,</span><span style="font-family: 宋体">那么采用</span><span lang="EN-US">MIDP</span><span style="font-family: 宋体">的实现</span><span lang="EN-US">.</span><span style="font-family: 宋体">如果你编写应用程序仅仅为</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备</span><span lang="EN-US">,</span><span style="font-family: 宋体">使用</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">持久存储模型</span><span lang="EN-US">,</span><span style="font-family: 宋体">因为它提供了一个更为灵活有效的方式存储数据</span><span lang="EN-US">,</span></p>
<h3><a name="_Toc158092503"><span lang="EN-US" style="color: #333399">MIDP</span></a><span><span style="color: #333399; font-family: 宋体">存储记录</span></span><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US">javax.microedition.rms</span><span style="font-family: 宋体">包提供了</span><span lang="EN-US">MIDP</span><span style="font-family: 宋体">记录存储的实现</span><span lang="EN-US">.</span><span style="font-family: 宋体">持久数据存储在</span><span lang="EN-US">RecordStore</span><span style="font-family: 宋体">对象里</span><span lang="EN-US">.</span><span style="font-family: 宋体">一个记录存储最大可以为</span><span lang="EN-US">64KB.</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">数据的离散单元称为记录</span><span lang="EN-US">.</span><span style="font-family: 宋体">一个记录是一个字节数组</span><span lang="EN-US">,</span><span style="font-family: 宋体">赋给它一个唯一标志数</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">创建一个记录存储</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">调用</span><span lang="EN-US">openRecordStore().</span><span style="font-family: 宋体">指定</span><span lang="EN-US">true</span><span style="font-family: 宋体">来描述当记录存储不存在时应该创建此记录存储</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">RecordStore store = RecordStore.openRecordStore(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Contacts&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">true</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><strong><span style="font-family: 宋体"><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" />注</span></strong><span lang="EN-US">:</span><span style="font-family: 宋体">当从</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备删除一个应用程序时</span><span lang="EN-US">,</span><span style="font-family: 宋体">所有此应用程序创建的记录存储都会删除</span><span lang="EN-US">.</span><span style="font-family: 宋体">每个在</span><span lang="EN-US">MIDlet</span><span style="font-family: 宋体">包</span><span lang="EN-US">(suite)</span><span style="font-family: 宋体">的记录存储都有一个唯一名</span><span lang="EN-US">.MIDlet</span><span style="font-family: 宋体">仅可以访问一个在相同包里的由</span><span lang="EN-US">MIDlet</span><span style="font-family: 宋体">创建的记录存储</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">增加一个记录</span><span lang="EN-US" style="color: #333399"> <o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">调用</span><span lang="EN-US">addRecord().</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> id = store.addRecord(_data.getBytes(), 0, data.length());</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">获取一个记录</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">调用</span><span lang="EN-US">getRecord(int, byte[], int).</span><span style="font-family: 宋体">给本方法提供一个记录</span><span lang="EN-US">ID,</span><span style="font-family: 宋体">字节数组</span><span lang="EN-US">,</span><span style="font-family: 宋体">以及一个偏移作为参数</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">byte</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[] data = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">byte</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[store.getRecordSize(id)];</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">store.getRecord(id, data, 0);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">String dataString = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String(data);</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">获取所有记录</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">打开存储</span><span lang="EN-US">,</span><span style="font-family: 宋体">然后获取其迭代</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; margin-left: 10.5pt; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">RecordStore store = RecordStore.openRecordStore(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Contacts&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">false</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">RecordEnumeration e = store.enumerateRecords(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">false</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><strong><em><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;">enumerateRecords(RecordFilter filter, RecordComparator comparator, Boolean keepUpdated)</span></em></strong><span lang="EN-US"> </span><span style="font-family: 宋体">方法有如下参数</span><span lang="EN-US">:</span></p>
<table class="MsoNormalTable" style="width: 437.4pt; border-collapse: collapse" cellspacing="0" cellpadding="0" width="583" border="1">
<tbody>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 86pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="115">
<p class="MsoNormal"><strong><span style="font-family: 宋体">参数</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 351.4pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="469">
<p class="MsoNormal"><strong><span style="font-family: 宋体">描述</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
</tr>
<tr style="height: 22pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 86pt; padding-top: 0cm; height: 22pt" valign="top" width="115">
<p class="MsoNormal"><span lang="EN-US">filter</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 351.4pt; padding-top: 0cm; height: 22pt" valign="top" width="469">
<p class="MsoNormal"><span style="font-family: 宋体">此参数指定一个</span><span lang="EN-US">RecordFilter</span><span style="font-family: 宋体">对象获取记录存储结果的子集</span><span lang="EN-US">(</span><span style="font-family: 宋体">如果为</span><span lang="EN-US">null,</span><span style="font-family: 宋体">将返回所有记录存储</span><span lang="EN-US">).</span></p>
</td>
</tr>
<tr style="height: 22pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 86pt; padding-top: 0cm; height: 22pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="115">
<p class="MsoNormal"><span lang="EN-US">comparator</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 351.4pt; padding-top: 0cm; height: 22pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="469">
<p class="MsoNormal"><span style="font-family: 宋体">此参数指定一个</span><span lang="EN-US">RecordComparator</span><span style="font-family: 宋体">对象决定返回记录所在的顺序位置</span><span lang="EN-US">(</span><span style="font-family: 宋体">如果为</span><span lang="EN-US">null.</span><span style="font-family: 宋体">将返回无序的记录</span><span lang="EN-US">).</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 86pt; padding-top: 0cm; height: 12pt" valign="top" width="115">
<p class="MsoNormal"><span lang="EN-US">keepUpdated</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 351.4pt; padding-top: 0cm; height: 12pt" valign="top" width="469">
<p class="MsoNormal"><span style="font-family: 宋体">此参数决定对于记录存储</span><span lang="EN-US">,</span><span style="font-family: 宋体">迭代保持当前的改变</span><span lang="EN-US">.</span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092504"><span lang="EN-US" style="color: #333399">BlackBerry</span></a><span><span style="color: #333399; font-family: 宋体">持久存储</span></span><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">在</span><span lang="EN-US">MIDP</span><span style="font-family: 宋体">中的记录存储</span><span lang="EN-US">(RecordStore)</span><span style="font-family: 宋体">与</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">持久模型</span><span lang="EN-US">(PersistentStore)</span><span style="font-family: 宋体">有</span><span lang="EN-US">2</span><span style="font-family: 宋体">处主要的区别</span><span lang="EN-US">.</span></p>
<table class="MsoNormalTable" style="width: 432pt; border-collapse: collapse" cellspacing="0" cellpadding="0" width="576" border="1">
<tbody>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 62pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="83">
<p class="MsoNormal"><strong><span style="font-family: 宋体">特性</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 370pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="493">
<p class="MsoNormal"><strong><span style="font-family: 宋体">描述</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
</tr>
<tr style="height: 33pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 62pt; padding-top: 0cm; height: 33pt" valign="top" width="83">
<p class="MsoNormal"><span style="font-family: 宋体">数据存储</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 370pt; padding-top: 0cm; height: 33pt" valign="top" width="493">
<p class="MsoNormal"><span lang="EN-US">MIDP</span><span style="font-family: 宋体">记录仅以字节数组存储数据</span><span lang="EN-US">.</span><span style="font-family: 宋体">相比之下</span><span lang="EN-US">,BlackBerry API</span><span style="font-family: 宋体">允许你在持久存储中保存任何对象</span><span lang="EN-US">.</span><span style="font-family: 宋体">这样</span><span lang="EN-US">,</span><span style="font-family: 宋体">查询存储数据就会比记录模型更快一些</span><span lang="EN-US">.</span><span style="font-family: 宋体">为了存储一个自定义的对象类型</span><span lang="EN-US">,</span><span style="font-family: 宋体">自定义类型的类必须要实现</span><span lang="EN-US">Persistable</span><span style="font-family: 宋体">接口</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr style="height: 42pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 62pt; padding-top: 0cm; height: 42pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="83">
<p class="MsoNormal"><span style="font-family: 宋体">数据共享</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 370pt; padding-top: 0cm; height: 42pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="493">
<p class="MsoNormal"><span style="font-family: 宋体">在</span><span lang="EN-US">MIDP</span><span style="font-family: 宋体">中</span><span lang="EN-US">,</span><span style="font-family: 宋体">每个</span><span lang="EN-US">RecordStore</span><span style="font-family: 宋体">属于单个</span><span lang="EN-US">MIDlet</span><span style="font-family: 宋体">包</span><span lang="EN-US">,</span><span style="font-family: 宋体">并且</span><span lang="EN-US">MIDlet</span><span style="font-family: 宋体">也只能访问由相同包的</span><span lang="EN-US">MIDlet</span><span style="font-family: 宋体">创建的记录存储</span><span lang="EN-US">.</span><span style="font-family: 宋体">尽管如此</span><span lang="EN-US">,</span><span style="font-family: 宋体">在</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">持久模型中</span><span lang="EN-US">,</span><span style="font-family: 宋体">数据可以在应用程序之间共享</span><span lang="EN-US">,</span><span style="font-family: 宋体">在创建数据的离散应用程序中共享</span><span lang="EN-US">.</span><span style="font-family: 宋体">代码签名指定只有被认证的应用程序才可以访问这些数据</span><span lang="EN-US">.</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><strong><span style="font-family: 宋体"><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" />注</span></strong><span lang="EN-US">:BlackBerry</span><span style="font-family: 宋体">持久性</span><span lang="EN-US">API</span><span style="font-family: 宋体">在手持设备软件</span><span lang="EN-US">3.6</span><span style="font-family: 宋体">或后期版本可用</span><span lang="EN-US">.</span><span style="font-family: 宋体">对于早期的版本</span><span lang="EN-US">,</span><span style="font-family: 宋体">你必须使用</span><span lang="EN-US">MIDP</span><span style="font-family: 宋体">记录存储</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">保留存储空间</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">的存储空间是有限的</span><span lang="EN-US">.</span><span style="font-family: 宋体">你应该小心设计你的程序</span><span lang="EN-US">,</span><span style="font-family: 宋体">将需要存储持久数据的闪存数量最小化</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">在一般的</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">里</span><span lang="EN-US">,</span><span style="font-family: 宋体">对于一个标准的</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">应用程序</span><span lang="EN-US">,</span><span style="font-family: 宋体">不需要的存储空间必须在所有应用程序之间共享</span><span lang="EN-US">,</span><span style="font-family: 宋体">用来存储用户数据</span><span lang="EN-US">,</span><span style="font-family: 宋体">包含日历约会</span><span lang="EN-US">,</span><span style="font-family: 宋体">联系人</span><span lang="EN-US">,</span><span style="font-family: 宋体">以及消息</span><span lang="EN-US">.</span></p>
<p class="MsoNormal" style="margin-left: 21pt; text-indent: -21pt"><span style="font-family: 宋体">如果</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备在一个小内存情况下操作</span><span lang="EN-US">,</span><span style="font-family: 宋体">它有可能完成下面的动作释放内存空间</span><span lang="EN-US">:</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span></p>
<ul>
<li><span style="font-family: 宋体">从</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">上删除以前的消息</span><span lang="EN-US">.</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span> </li>
<li><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal">&#160;</span></span></span><span style="font-family: 宋体">从</span><span lang="EN-US">BlackBerry </span><span style="font-family: 宋体">设备上删除超过一个星期的日历约会</span><span lang="EN-US">(</span><span style="font-family: 宋体">如果启动了无线日历同步</span><span lang="EN-US">).</span> </li>
</ul>
<p class="MsoNormal"><span style="font-family: 宋体">如果因低内存而</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备删除了消息或者日历约会</span><span lang="EN-US">,</span><span style="font-family: 宋体">那么在桌面消息程不会删除数据</span><span lang="EN-US">.</span><span style="font-family: 宋体">为获的更多信息</span><span lang="EN-US">,</span><span style="font-family: 宋体">参看</span><span lang="EN-US">96</span><span style="font-family: 宋体">页的</span><em><span lang="EN-US">&#8221;</span></em><em><span style="font-family: 宋体">内存管理以及持久对象</span></em><span lang="EN-US">&#8221;.</span></p>
<p class="MsoNormal"><v:shape id="_x0000_s1028" style="margin-top: 4.7pt; z-index: 3; left: 0px; margin-left: -9pt; width: 27pt; position: absolute; height: 26.2pt; text-align: left; mso-wrap-distance-left: 9.05pt; mso-wrap-distance-right: 9.05pt" o:allowoverlap="f" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image001.emz" o:title=""></v:imagedata><o:lock v:ext="edit" aspectratio="f"></o:lock><w:wrap type="square"></w:wrap></v:shape><span>&#160;&#160; <strong><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" />注</strong>:</span><span style="font-family: 宋体">用户点击设备选项的</span><span lang="EN-US">Status</span><span style="font-family: 宋体">可以查看当前可用的数据空间</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">备份与恢复</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">在</span><span lang="EN-US">net.rim.device.api.synchronization</span><span style="font-family: 宋体">包中</span><span lang="EN-US">,</span><span style="font-family: 宋体">同步</span><span lang="EN-US">(synchronization)API</span><span style="font-family: 宋体">允许你备份以及恢复</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备上的持久数据</span><span lang="EN-US">.</span><span style="font-family: 宋体">为获取更多信息</span><span lang="EN-US">,</span><span style="font-family: 宋体">参看</span><span lang="EN-US">104</span><span style="font-family: 宋体">页的</span><span lang="EN-US">&#8221;</span><span style="font-family: 宋体">增加支持备份持久数据</span><span lang="EN-US">&#8221;.</span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">安全</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">缺省的</span><span lang="EN-US">,BlackBerry</span><span style="font-family: 宋体">上由</span><span lang="EN-US">RIM</span><span style="font-family: 宋体">数字签名的应用程序可以访问持久存储上的数据</span><span lang="EN-US">,</span><span style="font-family: 宋体">联系</span><span lang="EN-US">RIM</span><span style="font-family: 宋体">获取关于控制数据访问的信息</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">管理工具</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">在</span><span lang="EN-US">BES 3.5 Microsoft&#174; Exchange SP2</span><span style="font-family: 宋体">或</span><span lang="EN-US"> BES 2.2 M&#174; Lotus&#174; Domino&#174;</span><span style="font-family: 宋体">里</span><span lang="EN-US">,</span><span style="font-family: 宋体">系统管理员可以使用</span><span lang="EN-US">IT</span><span style="font-family: 宋体">策略控制第三方应用程序访问持久存储</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">管理员可以设置应用程序控制项</span><span lang="EN-US">ALLOW_USE_PERSISTENT_STORE</span><span style="font-family: 宋体">为</span><span lang="EN-US">TRUE</span><span style="font-family: 宋体">或</span><span lang="EN-US">FALSE.</span><span style="font-family: 宋体">缺省的</span><span lang="EN-US">,</span><span style="font-family: 宋体">第三方应用程序可以使用持久存储</span><span lang="EN-US">(ALLOW_USE_PERSISTENT_STORE</span><span style="font-family: 宋体">为</span><span lang="EN-US">TRUE)</span></p>
<p class="MsoNormal"><strong><span style="font-family: 宋体"><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" />注</span></strong><span lang="EN-US">:</span><span style="font-family: 宋体">这个策略对</span><span lang="EN-US">MIDP</span><span style="font-family: 宋体">记录存储没有影响</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">数据完整性</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><v:shape id="_x0000_s1029" style="margin-top: 15.6pt; z-index: 4; left: 0px; margin-left: 0px; width: 27pt; position: absolute; height: 26.2pt; text-align: left; mso-wrap-distance-left: 9.05pt; mso-wrap-distance-right: 9.05pt" o:allowoverlap="f" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image001.emz" o:title=""></v:imagedata><o:lock v:ext="edit" aspectratio="f"></o:lock><w:wrap type="square"></w:wrap></v:shape><span style="font-family: 宋体">为了维护持久存储数据的完整性</span><span lang="EN-US">,</span><span style="font-family: 宋体">如果在提交时发生一个错误</span><span lang="EN-US">,</span><span style="font-family: 宋体">不会更新局部</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US"></span><strong><span style="font-family: 宋体"><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" />注</span></strong><span lang="EN-US">:</span><span style="font-family: 宋体">因低内存</span><span lang="EN-US">VM</span><span style="font-family: 宋体">完成一个紧要的垃圾回收时</span><span lang="EN-US">,</span><span style="font-family: 宋体">数据完整性会折中</span><span lang="EN-US">.</span><span style="font-family: 宋体">在这样的情况下</span><span lang="EN-US">,</span><span style="font-family: 宋体">当</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备提交时</span><span lang="EN-US">,</span><span style="font-family: 宋体">部分完成的事务会提交</span><span lang="EN-US">.</span><span style="font-family: 宋体">在正常垃圾回收下未提交的事务不会提交</span><span lang="EN-US">.</span></p>
<h2><a name="_Toc158092505"><span style="color: #333399; font-family: 黑体">管理持久数据</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h2>
<h3><a name="_Toc158092506"><span style="color: #333399; font-family: 宋体">持久数据类型</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal" style="margin-left: 21pt; text-indent: -21pt"><span style="font-family: 宋体">如果一个自定义数据类型类实现了</span><span lang="EN-US">Persistable</span><span style="font-family: 宋体">类接口</span><span lang="EN-US">,</span><span style="font-family: 宋体">那么此数据类型可以持久保存</span><span lang="EN-US">.</span><span style="font-family: 宋体">小面原生数据类型也可以持久存储</span><span lang="EN-US">.</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal">         <br /></span></span></span></p>
<ul>
<li><span lang="EN-US">java.lang.Boolean</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span> </li>
<li><span lang="EN-US">java.lang.Byte</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span> </li>
<li><span lang="EN-US">java.lang.Character</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span> </li>
<li><span lang="EN-US">java.lang.Integer</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span> </li>
<li><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal">&#160;</span></span></span><span lang="EN-US">java.lang.Long</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span> </li>
<li><span lang="EN-US">java.lang.Object</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span> </li>
<li><span lang="EN-US">java.lang.Short</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span> </li>
<li><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span><span lang="EN-US">java.lang.String</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span> </li>
<li><span lang="EN-US">java.util.Vector</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span> </li>
<li><span lang="EN-US">java.util.Hashtable</span> </li>
</ul>
<p> <span lang="EN-US"></span><strong><span lang="EN-US"><v:shape id="_x0000_i1026" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image003.emz" o:title=""></v:imagedata></v:shape></span></strong><strong><span style="font-family: 宋体"><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" />注</span></strong><span lang="EN-US">:</span><span style="font-family: 宋体">当你持久化一个对象时</span><span lang="EN-US">,</span><span style="font-family: 宋体">此对象引用的任何对象也可以持久化</span><span lang="EN-US">.</span><br />
<h3><a name="_Toc158092507"><span style="color: #333399; font-family: 宋体">创建一个持久化数据库</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">每个应用程序一般可以创建单个</span><span lang="EN-US">PersistentObject.</span><span style="font-family: 宋体">此对象是应用程序的持久化数据以及索引的根数据库</span><span lang="EN-US">.</span><span style="font-family: 宋体">应用程序将保存数据到此</span><span lang="EN-US">PersistentObject</span><span style="font-family: 宋体">中</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US"></span><v:shape id="_x0000_s1030" style="margin-top: 2.6pt; z-index: 5; left: 0px; margin-left: -9pt; width: 27pt; position: absolute; height: 26.2pt; text-align: left; mso-wrap-distance-left: 9.05pt; mso-wrap-distance-right: 9.05pt" o:allowoverlap="f" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image001.emz" o:title=""></v:imagedata><o:lock v:ext="edit" aspectratio="f"></o:lock><w:wrap type="square"></w:wrap></v:shape><span><font face="Times New Roman"></font><strong><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" />注</strong></span><span lang="EN-US">:</span><span style="font-family: 宋体">使用一个静态的构造子</span><span lang="EN-US">,</span><span style="font-family: 宋体">这样</span><span lang="EN-US">PersistentObject</span><span style="font-family: 宋体">只创建一次</span><span lang="EN-US">,</span><span style="font-family: 宋体">即此类的一个对象第一次创建时</span><span lang="EN-US">.</span><span style="font-family: 宋体">每次一个进程开始时</span><span lang="EN-US">,</span><span style="font-family: 宋体">它包含的静态块再一次运行</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">一个唯一的</span><span lang="EN-US">long</span><span style="font-family: 宋体">键标志了每个</span><span lang="EN-US">PersistentObject.</span><span style="font-family: 宋体">此键一般为一个全权包名的哈希</span></p>
<p class="MsoNormal"><strong><span style="font-family: 宋体"><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" /></span></strong><strong><span lang="EN-US"><v:shape id="_x0000_i1027" type="#_x0000_t75">&#160;</v:shape></span></strong><strong><span style="font-family: 宋体">注</span></strong><span lang="EN-US">:</span><span style="font-family: 宋体">当一个应用程序从</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">删除时</span><span lang="EN-US">,</span><span style="font-family: 宋体">所有此应用程序创建的持久化对象也将删除</span><span lang="EN-US">.</span></p>
<h3><a name="_Toc158092508"><span style="color: #333399; font-family: 宋体">创建一个唯一的</span></a><span><span lang="EN-US" style="color: #333399">long</span></span><span><span style="color: #333399; font-family: 宋体">键</span></span><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal" style="margin-left: 105pt; text-indent: -105pt"><span lang="EN-US"><span>&#160; 1.<span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal">&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span></span><span style="font-family: 宋体">在</span><span lang="EN-US">BlackBerry IDE</span><span style="font-family: 宋体">里</span><span lang="EN-US">,</span><span style="font-family: 宋体">输入一个字符串</span><span lang="EN-US">,</span><span style="font-family: 宋体">例如</span><span lang="EN-US">com.rim.samples.docs.userinfo.</span></p>
<p class="MsoNormal" style="margin-left: 105pt; text-indent: -105pt"><span lang="EN-US"><span>&#160; 2.<span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span></span><span style="font-family: 宋体">选择此字符串</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&#160; 3.<span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span></span><span style="font-family: 宋体">右击</span><span lang="EN-US">,</span><span style="font-family: 宋体">然后单击</span><strong><span lang="EN-US">Convert &#8216;com.rim.samples.docs.userinfo&#8217; to long</span></strong><span lang="EN-US">. long</span><span style="font-family: 宋体">值将会出现</span><span lang="EN-US">.</span>    <br /><strong><span style="font-family: 宋体"><font face="Times New Roman">&#160; </font><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" /></span></strong><strong><span style="font-family: 宋体">注</span></strong><span lang="EN-US">:</span><span style="font-family: 宋体">在你的代码加入注释表明用来生成</span><span lang="EN-US">long</span><span style="font-family: 宋体">键的字符串</span><span lang="EN-US">..</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> PersistentObject store;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>store = PersistentStore.getPersistentObject( 0xa1a569278238dad2L );</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092509"><span style="color: #333399; font-family: 宋体">持久存储数据</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">为了将数据保存到持久存储里</span><span lang="EN-US">,</span><span style="font-family: 宋体">调用</span><span lang="EN-US">PersistentObject</span><span style="font-family: 宋体">上的</span><span lang="EN-US">setContents().</span><span style="font-family: 宋体">此方法用新的值替代已存在的值</span><span lang="EN-US">.</span><span style="font-family: 宋体">调用</span><span lang="EN-US">commit()</span><span style="font-family: 宋体">保存到持久存储里</span><span lang="EN-US">,</span>    <br /><strong><span style="font-family: 宋体"><font face="Times New Roman">&#160; </font><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" /></span></strong><strong><span style="font-family: 宋体">注</span></strong><span lang="EN-US">:</span><span style="font-family: 宋体">如果在提交的过程中发生一个错误</span><span lang="EN-US">,</span><span style="font-family: 宋体">已经完成的更新不会提交</span><span lang="EN-US">.</span><span style="font-family: 宋体">在</span><span lang="EN-US">PersistentObject</span><span style="font-family: 宋体">里的数据从最后一次提交中获取值</span><span lang="EN-US">,</span><span style="font-family: 宋体">以保持数据的完整性</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">String[] userinfo = {username, password};</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">synchronized</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(store) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>store.setContents(userinfo);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>store.commit();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">}</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span style="font-family: 宋体">如果你有许多对象需要提交到存储里</span><span lang="EN-US">,</span><span style="font-family: 宋体">你可以以一个批事务的形式提交它们</span><span lang="EN-US">.</span><span style="font-family: 宋体">为了实现此</span><span lang="EN-US">,</span><span style="font-family: 宋体">调用</span><span lang="EN-US">PersistentStore.getSynchObject()</span><span style="font-family: 宋体">方法获取持久存储监视器紧锁对象</span><span lang="EN-US">.</span><span style="font-family: 宋体">然后同步对象</span><span lang="EN-US">,</span><span style="font-family: 宋体">如果必要</span><span lang="EN-US">,</span><span style="font-family: 宋体">调用</span><span lang="EN-US">commit()</span><span style="font-family: 宋体">方法</span><span lang="EN-US">.</span><span style="font-family: 宋体">当你释放监视对象的同步时</span><span lang="EN-US">,</span><span style="font-family: 宋体">你的所有事务一次性被提交</span><span lang="EN-US">.</span><span style="font-family: 宋体">如果批处理有任何提交失败</span><span lang="EN-US">,</span><span style="font-family: 宋体">整个批提交也失败</span><span lang="EN-US">.</span><span style="font-family: 宋体">当你同步监视器对象时</span><span lang="EN-US">,</span><span style="font-family: 宋体">如果你调用</span><span lang="EN-US">forceCommit(),</span><span style="font-family: 宋体">这个对象立即提交</span><span lang="EN-US">,</span><span style="font-family: 宋体">并且它不再时批事务中的一部分了</span><span lang="EN-US">.</span></p>
<h3><a name="_Toc158092510"><span style="color: #333399; font-family: 宋体">获取持久数据</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">调用</span> <span lang="EN-US">PersistentObject </span><span style="font-family: 宋体">上的</span><span lang="EN-US">getContents() </span><span style="font-family: 宋体">方法</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">将</span><span lang="EN-US"> PersistentObject.getContents()</span><span style="font-family: 宋体">返回的对象显式的转化为你需要的类型</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">synchronized</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(store) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>String[] currentinfo = (String[])store.getContents();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(currentinfo == </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>Dialog.alert(_resources.getString(APP_ERROR));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">else</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>currentusernamefield.setText(currentinfo[0]);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>currentpasswordfield.setText(currentinfo[1]);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><strong><span style="font-family: 宋体"><font face="Times New Roman">&#160;</font><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" /></span></strong><strong><span style="font-family: 宋体">注</span></strong><span lang="EN-US">:</span><span style="font-family: 宋体">当一个应用程序第一次访问数据据</span><span lang="EN-US">,</span><span style="font-family: 宋体">它应该验证任何索引的顺序</span><span lang="EN-US">,</span><span style="font-family: 宋体">如果出现一个问题</span><span lang="EN-US">,</span><span style="font-family: 宋体">重新创建索引</span><span lang="EN-US">.</span><span style="font-family: 宋体">应用程序应该能够识别并更正任何毁坏的或者丢失的数据的问题</span><span lang="EN-US">.</span><span style="font-family: 宋体">为获得更对信息</span><span lang="EN-US">,</span><span style="font-family: 宋体">参看</span><span lang="EN-US">91</span><span style="font-family: 宋体">页的</span><span lang="EN-US">&#8221;</span><span style="font-family: 宋体">数据完整性</span><span lang="EN-US">&#8221;.</span></p>
<h3><a name="_Toc158092511"><span style="color: #333399; font-family: 宋体">删除一个数据库</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">为了删除一个数据库</span><span lang="EN-US">,</span><span style="font-family: 宋体">调用</span><span lang="EN-US">PersistentStore.destroyPersistentObject().</span><span style="font-family: 宋体">提供一个</span><span lang="EN-US">PersistentObject</span><span style="font-family: 宋体">的唯一键作为参数</span><span lang="EN-US">,</span>    <br /><v:shape id="_x0000_s1031" style="margin-top: 0px; z-index: 6; left: 0px; margin-left: -9pt; width: 27pt; position: absolute; height: 26.2pt; text-align: left; mso-wrap-distance-left: 9.05pt; mso-wrap-distance-right: 9.05pt" o:allowoverlap="f" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image001.emz" o:title=""></v:imagedata><o:lock v:ext="edit" aspectratio="f"></o:lock><w:wrap type="square"></w:wrap></v:shape><span>&#160; <strong><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" />注</strong></span><span lang="EN-US">: PersistentObject</span><span style="font-family: 宋体">作为应用程序的根数据库使用</span><span lang="EN-US">.</span><span style="font-family: 宋体">你删除它</span><span lang="EN-US">,</span><span style="font-family: 宋体">你将删除所有此应用程序存储的持久化数据如果定义了一个</span><span lang="EN-US">PersistentStore.cod</span><span style="font-family: 宋体">文件删除了</span><span lang="EN-US">,</span><span style="font-family: 宋体">所有由此</span><span lang="EN-US">.cod</span><span style="font-family: 宋体">文件创建的持久化对象也将删除</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">为了删除单独的数据</span><span lang="EN-US">,</span><span style="font-family: 宋体">把它们简单的当成普通数据看待</span><span lang="EN-US">,</span><span style="font-family: 宋体">并删除这些数据的引用</span><span lang="EN-US">.</span><span style="font-family: 宋体">垃圾数据会自动回收。</span></p>
<h3><a name="_Toc158092512"><span style="color: #333399; font-family: 宋体">代码实例</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">本代码实例描述了如何为用户创建一个应用程序来查看它们当前的用户名和密码</span><span lang="EN-US">,</span><span style="font-family: 宋体">输入一个新的用户名和密码</span><span lang="EN-US">,</span><span style="font-family: 宋体">然后保存变化</span><span lang="EN-US">.</span>    </p>
<hr style="width: 100%; height: 2px" />
<p class="MsoNormal"><strong><span style="font-family: 宋体">例</span><span lang="EN-US">: UserInfo.java<o:p></o:p></span></strong></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">/**</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">*</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">UserInfo.java</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">*</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Copyright</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">(C)</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">2001</span><span lang="EN-US" style="font-size: 10pt; color: #7f7f9f; font-family: &#39;courier new&#39;">-</span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">2005</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Research</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">In</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Motion</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Limited.</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">All</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">rights</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">reserved.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">*/</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">package</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> com.rim.samples.docs.userinfo;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.ui.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.ui.component.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.ui.container.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.system.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.util.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> java.util.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.i18n.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> com.rim.samples.docs.baseapp.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> com.rim.samples.docs.resource.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> UserInfo </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">extends</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> BaseApp </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">implements</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> UserInfoResource,KeyListener, TrackwheelListener {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> PersistentObject store;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ResourceBundle </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> AutoTextEditField usernamefield;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> PasswordEditField passwordfield;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> AutoTextEditField currentusernamefield;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> AutoTextEditField currentpasswordfield;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = ResourceBundle.<em>getBundle</em>(</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>UserInfoResource.BUNDLE_ID, UserInfoResource.BUNDLE_NAME);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>store = PersistentStore.getPersistentObject(0xa1a569278238dad2L);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem saveItem = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem( </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(MENUITEM_SAVE), 110, 10) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> run() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>String username = usernamefield.getText();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>String password = passwordfield.getText();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>String[] userinfo = {username, password};</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">synchronized</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(store) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>store.setContents(userinfo);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>store.commit();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Dialog.inform(_resources.getString(APP_SUCCESS));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>usernamefield.setText(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>passwordfield.setText(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>};</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem getItem = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem( </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(MENUITEM_GET), 110, 11 ) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> run() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">synchronized</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(store) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>String[] currentinfo = (String[])store.getContents();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(currentinfo == </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Dialog.alert(_resources.getString(APP_ERROR));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">else</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>currentusernamefield.setText(currentinfo[0]);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>currentpasswordfield.setText(currentinfo[1]);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>};</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> main(String[] args) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>UserInfo app = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> UserInfo();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>app.enterEventDispatcher();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> UserInfo() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>MainScreen mainScreen = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MainScreen();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.setTitle(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> LabelField(</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(APPLICATION_TITLE)));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>usernamefield = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> AutoTextEditField(</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(FIELD_NAME), </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>passwordfield = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> PasswordEditField(</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(FIELD_PASSWORD),</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>currentusernamefield = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> AutoTextEditField(</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(FIELD_CURRENTNAME), </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>currentpasswordfield = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> AutoTextEditField(</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(FIELD_CURRENTPASSWORD),</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>SeparatorField separator = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> SeparatorField();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.add(usernamefield);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.add(passwordfield);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.add(separator);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.add(currentusernamefield);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.add(currentpasswordfield);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.addKeyListener(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">this</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.addTrackwheelListener(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">this</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>pushScreen(mainScreen);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> makeMenu( Menu menu, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> instance ) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>menu.add(saveItem);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>menu.add(getItem);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">super</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.makeMenu(menu, 0);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> onExit() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Dialog.alert(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(APP_EXIT));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span></p>
<hr style="width: 100%; height: 2px" />
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"></span><span lang="EN-US">&lt;!&#8211;[if !vml]&#8211;&gt;</span></p>
<h2><a name="_Toc158092513"><span style="color: #333399; font-family: 黑体">内存管理和持久化对象</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h2>
<p class="MsoNormal"><span style="font-family: 宋体">在</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备上有固定数量的持久化对象句柄以及对象句柄</span><span lang="EN-US">.</span></p>
<table class="MsoNormalTable" style="width: 432pt; border-collapse: collapse" cellspacing="0" cellpadding="0" width="576" border="1">
<tbody>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 144pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="192">
<p class="MsoNormal"><strong><span style="font-family: 宋体">闪存</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 144pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="192">
<p class="MsoNormal"><strong><span style="font-family: 宋体">持久化对象句柄</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 144pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="192">
<p class="MsoNormal"><strong><span style="font-family: 宋体">对象句柄</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 144pt; padding-top: 0cm; height: 12pt" valign="top" width="192">
<p class="MsoNormal"><span lang="EN-US">8 MB</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 144pt; padding-top: 0cm; height: 12pt" valign="top" width="192">
<p class="MsoNormal"><span lang="EN-US">12,000</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 144pt; padding-top: 0cm; height: 12pt" valign="top" width="192">
<p class="MsoNormal"><span lang="EN-US">24,000</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 144pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="192">
<p class="MsoNormal"><span lang="EN-US">16 MB</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 144pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="192">
<p class="MsoNormal"><span lang="EN-US">27,000</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 144pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="192">
<p class="MsoNormal"><span lang="EN-US">56,000</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 144pt; padding-top: 0cm; height: 12pt" valign="top" width="192">
<p class="MsoNormal"><span lang="EN-US">32 MB</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 144pt; padding-top: 0cm; height: 12pt" valign="top" width="192">
<p class="MsoNormal"><span lang="EN-US">65,000</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 144pt; padding-top: 0cm; height: 12pt" valign="top" width="192">
<p class="MsoNormal"><span lang="EN-US">132,000</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备上的每个持久化对象都会要求一个持久化对象句柄以及一个对象句柄</span><span lang="EN-US">.</span><span style="font-family: 宋体">例如</span><span lang="EN-US">,</span><span style="font-family: 宋体">一个记录包含了</span><span lang="EN-US">10</span><span style="font-family: 宋体">个</span><span lang="EN-US">String</span><span style="font-family: 宋体">字段</span><span lang="EN-US">,</span><span style="font-family: 宋体">那么它将要求</span><span lang="EN-US">11</span><span style="font-family: 宋体">个对象句柄</span><span lang="EN-US">-</span><span style="font-family: 宋体">一个为记录</span><span lang="EN-US">,</span><span style="font-family: 宋体">一个为每个</span><span lang="EN-US">String.</span><span style="font-family: 宋体">如果记录是持久化的</span><span lang="EN-US">,</span><span style="font-family: 宋体">它将需要额外的</span><span lang="EN-US">11</span><span style="font-family: 宋体">个持久化对象句柄</span><span lang="EN-US">.</span></p>
<p class="MsoNormal" style="margin-left: 21pt; text-indent: -21pt"><span style="font-family: 宋体">使用下面的技术限制应用程序需要的持久化对象句柄数</span><span lang="EN-US">:</span></p>
<ul>
<li><span lang="EN-US"></span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span>&lt;!&#8211;[endif]&#8211;&gt;<span style="font-family: 宋体">如果可能</span><span lang="EN-US">,</span><span style="font-family: 宋体">使用原始类型代替对象</span><span lang="EN-US">.</span><span style="font-family: 宋体">一个原始类型</span><span lang="EN-US">,</span><span style="font-family: 宋体">例如一个</span><span lang="EN-US">int</span><span style="font-family: 宋体">或者一个</span><span lang="EN-US">char,</span><span style="font-family: 宋体">它们不需要一个对象句柄</span><span lang="EN-US">.</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span><span lang="EN-US"></span> </li>
<li><span lang="EN-US"></span><span style="font-family: 宋体">使用对象分组</span><span lang="EN-US">API (net.rim.device.api.system.ObjectGroup)</span><span style="font-family: 宋体">将对象分组</span><span lang="EN-US">.</span><span style="font-family: 宋体">一个分组的对象仅需要一个对象句柄</span><span lang="EN-US">.</span> </li>
</ul>
<p> <span lang="EN-US"></span><v:shape id="_x0000_s1032" style="margin-top: 7.8pt; z-index: 7; left: 0px; margin-left: -18pt; width: 27pt; position: absolute; height: 26.2pt; text-align: left; mso-wrap-distance-left: 9.05pt; mso-wrap-distance-right: 9.05pt" o:allowoverlap="f" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image001.emz" o:title=""></v:imagedata><o:lock v:ext="edit" aspectratio="f"></o:lock><w:wrap type="square"></w:wrap></v:shape><strong><span style="font-family: 宋体"><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" /></span></strong><strong><span style="font-family: 宋体">注</span></strong><span lang="EN-US">:</span><span style="font-family: 宋体">分组的对象是可读的</span><span lang="EN-US">.</span><span style="font-family: 宋体">在做出改变之前调用</span><span lang="EN-US">ObjectGroup.expandGroup()</span><span style="font-family: 宋体">撤销对象的分组</span><span lang="EN-US">.</span><span style="font-family: 宋体">在完成改变之后</span><span lang="EN-US">,</span><span style="font-family: 宋体">调用</span><span lang="EN-US">ObjectGroup.createGroup()</span><span style="font-family: 宋体">将对象分组</span><span lang="EN-US">.</span><span style="font-family: 宋体">必要时仅撤销对象的分组</span><span lang="EN-US">,</span><span style="font-family: 宋体">当撤销对象分组时有性能将受到损耗</span><span lang="EN-US">,</span><span style="font-family: 宋体">因为系统创建了分组对象的一个拷贝</span><span lang="EN-US">,</span><span style="font-family: 宋体">并且将句柄分配给每个组里的对象</span><span lang="EN-US">.</span>
<p class="MsoNormal"><span style="font-family: 宋体">为获取更多信息</span><span lang="EN-US">,</span><span style="font-family: 宋体">参看</span><span lang="EN-US">&#8221;<em>BlackBerry JDE</em></span><em><span style="font-family: 宋体">最佳内存实践</span></em><span lang="EN-US">&#8221;</span><span style="font-family: 宋体">白皮书</span><span lang="EN-US">.</span></p>
<h2><a name="_Toc158092514"><span style="color: #333399; font-family: 黑体">管理自定义对象</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h2>
<h3><a name="_Toc158092515"><span style="color: #333399; font-family: 宋体">创建一个数据库</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">创建一个</span><span lang="EN-US">Vector</span><span style="font-family: 宋体">对象存储多个对象</span><span lang="EN-US">.</span><span style="font-family: 宋体">创建一个</span><span lang="EN-US">PersistentObject</span><span style="font-family: 宋体">作为应用程序的根数据库</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Vector _data;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">PersistentObject store;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>store = PersistentStore.getPersistentObject( 0xdec6a67096f833cL );</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">//key is hash of test.samples.restaurants</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>_data = (Vector)store.getContents();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">synchronized</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (store) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (_data == </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>_data = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Vector();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>store.setContents(_data);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>store.commit();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092516"><span style="color: #333399; font-family: 宋体">持久存储数据</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">可以持久化实现了</span><span lang="EN-US">Persistable</span><span style="font-family: 宋体">接口的对象</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">下面的代码实例作为</span><span lang="EN-US">inner</span><span style="font-family: 宋体">类实现</span><span lang="EN-US">Persistable</span><span style="font-family: 宋体">接口</span><span lang="EN-US">.</span><span style="font-family: 宋体">它定义了一个带有</span><span lang="EN-US">4</span><span style="font-family: 宋体">个</span><span lang="EN-US">Object</span><span style="font-family: 宋体">的数组来存储餐厅名</span><span lang="EN-US">,</span><span style="font-family: 宋体">地址</span><span lang="EN-US">,</span><span style="font-family: 宋体">电话号码</span><span lang="EN-US">,</span><span style="font-family: 宋体">以及特色</span><span lang="EN-US">.</span><span style="font-family: 宋体">并且定义了方法来获取和设置</span><span lang="EN-US">Object</span><span style="font-family: 宋体">元素值</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US"></span><v:shape id="_x0000_s1033" style="margin-top: 7.8pt; z-index: 8; left: 0px; margin-left: -9pt; width: 27pt; position: absolute; height: 26.2pt; text-align: left; mso-wrap-distance-left: 9.05pt; mso-wrap-distance-right: 9.05pt" o:allowoverlap="f" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image001.emz" o:title=""></v:imagedata><o:lock v:ext="edit" aspectratio="f"></o:lock><w:wrap type="square"></w:wrap></v:shape><span>&#160;<strong><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" />注</strong></span><span lang="EN-US">:</span><span style="font-family: 宋体">一个类为了其对象</span><span lang="EN-US">,</span><span style="font-family: 宋体">必须显式的实现</span><span lang="EN-US">Persistable</span><span style="font-family: 宋体">接口来也就存储</span><span lang="EN-US">. </span><span style="font-family: 宋体">甚至其子类也适用这个需求</span><span lang="EN-US">.</span><span style="font-family: 宋体">例如类</span><span lang="EN-US">A</span><span style="font-family: 宋体">实现了</span><span lang="EN-US">Persistable</span><span style="font-family: 宋体">接口</span><span lang="EN-US">,</span><span style="font-family: 宋体">并且</span><span lang="EN-US">A</span><span style="font-family: 宋体">有一个子类</span><span lang="EN-US">B,B</span><span style="font-family: 宋体">的对象不能持久存储</span><span lang="EN-US">,</span><span style="font-family: 宋体">除非</span><span lang="EN-US">B</span><span style="font-family: 宋体">也实现</span><span lang="EN-US">Persistable</span><span style="font-family: 宋体">接口</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantInfo </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">implements</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Persistable {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String[] </span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_elements</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">NAME</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 0;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">ADDRESS</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 1;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">PHONE</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 2;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">SPECIALTY</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 3;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantInfo() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_elements</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String[4];</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">for</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ( </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> i = 0; i &lt; </span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_elements</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.</span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">length</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">; ++i) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_elements</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[i] = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String getElement(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> id) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_elements</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[id];</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> setElement(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> id, String value) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_elements</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[id] = value;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><strong><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></strong></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092517"><span style="color: #333399; font-family: 宋体">创建扩展的对象</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal" style="margin-left: 21pt; text-indent: -21pt"><span style="font-family: 宋体">下面的方法允许你加入字段到对象中</span><span lang="EN-US">:</span></p>
<ul>
<li><span lang="EN-US"></span><span lang="EN-US" style="font-family: wingdings"><span></span></span><span style="font-family: 宋体">在一个</span><span lang="EN-US">int</span><span style="font-family: 宋体">中</span><span lang="EN-US">,</span><span style="font-family: 宋体">存储</span><span lang="EN-US">Boolean</span><span style="font-family: 宋体">值做为</span><span lang="EN-US">bit.</span><span style="font-family: 宋体">保留多余的位供将来使用</span><span lang="EN-US">.</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span> </li>
<li><span style="font-family: 宋体">直接存储</span><span lang="EN-US">String,</span><span style="font-family: 宋体">但是使用一个键</span><span lang="EN-US">/</span><span style="font-family: 宋体">值对的</span><span lang="EN-US">Vector</span><span style="font-family: 宋体">或</span><span lang="EN-US">Hashtable,</span><span style="font-family: 宋体">这样附加的</span><span lang="EN-US">(</span><span style="font-family: 宋体">或很少使用的</span><span lang="EN-US">)</span><span style="font-family: 宋体">的字段也可以增加</span><span lang="EN-US">.</span><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span> </li>
<li><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal">&#160;</span></span></span><span style="font-family: 宋体">如果你由一个表的索引</span><span lang="EN-US">,</span><span style="font-family: 宋体">将他们存储在一个</span><span lang="EN-US">Vector</span><span style="font-family: 宋体">或数组里</span><span lang="EN-US">,</span><span style="font-family: 宋体">这样你可以增加未来的索引了</span><span lang="EN-US">.</span> </li>
</ul>
<h3><a name="_Toc158092518"><span style="color: #333399; font-family: 宋体">保存一个对象</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">定义一个对象</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">下面的代码实例创建一个</span><span lang="EN-US">RestaurantInfo</span><span style="font-family: 宋体">对象</span><span lang="EN-US">,</span><span style="font-family: 宋体">并且使用它的设置方法来定义他的组件</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; margin-left: 10.5pt; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">RestaurantInfo info = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantInfo();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">info.setElement(RestaurantInfo.NAME, namefield.getText());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">info.setElement(RestaurantInfo.ADDRESS,addressfield.getText());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">info.setElement(RestaurantInfo.PHONE, phonefield.getText());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">info.setElement(RestaurantInfo.SPECIALTY, specialtyfield.getText());</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal" style="margin-left: 10.5pt"><span lang="EN-US"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">将一个对象加到一个</span><span lang="EN-US" style="color: #333399">Vector<o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">调用</span><span lang="EN-US">addElement().</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-indent: 5pt"><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;">_data.addElement(info);<o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">保存一个更新的对象</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal" style="margin-left: 10.5pt; text-indent: -10.5pt"><span style="font-family: 宋体">调用</span><span lang="EN-US">PersistentObject</span><span style="font-family: 宋体">的</span><span lang="EN-US">setContents(),</span><span style="font-family: 宋体">然后调用</span><span lang="EN-US">commit()</span><span style="font-family: 宋体">方法保存一个更新的对象</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; margin-left: 10.5pt; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">synchronized</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(store) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>store.setContents(_data);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>store.commit();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><strong><span style="font-family: 宋体">注</span></strong><span lang="EN-US">: </span><span style="font-family: 宋体">当你做出改变时</span><span lang="EN-US">,</span><span style="font-family: 宋体">同步一个持久对象</span><span lang="EN-US">,</span><span style="font-family: 宋体">这样其他的线程在同一时间就不能做出改变</span><span lang="EN-US">.</span></p>
<h3><a name="_Toc158092519"><span style="color: #333399; font-family: 宋体">获取一个对象</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">为了获取最近保存的对象</span><span lang="EN-US">,</span><span style="font-family: 宋体">调用</span><span lang="EN-US">_data.lastElement().</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> run() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">synchronized</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(store) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>_data = (Vector)store.getContents();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (!_data.isEmpty()) { RestaurantInfo info = (RestaurantInfo)_data.lastElement();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>namefield.setText(info.getElement(RestaurantInfo.NAME));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>addressfield.setText(info.getElement(RestaurantInfo.ADDRESS));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>phonefield.setText(info.getElement(RestaurantInfo.PHONE));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>specialtyfield.setText(info.getElement(</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>RestaurantInfo.SPECIALTY));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;</span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc158092520"><span style="color: #333399; font-family: 宋体">代码实例</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">本实例描述了如何创建一个应用程序</span><span lang="EN-US">,</span><span style="font-family: 宋体">它允许用户存储一个关于喜爱的餐厅信息</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">本实例也允许用户保存多个餐厅的信息</span><span lang="EN-US">,</span><span style="font-family: 宋体">并且可以查看最新保存的餐厅信息</span><span lang="EN-US">.</span></p>
<hr style="width: 100%; height: 2px" />
<p class="MsoNormal"><span lang="EN-US"></span></p>
<p class="MsoNormal"><span lang="EN-US"></span><span style="font-family: 宋体">例</span>: Restaurants.java<o:p></o:p></p>
<p> <strong><span lang="EN-US"></span></strong>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">/* Restaurants.java</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">* Copyright (C) 2004-2005 Research In Motion Limited.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">*/</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">package</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> com.rim.samples.docs.restaurants;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.ui.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.ui.component.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.ui.container.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.system.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.util.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> java.util.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.i18n.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.blackberry.api.invoke.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.blackberry.api.browser.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> com.rim.samples.docs.baseapp.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> com.rim.samples.docs.resource.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Restaurants </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">extends</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> BaseApp </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">implements</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantResource,KeyListener, TrackwheelListener {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> AutoTextEditField namefield;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> AutoTextEditField addressfield;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> EditField phonefield;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> EditField websitefield;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> EditField specialtyfield;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Vector </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_data</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> PersistentObject store;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ResourceBundle </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem saveItem = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(MENUITEM_SAVE), 110, 10) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> run() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>RestaurantInfo info = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantInfo();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>info.setElement(RestaurantInfo.NAME, namefield.getText());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>info.setElement(RestaurantInfo.ADDRESS, addressfield.getText());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>info.setElement(RestaurantInfo.PHONE, phonefield.getText());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>info.setElement(RestaurantInfo.WEBSITE, phonefield.getText());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>info.setElement(RestaurantInfo.SPECIALTY,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>specialtyfield.getText());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>_data.addElement(info);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">synchronized</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(store) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>store.setContents(_data);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>store.commit();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Dialog.inform(_resources.getString(APP_SUCCESS));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>namefield.setText(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>addressfield.setText(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>phonefield.setText(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>websitefield.setText(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>specialtyfield.setText(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>};</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem getItem = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(MENUITEM_GET), 110, 11) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> run() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">synchronized</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(store) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>_data = (Vector)store.getContents();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (!_data.isEmpty()) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>RestaurantInfo info = (RestaurantInfo)_data.lastElement();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>namefield.setText(info.getElement(RestaurantInfo.NAME));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>addressfield.setText(info.getElement(RestaurantInfo.ADDRESS));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>phonefield.setText(info.getElement(RestaurantInfo.PHONE));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>websitefield.setText(info.getElement(RestaurantInfo.WEBSITE));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>specialtyfield.setText(info.getElement(RestaurantInfo.SPECIALTY));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>};</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem phoneItem = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(MENUITEM_PHONE), 110, 12) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> run() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">synchronized</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(store) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>String phoneNumber = phonefield.getText();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ( phoneNumber.length() == 0) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Dialog.alert(_resources.getString(ALERT_NO_PHONENUMBER));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">else</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>PhoneArguments call =</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> PhoneArguments(PhoneArguments.ARG_CALL, phoneNumber);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Invoke.invokeApplication(Invoke.APP_TYPE_PHONE, call);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>};</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem browserItem =</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(MENUITEM_BROWSER), 110, 12) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> run() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">synchronized</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(store) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>String websiteUrl = websitefield.getText();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (websiteUrl.length() == 0) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Dialog.alert(_resources.getString(ALERT_NO_WEBSITE));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">else</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>BrowserSession visit = Browser.getDefaultSession();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>visit.displayPage(websiteUrl);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>};</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = ResourceBundle.<em>getBundle</em>(</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>RestaurantResource.BUNDLE_ID,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>RestaurantResource.BUNDLE_NAME);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>store = PersistentStore.getPersistentObject(0xdec6a67096f833cL);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Key is hash of test.samples.restaurants.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">synchronized</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (store) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>_data = (Vector)store.getContents();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (_data == </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>_data = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Vector();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>store.setContents( _data );</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>store.commit();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> main(String[] args) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Restaurants app = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Restaurants();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>app.enterEventDispatcher();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantInfo </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">implements</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Persistable {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Data.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String[] </span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_elements</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Fields.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">NAME</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 0;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">ADDRESS</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 1;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">PHONE</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 2;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">WEBSITE</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 3;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">SPECIALTY</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 4;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> RestaurantInfo() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_elements</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String[4];</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">for</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ( </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> i = 0; i &lt; </span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_elements</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.</span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">length</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">; ++i) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_elements</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[i] = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String getElement(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> id) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_elements</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[id];</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> setElement(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> id, String value) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_elements</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">[id] = value;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Restaurants() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>MainScreen mainScreen = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MainScreen();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.setTitle(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> LabelField(</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(APPLICATION_TITLE)));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>namefield = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> AutoTextEditField(</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(FIELD_NAME), </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>addressfield = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> AutoTextEditField(</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(FIELD_ADDRESS), </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>phonefield = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> EditField(</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(FIELD_PHONE), </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, Integer.</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">MAX_VALUE</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>BasicEditField.FILTER_PHONE);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>websitefield = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> EditField(</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(FIELD_WEBSITE), </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Integer.</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">MAX_VALUE</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">,BasicEditField.FILTER_URL);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>specialtyfield = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> EditField(</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(FIELD_SPECIALTY), </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Integer.</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">MAX_VALUE</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">, BasicEditField.FILTER_DEFAULT);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.add(namefield);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.add(addressfield);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.add(phonefield);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.add(websitefield);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.add(specialtyfield);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.addKeyListener(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">this</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>mainScreen.addTrackwheelListener(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">this</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>pushScreen(mainScreen);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> makeMenu( Menu menu, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> instance ) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>menu.add(saveItem);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>menu.add(getItem);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>menu.add(phoneItem);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>menu.add(browserItem);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">super</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.makeMenu(menu, instance);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> onExit() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Dialog.alert(</span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_resources</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.getString(APP_EXIT));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p> <span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"> </span><br />
<hr style="width: 100%; height: 2px" />Last Updated:2007年2月1日<span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"></span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.inblackberry.com/web/development/docs/dev-guide-vol-2-persitent-stored-data.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>BlackBerry 应用程序开发者指南 第二卷：高级&#8211;第7章 与BlackBerry应用程序通信</title>
		<link>http://www.inblackberry.com/web/development/docs/developer-guide-application-communication.html</link>
		<comments>http://www.inblackberry.com/web/development/docs/developer-guide-application-communication.html#comments</comments>
		<pubDate>Mon, 28 Apr 2008 21:49:49 +0000</pubDate>
		<dc:creator>Taigoo</dc:creator>
		
		<category><![CDATA[文档]]></category>

		<category><![CDATA[api]]></category>

		<category><![CDATA[communication]]></category>

		<category><![CDATA[doc]]></category>

		<guid isPermaLink="false">http://www.inblackberry.com/web/development/docs/developer-guide-application-communication.html</guid>
		<description><![CDATA[<p class="MsoNormal" style="text-align: right" align="right">7</p>
<a name="_Toc155243141">&#160;&#160;&#160;&#160;&#160; 第</a>7章 与BlackBerry应用程序通信
<p> <br />




<p]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="text-align: right" align="right"><strong><span lang="EN-US" style="font-size: 36pt">7<o:p></o:p></span></strong></p>
<h1><a name="_Toc155243141"><span style="color: #333399; font-family: 宋体">&#160;&#160;&#160;&#160;&#160; 第</span></a><span><span lang="EN-US" style="color: #333399">7</span></span><span><span style="color: #333399; font-family: 宋体">章</span></span><span><span style="color: #333399"> </span></span><span><span style="color: #333399; font-family: 宋体">与</span></span><span><span lang="EN-US" style="color: #333399">BlackBerry</span></span><span><span style="color: #333399; font-family: 宋体">应用程序通信</span></span></h1>
<p> <br />
<table style="background: #e0e0e0 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="0">
<tbody>
<tr style="height: 38.3pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm; height: 38.3pt" valign="top" width="568">
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">启动</span><span lang="EN-US" style="color: #333399">BlackBerry</span></strong><strong><span style="color: #333399; font-family: 宋体">应用程序</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">加入一个菜单项到</span><span lang="EN-US" style="color: #333399">BlackBerry</span></strong><strong><span style="color: #333399; font-family: 宋体">应用程序中</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">代码实例</span></strong></p>
</td>
</tr>
</tbody>
</table>
<h2><a name="_Toc155243142"><span style="color: #333399; font-family: 黑体">启动</span></a><span><span lang="EN-US" style="color: #333399">BlackBerry</span></span><span><span style="color: #333399; font-family: 黑体">应用程序</span></span><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h2>
<p class="MsoNormal"><span style="font-family: 宋体">调用</span><span lang="EN-US">API(net.rim.blackberry.api.invoke)</span><span style="font-family: 宋体">允许应用程序启动标注你的</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">应用程序</span><span lang="EN-US">.</span>    <br /><strong><span style="font-family: 宋体"><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" />注</span></strong><span lang="EN-US">: </span><span style="font-family: 宋体">当应用程序调用电话时</span><span lang="EN-US">,</span><span style="font-family: 宋体">检查一个</span><span lang="EN-US">ControlledAccessException.</span><span style="font-family: 宋体">如果系统管理员通过应用程序控制限制访问电话应用程序</span><span lang="EN-US">,</span><span style="font-family: 宋体">将抛出一个运行时错误</span><span lang="EN-US">. </span><span style="font-family: 宋体">为获得更多信息</span><span lang="EN-US">,</span><span style="font-family: 宋体">参看</span><em><span lang="EN-US">BlackBerry</span></em><em><span style="font-family: 宋体">应用程序开发者指南</span> </em><em><span style="font-family: 宋体">第</span><span lang="EN-US">2</span></em><em><span style="font-family: 宋体">卷</span><span lang="EN-US">:</span></em><em><span style="font-family: 宋体">高级</span> </em><em><span style="font-family: 宋体">第</span><span lang="EN-US">1</span></em><em><span style="font-family: 宋体">卷</span><span lang="EN-US">:</span></em><em><span style="font-family: 宋体">基础</span></em><span lang="EN-US">.</span></p>
<h3><a name="_Toc155243143"><span style="color: #333399; font-family: 宋体">调用</span></a><span><span lang="EN-US" style="color: #333399">API</span></span><span><span style="color: #333399; font-family: 宋体">新功能</span></span><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal" style="margin-left: 21pt; text-indent: -21pt"><span style="font-family: 宋体">从</span><span lang="EN-US">BlackBerry JDE 4.1</span><span style="font-family: 宋体">起</span><span lang="EN-US">,</span><span style="font-family: 宋体">有下面的功能</span><span lang="EN-US">:</span></p>
<ul>
<li><span style="font-family: 宋体">可以改变</span><span lang="EN-US">AddressBookArguments (net.rim.blackberry.api.invoke.AddressBookArguments)</span><span style="font-family: 宋体">来打开一个使用</span><span lang="EN-US">PIMContact</span><span style="font-family: 宋体">的联系人</span><span lang="EN-US">.</span> </li>
<li><span style="font-family: 宋体">可以改变</span><span lang="EN-US">CalendarArguments (net.rim.blackberry.api.invoke.CalendarArguments)</span><span style="font-family: 宋体">查看存在的</span><span lang="EN-US">PIM</span><span style="font-family: 宋体">事件</span><span lang="EN-US">.</span><span style="font-family: 宋体">你不可以创建一个来自</span><span lang="EN-US">PIM</span><span style="font-family: 宋体">对象的新事件</span><span lang="EN-US">.</span><span lang="EN-US" style="font-family: wingdings"><span></span></span> </li>
<li><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal"></span></span></span><span style="font-family: 宋体">可以改变</span><span lang="EN-US">MessageArguments (net.rim.blackberry.api.invoke.MessageArguments)</span><span style="font-family: 宋体">创建一个包含主题和内容的消息</span> </li>
<li><span style="font-family: 宋体">在</span><span lang="EN-US">Task</span><span style="font-family: 宋体">应用程序无变化的情况下</span><span lang="EN-US">,</span><span style="font-family: 宋体">不可以更新</span><span lang="EN-US">TaskArguments (net.rim.blackberry.api.invoke.TaskArguments).</span> </li>
</ul>
<p class="MsoNormal"><span style="font-family: 宋体">为启动一个应用程序</span><span lang="EN-US">,</span><span style="font-family: 宋体">调用带有合适常量和</span><span lang="EN-US">ApplicationArguments </span><span style="font-family: 宋体">子类的对象的</span><span lang="EN-US">Invoke.invokeApplication(int, ApplicationArguments)</span><span style="font-family: 宋体">方法</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US"><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" /></span><v:shape id="_x0000_s1027" style="margin-top: 1.85pt; z-index: 2; left: 0px; margin-left: -9pt; width: 27pt; position: absolute; height: 26.2pt; text-align: left; mso-wrap-distance-left: 9.05pt; mso-wrap-distance-right: 9.05pt" o:allowoverlap="f" type="#_x0000_t75"> <v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image001.emz" o:title=""></v:imagedata><o:lock v:ext="edit" aspectratio="f"></o:lock><w:wrap type="square"></w:wrap></v:shape><strong><span style="font-family: 宋体">注</span></strong><span lang="EN-US">:</span><span style="font-family: 宋体">使用</span><span lang="EN-US">Invoke.invokeApplication(int, ApplicationArguments)</span><span style="font-family: 宋体">将导致一个处理上下文的转化</span><span lang="EN-US">.</span><span style="font-family: 宋体">当</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">程序启动时</span><span lang="EN-US">,</span><span style="font-family: 宋体">你的应用程序将失去控制</span><span lang="EN-US">.</span><span style="font-family: 宋体">在启动的应用程序对话中止时</span><span lang="EN-US">,</span><span style="font-family: 宋体">内容可能不会返回给你的应用程序</span><span lang="EN-US">.</span></p>
<table class="MsoNormalTable" style="width: 433pt; border-collapse: collapse" cellspacing="0" cellpadding="0" width="577" border="1">
<tbody>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 150pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="200">
<p class="MsoNormal"><strong><span style="font-family: 宋体">应用程序</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 150pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="200">
<p class="MsoNormal"><strong><span style="font-family: 宋体">常量</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 133pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="177">
<p class="MsoNormal"><strong><span style="font-family: 宋体">类</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 150pt; padding-top: 0cm; height: 12pt" valign="top" width="200">
<p class="MsoNormal"><span lang="EN-US">Address book(</span><span style="font-family: 宋体">地址本</span><span lang="EN-US">)</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 150pt; padding-top: 0cm; height: 12pt" valign="top" width="200">
<p class="MsoNormal"><span lang="EN-US">APP_TYPE_ADDRESSBOOK</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 133pt; padding-top: 0cm; height: 12pt" valign="top" width="177">
<p class="MsoNormal"><span lang="EN-US">AddressBookArguments</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 150pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="200">
<p class="MsoNormal"><span lang="EN-US">Calendar(</span><span style="font-family: 宋体">日历</span><span lang="EN-US">)</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 150pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="200">
<p class="MsoNormal"><span lang="EN-US">APP_TYPE_CALENDAR</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 133pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="177">
<p class="MsoNormal"><span lang="EN-US">CalendarArguments</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 150pt; padding-top: 0cm; height: 12pt" valign="top" width="200">
<p class="MsoNormal"><span lang="EN-US">Memo pad(</span><span style="font-family: 宋体">便笺</span><span lang="EN-US">)</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 150pt; padding-top: 0cm; height: 12pt" valign="top" width="200">
<p class="MsoNormal"><span lang="EN-US">APP_TYPE_MEMOPAD</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 133pt; padding-top: 0cm; height: 12pt" valign="top" width="177">
<p class="MsoNormal"><span lang="EN-US">MemoArguments</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 150pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="200">
<p class="MsoNormal"><span lang="EN-US">Messages(</span><span style="font-family: 宋体">消息</span><span lang="EN-US">)</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 150pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="200">
<p class="MsoNormal"><span lang="EN-US">APP_TYPE_MESSAGES</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 133pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="177">
<p class="MsoNormal"><span lang="EN-US">MessageArguments</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 150pt; padding-top: 0cm; height: 12pt" valign="top" width="200">
<p class="MsoNormal"><span lang="EN-US">Phone(</span><span style="font-family: 宋体">电话</span><span lang="EN-US">)</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 150pt; padding-top: 0cm; height: 12pt" valign="top" width="200">
<p class="MsoNormal"><span lang="EN-US">APP_TYPE_PHONE</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 133pt; padding-top: 0cm; height: 12pt" valign="top" width="177">
<p class="MsoNormal"><span lang="EN-US">PhoneArguments</span></p>
</td>
</tr>
<tr style="height: 12pt">
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 150pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="200">
<p class="MsoNormal"><span lang="EN-US">Tasks(</span><span style="font-family: 宋体">任务</span><span lang="EN-US">)</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 150pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="200">
<p class="MsoNormal"><span lang="EN-US">APP_TYPE_TASKS</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 133pt; padding-top: 0cm; height: 12pt; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="177">
<p class="MsoNormal"><span lang="EN-US">TaskArguments</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"></span><strong><span style="font-family: 宋体"><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" />技巧</span></strong><span lang="EN-US">:</span><span style="font-family: 宋体">从浏览器应用程序</span><span lang="EN-US">API(net.rim.blackberry.api.browser)</span><span style="font-family: 宋体">中调用</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">浏览器</span><span lang="EN-US">.</span><span style="font-family: 宋体">参看</span><span lang="EN-US">51</span><span style="font-family: 宋体">页的</span><span lang="EN-US">&#8221;</span><span style="font-family: 宋体">在浏览器中显示内容</span><span lang="EN-US">&#8221;</span><span style="font-family: 宋体">获得更多信息</span><span lang="EN-US">.</span><span style="font-family: 宋体">电话</span><span lang="EN-US">API (net.rim.blackberry.api.phone)</span><span style="font-family: 宋体">提供访问电话应用程序的高级特性的能力</span><span lang="EN-US">. </span><span style="font-family: 宋体">参看</span><span lang="EN-US">77</span><span style="font-family: 宋体">页的</span><span lang="EN-US">&#8221;</span><span style="font-family: 宋体">电话</span><span lang="EN-US">API&#8221;</span><span style="font-family: 宋体">获得更多信息</span></p>
<p class="MsoNormal"><span style="font-family: 宋体"></span><v:shape id="_x0000_s1028" style="margin-top: 4.45pt; z-index: 3; left: 0px; margin-left: -9pt; width: 27pt; position: absolute; height: 26.2pt; text-align: left; mso-wrap-distance-left: 9.05pt; mso-wrap-distance-right: 9.05pt" o:allowoverlap="f" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image001.emz" o:title=""></v:imagedata><o:lock v:ext="edit" aspectratio="f"></o:lock><w:wrap type="square"></w:wrap></v:shape><strong><span style="font-family: 宋体"><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" />注</span></strong><span lang="EN-US">: </span><span style="font-family: 宋体">当应用程序调用电话时</span><span lang="EN-US">,</span><span style="font-family: 宋体">检查一个</span><span lang="EN-US">ControlledAccessException.</span><span style="font-family: 宋体">如果系统管理员通过应用程序控制限制访问电话应用程序</span><span lang="EN-US">,</span><span style="font-family: 宋体">将抛出一个运行时错误</span><span lang="EN-US">. </span><span style="font-family: 宋体">为获得更多信息</span><span lang="EN-US">,</span><span style="font-family: 宋体">参看</span><em><span lang="EN-US">BlackBerry</span></em><em><span style="font-family: 宋体">应用程序开发者指南</span> </em><em><span style="font-family: 宋体">第</span><span lang="EN-US">2</span></em><em><span style="font-family: 宋体">卷</span><span lang="EN-US">:</span></em><em><span style="font-family: 宋体">高级</span> </em><em><span style="font-family: 宋体">第</span><span lang="EN-US">1</span></em><em><span style="font-family: 宋体">卷</span><span lang="EN-US">:</span></em><em><span style="font-family: 宋体">基础</span></em><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">下面的</span><span lang="EN-US">Restaurants.java</span><span style="font-family: 宋体">实例的摘录创建了一个菜单调用电话程序打电话给餐厅</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; margin-left: 5.25pt; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem phoneItem = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MenuItem(_resources.getString(MENUITEM_PHONE), 110, 12) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> run() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">synchronized</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(store) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>String phoneNumber = phonefield.getText();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ( phoneNumber.length == 0 ) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160; </span>Dialog.alert(_resources.getString(ALERT_NO_PHONENUMBER));</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">else</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> { </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>PhoneArguments call = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> PhoneArguments(PhoneArguments.ARG_CALL,</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>phoneNumber);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Invoke.invokeApplication(Invoke.APP_TYPE_PHONE, call); </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">};</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h2><a name="_Toc155243144"><span style="color: #333399; font-family: 黑体">加入一个菜单项到</span></a><span><span lang="EN-US" style="color: #333399">Blackberry</span></span><span><span style="color: #333399; font-family: 黑体">应用程序中</span></span><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h2>
<p class="MsoNormal"><span style="font-family: 宋体">应用程序菜单项</span><span lang="EN-US">API</span><span style="font-family: 宋体">在</span><span lang="EN-US">net.rim.blackberry.api.menuitem</span><span style="font-family: 宋体">包中</span><span lang="EN-US">.</span><span style="font-family: 宋体">它使你可以增加一个菜单项到</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">应用程序中</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">例如</span><span lang="EN-US">,</span><span style="font-family: 宋体">为了将一个客户关系管理程序集成到</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">地址本程序中</span><span lang="EN-US">,</span><span style="font-family: 宋体">加入一个</span><strong><span lang="EN-US">View Sales Order</span></strong><span style="font-family: 宋体">菜单项</span><span lang="EN-US">.</span><span style="font-family: 宋体">当用户单击</span><strong><span lang="EN-US">View Sales Order</span></strong><span style="font-family: 宋体">菜单项时</span><span lang="EN-US">,</span><span style="font-family: 宋体">应用程序将打开此联系人的销售订单列表</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US">ApplicationMenuItemRepository</span><span style="font-family: 宋体">类让你可以加入或删除应用程序菜单项</span><span lang="EN-US">.</span><span style="font-family: 宋体">它提供一些常量来定义一个菜单项显示的应用程序上下文</span><span lang="EN-US">.</span><span style="font-family: 宋体">例如</span><span lang="EN-US">, </span><span style="font-family: 宋体">当一个消息窗口打开时</span><span lang="EN-US">,ApplicationMenuItemRepository.MENUITEM_MESSAGE_LIST</span><span style="font-family: 宋体">常量指定了显示的菜单项</span><span lang="EN-US">.</span></p>
<p class="MsoNormal"><span lang="EN-US">ApplicationMenuItem</span><span style="font-family: 宋体">抽象类定义了一个在应用程序菜单里显示的菜单项</span><span lang="EN-US">.</span></p>
<h3><a name="_Toc155243145"><span style="color: #333399; font-family: 宋体">创建一个菜单项</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">扩展</span><span lang="EN-US"> ApplicationMenuItem </span><span style="font-family: 宋体">抽象类</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; margin-left: 10.5pt; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> SampleMenuItem </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">extends</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ApplicationMenuItem</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">{ </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>&#8230; </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">指定菜单项在菜单的位置</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">你可以选择性的覆盖构造子</span><span lang="EN-US">.</span><span style="font-family: 宋体">在下面的代码实例中</span><span lang="EN-US">,</span><span style="font-family: 宋体">构造子调用了</span><span lang="EN-US">ApplicationMenuItem(),</span><span style="font-family: 宋体">它带有一个菜单项在菜单里的相对位置</span><span lang="EN-US">.(</span><span style="font-family: 宋体">一个较大的数字意味着菜单项在菜单的较低位置</span><span lang="EN-US">).</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; margin-left: 10.5pt; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">SampleMenuItem() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">super</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(20);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal" style="margin-left: 10.5pt"><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">指定菜单项的文本</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span lang="EN-US">toString()</span><span style="font-family: 宋体">的实现指定了菜单项在菜单中显示的文本</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; margin-left: 10.5pt; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String toString() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Open the Contacts Demo application&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><strong><span lang="EN-US" style="color: #333399"><o:p>&#160;</o:p></span></strong></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">指定菜单项的行为</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span lang="EN-US">run()</span><span style="font-family: 宋体">的实现指定了某个菜单项的行为</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; margin-left: 10.5pt; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Object run(Object context) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>Contact c = (Contact)context; </span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// An error if this does not work.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ( c ! </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ContactsDemo().enterEventDispatcher();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">else</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">throw</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> IllegalStateException( </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Context is null, expected a Contact instance&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">Dialog.alert(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Viewing a message in the messaging view&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc155243146"><span style="color: #333399; font-family: 宋体">注册应用程序菜单项</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">获取应用程序菜单项库</span><span lang="EN-US" style="color: #333399">(repository)<o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">调用</span><span lang="EN-US"> ApplicationMenuItemRepository.getInstance().</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">ApplicationMenuItemRepository repository = </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>ApplicationMenuItemRepository.getInstance();</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">定义一个唯一值</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">使用包名的哈希值作为应用程序菜单项库的唯一</span><span lang="EN-US">ID.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-indent: 10.05pt"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ID = 0&#215;7cab1e23b72a0033L; <o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent: 10pt"><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Hash of com.rim.samples.docs.menuitem.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">创建应用程序菜单项</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">调用构造函数</span><span lang="EN-US">.</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">TestApplicationMenuItem tami = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> TestApplicationMenuItem();</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">加入一个菜单项到菜单库</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">调用</span><span lang="EN-US">addMenuItem().</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">repository.addMenuItem(ApplicationMenuItemRepository.MENUITEM_ADDRESSCARD_VIEW, tami);</span><span lang="EN-US" style="font-family: &#39;andale mono&#39;"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc155243147"><span style="color: #333399; font-family: 宋体">代码实例</span></a><span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">当用户在地址本里查看一个联系人时</span><span lang="EN-US">,</span><span style="font-family: 宋体">下面的代码将创建一个菜单项</span><span lang="EN-US">.</span><span style="font-family: 宋体">当用户点击此菜单项</span><span lang="EN-US">, </span><span style="font-family: 宋体">将显示</span><span lang="EN-US">Contacts Demo</span><span style="font-family: 宋体">程序</span><span lang="EN-US">.</span></p>
<hr style="width: 100%; height: 2px" /><strong><span lang="EN-US" style="font-family: &#39;andale mono&#39;"></span></strong><strong><span style="font-family: 宋体">例</span><span lang="EN-US">: DemoAppMenuItem.java<o:p></o:p></span></strong>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">/**</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">*</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">DemoApplicationMenuItem.java</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">*</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Copyright</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">(C)</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">2003</span><span lang="EN-US" style="font-size: 10pt; color: #7f7f9f; font-family: &#39;courier new&#39;">-</span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">2005</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Research</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">In</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Motion</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Limited.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">*/</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">package</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> com.rim.samples.docs.menuitem;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.system.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.ui.component.Dialog.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.blackberry.api.menuitem.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> javax.microedition.pim.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.pdap.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> com.rim.samples.docs.contactsdemo.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> DemoAppMenuItem </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">extends</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Application { </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">long</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><em><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">ID</span></em><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = 0&#215;7cab1e23b72a0033L; </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">//com.rim.samples.docs.menuitem </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> main(String[] args) { </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>DemoAppMenuItem app = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> DemoAppMenuItem(); </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>app.enterEventDispatcher(); </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>DemoAppMenuItem() { </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>ApplicationMenuItemRepository amir = </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>ApplicationMenuItemRepository.getInstance(); </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>amir.addMenuItem(ApplicationMenuItemRepository.MENUITEM_ADDRESSCARD_VIEW, </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> SampleMenuItem()); </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;&#160;&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> SampleMenuItem </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">extends</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ApplicationMenuItem { </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>SampleMenuItem() { </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">super</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(20); </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> String toString() { </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Open the Contacts Demo&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">; </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Object run(Object context) { </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>BlackBerryContact c = (BlackBerryContact)context; </span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">//an error if this doesn&#8217;t work </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ( c != </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> ContactsDemo().enterEventDispatcher(); </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">else</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> { </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">throw</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> IllegalStateException( </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Context is null, expected a Contact instance&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>net.rim.device.api.ui.component.Dialog.alert(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Viewing an email message in the email view&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">; </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p> <span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}   <br /></span><br />
<hr style="width: 100%; height: 2px" /><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">Last Updated:2007年2月1日   <br /></span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.inblackberry.com/web/development/docs/developer-guide-application-communication.html/feed</wfw:commentRss>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 6.375 seconds -->
