﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-让变化成为计划的一部分-随笔分类-J2ME</title><link>http://www.blogjava.net/zhengyun/category/4340.html</link><description>欢迎大家探讨本Blog涉及的所有软件课题。我的Google Talk ID：zhengyun(at)gmail.com。&lt;p/&gt;
我最希望软件带给用户的感受是：美好的体验、舒适感、简约、干净...</description><language>zh-cn</language><lastBuildDate>Fri, 02 Mar 2007 03:32:17 GMT</lastBuildDate><pubDate>Fri, 02 Mar 2007 03:32:17 GMT</pubDate><ttl>60</ttl><item><title> [J2ME] BloglinesMobileBuddy开源说明</title><link>http://www.blogjava.net/zhengyun/archive/2005/12/27/bloglinesbuddy4.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Tue, 27 Dec 2005 07:34:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/12/27/bloglinesbuddy4.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/25582.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/12/27/bloglinesbuddy4.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/25582.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/25582.html</trackback:ping><description><![CDATA[<TABLE class=MsoNormalTable style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; MARGIN-LEFT: 14.75pt; BORDER-LEFT: medium none; WIDTH: 93.66%; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: solid white .5pt; mso-yfti-tbllook: 480; mso-padding-alt: .7pt 5.75pt .7pt 5.75pt; mso-border-insideh: .5pt solid white; mso-border-insidev: .5pt solid white" cellSpacing=0 cellPadding=0 width="93%" border=1>
<TBODY>
<TR style="HEIGHT: 10.9pt; mso-yfti-irow: 0; mso-yfti-firstrow: yes">
<TD style="BORDER-RIGHT: medium none; PADDING-RIGHT: 5.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 5.75pt; BACKGROUND: #9faccb; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: white 1pt solid; WIDTH: 261pt; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 10.9pt; mso-border-top-alt: solid white .5pt; mso-border-left-alt: solid white .5pt; mso-border-bottom-alt: solid white .5pt" vAlign=top width=348>
<P class=MsoNormal style="TEXT-ALIGN: center" align=center><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">郑昀</SPAN><SPAN lang=EN-US>@ultrapower</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="mso-fareast-language: JA"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></B></P></TD>
<TD style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 5.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 5.75pt; BACKGROUND: #9faccb; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: white 1pt solid; WIDTH: 110.2pt; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 10.9pt; mso-border-alt: solid white .5pt" vAlign=top width=147>
<P class=MsoNormal style="TEXT-ALIGN: center" align=center><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">产品名称</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="mso-fareast-language: JA"><o:p></o:p></SPAN></B></P></TD>
<TD style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 5.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 5.75pt; BACKGROUND: #9faccb; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: medium none; WIDTH: 90.95pt; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 10.9pt; mso-border-alt: solid white .5pt; mso-border-left-alt: solid white .5pt" vAlign=top width=121>
<P class=MsoNormal style="TEXT-ALIGN: center" align=center><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">产品版本</SPAN><SPAN lang=EN-US><o:p></o:p></SPAN></B></P></TD></TR>
<TR style="HEIGHT: 15.45pt; mso-yfti-irow: 1; mso-yfti-lastrow: yes">
<TD style="BORDER-RIGHT: medium none; PADDING-RIGHT: 5.75pt; BORDER-TOP: medium none; PADDING-LEFT: 5.75pt; BACKGROUND: #e6e6e6; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: white 1pt solid; WIDTH: 261pt; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 15.45pt; mso-border-top-alt: solid white .5pt; mso-border-left-alt: solid white .5pt; mso-border-bottom-alt: solid white .5pt" vAlign=top width=348>
<P class=MsoNormal style="MARGIN-RIGHT: 7.5pt"><SPAN lang=EN-US style="COLOR: gray; FONT-FAMILY: Arial">Keyword: Mobile RSS Bloglines<o:p></o:p></SPAN></P></TD>
<TD style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 5.75pt; BORDER-TOP: medium none; PADDING-LEFT: 5.75pt; BACKGROUND: #e6e6e6; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: white 1pt solid; WIDTH: 110.2pt; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 15.45pt; mso-border-alt: solid white .5pt; mso-border-top-alt: solid white .5pt" vAlign=top width=147>
<P class=MsoNormal style="TEXT-ALIGN: center" align=center><B><SPAN lang=EN-US style="COLOR: black; FONT-FAMILY: Verdana">BloglinesMobileBuddy</SPAN></B><SPAN lang=EN-US style="FONT-FAMILY: Arial; mso-bidi-font-size: 10.5pt"><o:p></o:p></SPAN></P></TD>
<TD style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 5.75pt; BORDER-TOP: medium none; PADDING-LEFT: 5.75pt; BACKGROUND: #e6e6e6; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: medium none; WIDTH: 90.95pt; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 15.45pt; mso-border-alt: solid white .5pt; mso-border-top-alt: solid white .5pt; mso-border-left-alt: solid white .5pt" vAlign=top width=121>
<P class=MsoNormal><SPAN lang=EN-US style="FONT-FAMILY: Arial; mso-bidi-font-size: 10.5pt">1.0.12<o:p></o:p></SPAN></P></TD></TR></TBODY></TABLE>
<P class=MsoNormal style="TEXT-ALIGN: right" align=right><B><SPAN lang=EN-US style="FONT-SIZE: 24pt; COLOR: gray; mso-color-alt: #333333; text-effect: emboss"><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>[J2ME]</SPAN></B><SPAN lang=EN-US> </SPAN><B><SPAN lang=EN-US style="FONT-SIZE: 24pt; COLOR: gray; mso-color-alt: #333333; text-effect: emboss">BloglinesMobileBuddy<o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="TEXT-ALIGN: right" align=right><B><SPAN lang=EN-US style="FONT-SIZE: 24pt; COLOR: gray; mso-color-alt: #333333; text-effect: emboss">(Bloglines</SPAN></B><B><SPAN style="FONT-SIZE: 24pt; COLOR: gray; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-color-alt: #333333; text-effect: emboss">手机伴侣</SPAN></B><B><SPAN lang=EN-US style="FONT-SIZE: 24pt; COLOR: gray; mso-color-alt: #333333; text-effect: emboss">)<o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="TEXT-ALIGN: right" align=right><B><SPAN style="FONT-SIZE: 24pt; COLOR: gray; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-color-alt: #333333; text-effect: emboss">开源说明</SPAN></B><B><SPAN lang=EN-US style="FONT-SIZE: 24pt; COLOR: gray; mso-color-alt: #333333; text-effect: emboss"><o:p></o:p></SPAN></B></P>
<P class=MsoNormal><SPAN lang=EN-US><o:p>&nbsp;</o:p></SPAN></P>
<P class=MsoNormal><B style="mso-bidi-font-weight: normal"><SPAN style="COLOR: blue; FONT-FAMILY: 新宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">我的资源：</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="COLOR: blue; FONT-FAMILY: Arial; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-fareast-font-family: 新宋体"><o:p></o:p></SPAN></B></P>
<P class=MsoNormal><SPAN lang=EN-US><A href="http://www.cnblogs.com/Files/zhengyun_ustc/BloglinesMobile-src.rar">http://www.cnblogs.com/Files/zhengyun_ustc/BloglinesMobile-src.rar</A></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">虽然还有这样那样的问题，但是作为一个</SPAN><SPAN lang=EN-US>Alpha</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">版本的</SPAN><SPAN lang=EN-US>j2me</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">软件，能够在</SPAN><SPAN lang=EN-US>Nokia S60</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">系列手机上运行，这样已经足够了，所以先放出源代码，希望抛砖引玉吸引有志者继续在此基础上修改。</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US style="mso-bidi-font-size: 10.5pt"><A href="http://www.cnblogs.com/Files/zhengyun_ustc/flickrBuddy.rar"><SPAN style="COLOR: #1d58d1; TEXT-DECORATION: none; text-underline: none">http://www.cnblogs.com/Files/zhengyun_ustc/flickrBuddy.rar</SPAN></A><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana; mso-bidi-font-size: 10.5pt">服务器端的</SPAN><SPAN lang=EN-US style="FONT-FAMILY: Verdana; mso-bidi-font-size: 10.5pt">web service</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana; mso-bidi-font-size: 10.5pt">已经能够发布</SPAN><SPAN lang=EN-US style="FONT-FAMILY: Verdana; mso-bidi-font-size: 10.5pt">alpha</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana; mso-bidi-font-size: 10.5pt">版本了，请在下载。这是一个</SPAN><SPAN lang=EN-US style="FONT-FAMILY: Verdana; mso-bidi-font-size: 10.5pt">tomcat+axis</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana; mso-bidi-font-size: 10.5pt">搭建环境下的</SPAN><SPAN lang=EN-US style="FONT-FAMILY: Verdana; mso-bidi-font-size: 10.5pt">java web service</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana; mso-bidi-font-size: 10.5pt">。</SPAN><SPAN lang=EN-US style="FONT-FAMILY: Verdana; mso-bidi-font-size: 10.5pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">提请注意的是，由于本源代码中包含了</SPAN><SPAN lang=EN-US>bluegammon/jmobilecore/henson.midp.Float/Zohar Melamed’s Jbloglines</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">等开放源代码库，所以我也遵循</SPAN><SPAN lang=EN-US>GPL</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">协议，请看后面的“开源版权声明”。</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><o:p><SPAN lang=EN-US><o:p></P>
<P class=MsoNormal><SPAN lang=EN-US><A href="http://www.cnblogs.com/Files/zhengyun_ustc/BloglinesMobile-deployed.rar">http://www.cnblogs.com/Files/zhengyun_ustc/BloglinesMobile-deployed.rar</A> </SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>Nokia S60</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">系列安装程序，用数据线传</SPAN><SPAN lang=EN-US>BloglinesMobile.jar</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">到您的手机上即可安装。</SPAN></P></o:p></SPAN></o:p></SPAN>
<P class=MsoNormal style="TEXT-ALIGN: left; mso-line-height-alt: 11.9pt; mso-pagination: widow-orphan" align=left><B><SPAN style="FONT-SIZE: 16pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">测试体验</SPAN></B><B><SPAN lang=EN-US style="FONT-SIZE: 16pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt"><o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="TEXT-ALIGN: left; mso-pagination: widow-orphan" align=left><SPAN style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">我在</SPAN><SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt">Nokia 7610</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">上测试过了，整体视觉效果还是不错的，而且登录和阅读速度还是蛮快的。昨晚上，在手机上竟然踏踏实实把按摩乳的《</SPAN><B><SPAN lang=EN-US style="COLOR: #1393c0; FONT-FAMILY: Verdana"><A title=網站﹕按摩乳 href="http://lydon.yculblog.com/post.1021496.html" target=_blank><SPAN lang=EN-US style="COLOR: #1393c0; FONT-FAMILY: 宋体; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana"><SPAN lang=EN-US>让小强真正来一次历险</SPAN></SPAN></A></SPAN></B><SPAN style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">》和《</SPAN><B><SPAN lang=EN-US style="COLOR: #1393c0; FONT-FAMILY: Verdana"><A title=網站﹕按摩乳 href="http://lydon.yculblog.com/post.1020668.html" target=_blank><SPAN lang=EN-US style="COLOR: #1393c0; FONT-FAMILY: 宋体; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana"><SPAN lang=EN-US>正面新闻</SPAN></SPAN></A></SPAN></B><SPAN style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">》共计七千七百余字的网志看完了，呵呵，不得不佩服</SPAN><SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt">Nokia7610</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">的内存够大的，竟然还能够流畅地显示。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><o:p>&nbsp;<IMG id=ViewPicture1_GalleryImage style="BORDER-RIGHT: black 2px solid; BORDER-TOP: black 2px solid; BORDER-LEFT: black 2px solid; WIDTH: 259px; BORDER-BOTTOM: black 2px solid; HEIGHT: 480px" alt=bloglinesbuddy.myfeeds src="http://www.cnblogs.com/images/cnblogs_com/zhengyun_ustc/44059/r_bloglinesbuddy.myfeeds.JPG"> <IMG id=ViewPicture1_GalleryImage style="BORDER-RIGHT: black 2px solid; BORDER-TOP: black 2px solid; BORDER-LEFT: black 2px solid; WIDTH: 244px; BORDER-BOTTOM: black 2px solid; HEIGHT: 404px" alt=bloglinesbuddy.getitems src="http://www.cnblogs.com/images/cnblogs_com/zhengyun_ustc/44059/r_bloglinesbuddy.getitems.JPG"> </o:p></SPAN></P>
<P class=MsoNormal style="TEXT-ALIGN: left; mso-line-height-alt: 11.9pt; mso-pagination: widow-orphan" align=left><B><SPAN style="FONT-SIZE: 16pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">为什么要为</SPAN></B><B><SPAN lang=EN-US style="FONT-SIZE: 16pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt"><A href="http://www.bloglines.com/myblogs">Bloglines</A></SPAN></B><B><SPAN style="FONT-SIZE: 16pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">制作无线阅读软件呢？</SPAN></B><B><SPAN lang=EN-US style="FONT-SIZE: 16pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt"><o:p></o:p></SPAN></B></P>
<P class=MsoNormal><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">在</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">2005</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">年</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">10</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">月，</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">Web 2.0 Conference</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">最后一天的会议上，</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">Ask Jeeves</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">的一位副董事长公布了旗下</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN"><A href="http://www.bloglines.com/myblogs">Bloglines<SPAN lang=EN-US style="FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial"><SPAN lang=EN-US>网站</SPAN></SPAN></A></SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">的一些</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN"><A href="http://blog.searchenginewatch.com/blog/ppt/web2_aj_bloglines.ppt" target=_blank><SPAN lang=EN-US style="FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial"><SPAN lang=EN-US>最新数据</SPAN></SPAN></A>(PPT</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">格式</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">)</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">，这些数据也可以从另一个方面体现出目前</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">RSS</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">的使用状况。</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">- </SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">有超过</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">135</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">万条</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">Feed</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">至少有一个订阅者。</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">- 14,363</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">条</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">Feed</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">的订阅者超过</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">50</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">人。</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">- 437</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">条</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">Feed</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">的订阅者在</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">1000</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">人以上。</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">- 60</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">条</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">Feed</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">有</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">5000</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">人以上订阅。</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">- Slashdot</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">是唯一订阅者超过</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">50000</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">人的</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">Feed</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">。</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN"><A href="http://www.bloglines.com/myblogs">Bloglines</A></SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">是目前使用最为广泛的在线</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">RSS</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">阅读服务之一，这么多的订阅者，他们也许需要在无线条件下阅读</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN">Bloglines</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN">提供的服务，所以我制作了这款手机程序。</SPAN><SPAN lang=EN style="FONT-SIZE: 12pt; COLOR: #111111; FONT-FAMILY: Arial; mso-ansi-language: EN"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><o:p>&nbsp;</o:p></SPAN></P>
<P class=MsoNormal style="TEXT-ALIGN: left; mso-line-height-alt: 11.9pt; mso-pagination: widow-orphan" align=left><A name=N100D6><B><SPAN lang=EN-US style="FONT-SIZE: 16pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt">Bloglines&nbsp;</SPAN></B></A><SPAN style="mso-bookmark: N100D6"><B><SPAN style="FONT-SIZE: 16pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">是什么</SPAN></B></SPAN><SPAN style="mso-bookmark: N100D6"><B><SPAN lang=EN-US style="FONT-SIZE: 16pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt"> </SPAN></B></SPAN><B><SPAN lang=EN-US style="FONT-SIZE: 16pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt"><o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="TEXT-ALIGN: left; mso-pagination: widow-orphan" align=left><SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt"><A href="http://www.bloglines.com/myblogs">Bloglines</A> </SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">是一个全球最抢眼的基于</SPAN><SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt">Web</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">的</SPAN><SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt">blog</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">订阅跟踪服务之一，它允许个人对</SPAN><SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt"> weblog </SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">和新闻的各种订阅保持跟踪，这些订阅内容以</SPAN><SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt"> Really Simple Syndication</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">（</SPAN><SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt">RSS</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">）和</SPAN><SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt"> Atom </SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">提供的形式交付。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal style="TEXT-ALIGN: left; mso-pagination: widow-orphan" align=left><SPAN style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">我每天第一件事情就是打开</SPAN><SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt">bloglines</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">，看看我订阅的</SPAN><SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt">21</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">个资料库有没有更新他们的</SPAN><SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt">blog</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt">21</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">个资料库，是不是少了点？我也曾经看过其他人有过成千上万个资料库，不过，我感觉其中</SPAN><SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt">80%</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">的</SPAN><SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt">blog</SPAN><SPAN style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial">其实不值得逐日跟踪。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><o:p>&nbsp;<IMG id=ViewPicture1_GalleryImage style="BORDER-RIGHT: black 2px solid; BORDER-TOP: black 2px solid; BORDER-LEFT: black 2px solid; WIDTH: 640px; BORDER-BOTTOM: black 2px solid; HEIGHT: 381px" alt=bloglines.web.keso src="http://www.cnblogs.com/images/cnblogs_com/zhengyun_ustc/44059/r_bloglines.web.keso.JPG"> </o:p></SPAN></P>
<H1 style="MARGIN: 12pt 0cm; LINE-HEIGHT: normal"><SPAN style="FONT-FAMILY: 黑体; mso-ascii-font-family: 'Times New Roman'">开源版权声明</SPAN><SPAN lang=EN-US style="mso-fareast-font-family: 黑体"><o:p></o:p></SPAN></H1>
<P class=MsoNormal style="MARGIN-LEFT: 21pt; TEXT-INDENT: 21pt"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 10.5pt; mso-bidi-font-family: Arial">由于我这个版本的</SPAN><SPAN style="FONT-FAMILY: Arial; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 10.5pt"> </SPAN><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-FAMILY: Arial; mso-bidi-font-size: 10.5pt">Bloglines Mobile Buddy</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 10.5pt; mso-bidi-font-family: Arial">手机伴侣</SPAN></B><SPAN style="FONT-FAMILY: Arial; mso-bidi-font-size: 10.5pt"> </SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 10.5pt; mso-bidi-font-family: Arial">也是基于</SPAN><SPAN lang=EN-US>bluegammon/jmobilecore/henson.midp.Float/Zohar Melamed’s Jbloglines</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">等</SPAN><SPAN style="COLOR: #333333; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 10.5pt; mso-bidi-font-family: Arial">基础上加入我的智慧整合而来的，所以决定遵照</SPAN><SPAN lang=EN-US style="COLOR: #333333; FONT-FAMILY: Arial; mso-bidi-font-size: 10.5pt">GPL</SPAN><SPAN style="COLOR: #333333; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 10.5pt; mso-bidi-font-family: Arial">协议的大意开放源代码，您可以自由传播和修改，在遵照下面的约束条件的前提下：</SPAN><SPAN lang=EN-US style="COLOR: #333333; FONT-FAMILY: Arial; mso-bidi-font-size: 10.5pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal style="TEXT-INDENT: 21pt"><SPAN lang=EN-US style="FONT-FAMILY: Arial; mso-hansi-font-family: ˎ̥; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt"><o:p>&nbsp;</o:p></SPAN></P>
<TABLE class=MsoNormalTable style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; MARGIN-LEFT: 23.75pt; BORDER-LEFT: medium none; WIDTH: 94.86%; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: solid white .5pt; mso-yfti-tbllook: 480; mso-padding-alt: .7pt 5.75pt .7pt 5.75pt; mso-border-insideh: .5pt solid white; mso-border-insidev: .5pt solid white" cellSpacing=0 cellPadding=0 width="94%" border=1>
<TBODY>
<TR style="HEIGHT: 10.9pt; mso-yfti-irow: 0; mso-yfti-firstrow: yes">
<TD style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 5.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 5.75pt; BACKGROUND: #9faccb; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: white 1pt solid; WIDTH: 468.05pt; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 10.9pt; mso-border-alt: solid white .5pt" vAlign=top width=624>
<P class=MsoNormal><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 10.5pt">条件</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="mso-bidi-font-size: 10.5pt">1<o:p></o:p></SPAN></B></P></TD></TR>
<TR style="HEIGHT: 15.45pt; mso-yfti-irow: 1; mso-yfti-lastrow: yes">
<TD style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 5.75pt; BORDER-TOP: medium none; PADDING-LEFT: 5.75pt; BACKGROUND: #e6e6e6; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: white 1pt solid; WIDTH: 468.05pt; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 15.45pt; mso-border-alt: solid white .5pt; mso-border-top-alt: solid white .5pt" vAlign=top width=624>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">只要你在</SPAN><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-FAMILY: Arial; mso-bidi-font-size: 10.5pt">Bloglines Mobile Buddy</SPAN></B><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">的</SPAN><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">每一副本上明显和恰当地出版版权声明，保持此许可证的声明和没有担保的声明完整无损，并和程序一起给每个其他的程序接受者一份许可证的副本，你就可以用任何媒体复制和发布你收到的原始的程序的源代码。你可以为转让副本的实际行动收取一定费用，但必须事先得到郑昀的同意。</SPAN><SPAN lang=EN-US style="FONT-FAMILY: Arial; mso-bidi-font-size: 10.5pt"><o:p></o:p></SPAN></P></TD></TR></TBODY></TABLE>
<P class=MsoNormal style="TEXT-INDENT: 21pt"><SPAN lang=EN-US style="FONT-FAMILY: Arial; mso-hansi-font-family: ˎ̥; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt"><o:p>&nbsp;</o:p></SPAN></P>
<TABLE class=MsoNormalTable style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; MARGIN-LEFT: 23.75pt; BORDER-LEFT: medium none; WIDTH: 94.86%; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: solid white .5pt; mso-yfti-tbllook: 480; mso-padding-alt: .7pt 5.75pt .7pt 5.75pt; mso-border-insideh: .5pt solid white; mso-border-insidev: .5pt solid white" cellSpacing=0 cellPadding=0 width="94%" border=1>
<TBODY>
<TR style="HEIGHT: 10.9pt; mso-yfti-irow: 0; mso-yfti-firstrow: yes">
<TD style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 5.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 5.75pt; BACKGROUND: #9faccb; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: white 1pt solid; WIDTH: 468.05pt; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 10.9pt; mso-border-alt: solid white .5pt" vAlign=top width=624>
<P class=MsoNormal><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 10.5pt">条件</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="mso-bidi-font-size: 10.5pt">2<o:p></o:p></SPAN></B></P></TD></TR>
<TR style="HEIGHT: 15.45pt; mso-yfti-irow: 1; mso-yfti-lastrow: yes">
<TD style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 5.75pt; BORDER-TOP: medium none; PADDING-LEFT: 5.75pt; BACKGROUND: #e6e6e6; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: white 1pt solid; WIDTH: 468.05pt; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 15.45pt; mso-border-alt: solid white .5pt; mso-border-top-alt: solid white .5pt" vAlign=top width=624>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">你可以修改</SPAN><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-FAMILY: Arial; mso-bidi-font-size: 10.5pt">Bloglines Mobile Buddy</SPAN></B><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">程序的一个或几个副本或程序的任何部分，以此形成基于程序的作品。只要你同时满足下面的所有条件，你就可以按前面第一款的要求复制和发布这一经过修改的程序或作品。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US style="FONT-SIZE: 10pt"><o:p>&nbsp;</o:p></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US style="FONT-SIZE: 10pt">a</SPAN><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10pt"> <o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">你必须在修改的文件中附有明确的说明：你修改了这一文件及具体的修改日期。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US style="FONT-SIZE: 10pt"><o:p>&nbsp;</o:p></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US style="FONT-SIZE: 10pt">b</SPAN><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10pt"> <o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">你必须使你发布或出版的作品（它包含程序的全部或一部分，或包含由程序的全部或部分衍生的作品）允许第三方作为整体按许可证条款免费使用。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US style="FONT-SIZE: 10pt"><o:p>&nbsp;</o:p></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US style="FONT-SIZE: 10pt">c</SPAN><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10pt"> <o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">如果修改的程序在运行时以交互方式读取命令，你必须使它在开始进入常规的交互使用方式时打印或显示声明：包括适当的版权声明和没有担保的声明（或者你提供担保的声明）；用户可以按此许可证条款重新发布程序的说明；并告诉用户如何看到这一许可证的副本。（例外的情况：如果原始程序以交互方式工作，它并不打印这样的声明，你的基于程序的作品也就不用打印声明）。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><o:p></o:p></SPAN></P></TD></TR></TBODY></TABLE>
<P class=MsoNormal style="TEXT-INDENT: 21pt"><SPAN lang=EN-US style="FONT-FAMILY: Arial; mso-hansi-font-family: ˎ̥; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt"><o:p>&nbsp;</o:p></SPAN></P>
<P class=MsoNormal style="TEXT-INDENT: 21pt"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 10.5pt; mso-bidi-font-family: Arial">这样，您就可以自由使用并传播本源代码，当然请您原封不动地保留原作者信息。</SPAN><SPAN lang=EN-US style="FONT-FAMILY: Arial; mso-bidi-font-size: 10.5pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><o:p>&nbsp;</o:p></SPAN></P>
<TABLE class=MsoNormalTable style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 100%; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: solid white .5pt; mso-yfti-tbllook: 480; mso-padding-alt: .7pt 5.75pt .7pt 5.75pt; mso-border-insideh: .5pt solid white; mso-border-insidev: .5pt solid white" cellSpacing=0 cellPadding=0 width="100%" border=1>
<TBODY>
<TR style="HEIGHT: 10.9pt; mso-yfti-irow: 0; mso-yfti-firstrow: yes">
<TD style="BORDER-RIGHT: medium none; PADDING-RIGHT: 5.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 5.75pt; BACKGROUND: #9faccb; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: white 1pt solid; WIDTH: 23.74%; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 10.9pt; mso-border-top-alt: solid white .5pt; mso-border-left-alt: solid white .5pt; mso-border-bottom-alt: solid white .5pt" vAlign=top width="23%">
<P class=MsoNormal style="MARGIN-RIGHT: 7.5pt"><SPAN style="COLOR: gray; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: Arial">编写者</SPAN><SPAN lang=EN-US style="COLOR: gray; FONT-FAMILY: Arial"><o:p></o:p></SPAN></P></TD>
<TD style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 5.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 5.75pt; BACKGROUND: #9faccb; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: white 1pt solid; WIDTH: 28.84%; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 10.9pt; mso-border-alt: solid white .5pt" vAlign=top width="28%">
<P class=MsoNormal style="MARGIN-RIGHT: 7.5pt"><SPAN style="COLOR: gray; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: Arial">日期</SPAN><SPAN lang=EN-US style="COLOR: gray; FONT-FAMILY: Arial"><o:p></o:p></SPAN></P></TD>
<TD style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 5.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 5.75pt; BACKGROUND: #9faccb; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: medium none; WIDTH: 47.42%; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 10.9pt; mso-border-alt: solid white .5pt; mso-border-left-alt: solid white .5pt" vAlign=top width="47%">
<P class=MsoNormal style="MARGIN-RIGHT: 7.5pt"><SPAN style="COLOR: gray; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: Arial">关键词</SPAN><SPAN lang=EN-US style="COLOR: gray; FONT-FAMILY: Arial"><o:p></o:p></SPAN></P></TD></TR>
<TR style="HEIGHT: 15.45pt; mso-yfti-irow: 1; mso-yfti-lastrow: yes">
<TD style="BORDER-RIGHT: medium none; PADDING-RIGHT: 5.75pt; BORDER-TOP: medium none; PADDING-LEFT: 5.75pt; BACKGROUND: #e6e6e6; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: white 1pt solid; WIDTH: 23.74%; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 15.45pt; mso-border-top-alt: solid white .5pt; mso-border-left-alt: solid white .5pt; mso-border-bottom-alt: solid white .5pt" vAlign=top width="23%">
<P class=MsoNormal style="MARGIN-RIGHT: 7.5pt"><SPAN style="COLOR: gray; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: Arial">郑昀</SPAN><SPAN lang=EN-US style="COLOR: gray; FONT-FAMILY: Arial">@ultrapower<o:p></o:p></SPAN></P></TD>
<TD style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 5.75pt; BORDER-TOP: medium none; PADDING-LEFT: 5.75pt; BACKGROUND: #e6e6e6; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: white 1pt solid; WIDTH: 28.84%; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 15.45pt; mso-border-alt: solid white .5pt; mso-border-top-alt: solid white .5pt" vAlign=top width="28%">
<P class=MsoNormal style="MARGIN-RIGHT: 7.5pt"><SPAN lang=EN-US style="COLOR: gray; FONT-FAMILY: Arial">2005-12-27<o:p></o:p></SPAN></P></TD>
<TD style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 5.75pt; BORDER-TOP: medium none; PADDING-LEFT: 5.75pt; BACKGROUND: #e6e6e6; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: medium none; WIDTH: 47.42%; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 15.45pt; mso-border-alt: solid white .5pt; mso-border-top-alt: solid white .5pt; mso-border-left-alt: solid white .5pt" vAlign=top width="47%">
<P class=MsoNormal style="MARGIN-RIGHT: 7.5pt"><SPAN lang=EN-US style="COLOR: gray; FONT-FAMILY: Arial">Mobile <o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN-RIGHT: 7.5pt"><SPAN lang=EN-US style="COLOR: gray; FONT-FAMILY: Arial">RSS READER ONLINE<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN-RIGHT: 7.5pt"><SPAN lang=EN-US style="COLOR: gray; FONT-FAMILY: Arial">BLOGLINES<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN-RIGHT: 7.5pt"><SPAN lang=EN-US style="COLOR: gray; FONT-FAMILY: Arial">Java J2ME<o:p></o:p></SPAN></P></TD></TR></TBODY></TABLE><img src ="http://www.blogjava.net/zhengyun/aggbug/25582.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-12-27 15:34 <a href="http://www.blogjava.net/zhengyun/archive/2005/12/27/bloglinesbuddy4.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>手机上的Soft Keys问题［javaME］</title><link>http://www.blogjava.net/zhengyun/archive/2005/12/26/softkeys.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Mon, 26 Dec 2005 07:16:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/12/26/softkeys.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/25444.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/12/26/softkeys.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/25444.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/25444.html</trackback:ping><description><![CDATA[<P>我的个人观点，不知道对不对（<A href="http://community.csdn.net/Expert/topic/4477/4477765.xml?temp=.6836969">http://community.csdn.net/Expert/topic/4477/4477765.xml?temp=.6836969</A>）：<BR>你所说的KEY_SOFTKEY1,KEY_SOFTKEY2,KEY_SOFTKEY3这几个定义，应该是Ｎｏｋｉａ　ＵＩ　ＡＰＩ中的ＦｕｌｌＣａｎｖａｓ定义的吧？<BR>而ＭＩＤＰ２．０的Ｃａｎｖａｓ规范并没有定义这几个。</P>
<P>请看：<BR>《Series 60 Developer Platform 2.0: Specification v1.0》，<BR>Page 77:<BR>Left soft key, -6, "Left soft key" or left soft-key symbol <BR>Right soft key, -7, "Right soft key" or right soft-key symbol <BR>Middle soft key, -5, "Select", "Middle soft key" or similar symbol<BR>所以我们的Ｎｏｋｉａ、Samsung和SonyEricsson专有程序中会这么定义：<BR>&nbsp;&nbsp;&nbsp; /**<BR>&nbsp;&nbsp;&nbsp;&nbsp; * Key code for the FIRE game action.<BR>&nbsp;&nbsp;&nbsp;&nbsp; */<BR>&nbsp;&nbsp;&nbsp; public static final int KEY_FIRE = -5;</P>
<P>&nbsp;&nbsp;&nbsp; /**<BR>&nbsp;&nbsp;&nbsp;&nbsp; * Key code for left soft key<BR>&nbsp;&nbsp;&nbsp;&nbsp; */<BR>&nbsp;&nbsp;&nbsp; public static final int KEY_SOFT_LEFT = -6;</P>
<P>&nbsp;&nbsp;&nbsp; /**<BR>&nbsp;&nbsp;&nbsp;&nbsp; * Key code for right soft key<BR>&nbsp;&nbsp;&nbsp;&nbsp; */<BR>&nbsp;&nbsp;&nbsp; public static final int KEY_SOFT_RIGHT = -7;<BR>在摩托罗拉专有的程序中则这么定义：<BR>&nbsp;&nbsp;&nbsp; /**<BR>&nbsp;&nbsp;&nbsp;&nbsp; * Key code for the FIRE game action.<BR>&nbsp;&nbsp;&nbsp;&nbsp; */<BR>&nbsp;&nbsp;&nbsp; public static final int KEY_FIRE = 20;</P>
<P>&nbsp;&nbsp;&nbsp; /**<BR>&nbsp;&nbsp;&nbsp;&nbsp; * Key code for left soft key<BR>&nbsp;&nbsp;&nbsp;&nbsp; */<BR>&nbsp;&nbsp;&nbsp; public static final int KEY_SOFT_LEFT = 21;</P>
<P>&nbsp;&nbsp;&nbsp; /**<BR>&nbsp;&nbsp;&nbsp;&nbsp; * Key code for right soft key<BR>&nbsp;&nbsp;&nbsp;&nbsp; */<BR>&nbsp;&nbsp;&nbsp; public static final int KEY_SOFT_RIGHT = 22;<BR>在西门子程序中则这么定义：<BR>&nbsp;&nbsp;&nbsp; /**<BR>&nbsp;&nbsp;&nbsp;&nbsp; * Key code for the FIRE game action.<BR>&nbsp;&nbsp;&nbsp;&nbsp; */<BR>&nbsp;&nbsp;&nbsp; public static final int KEY_FIRE = -26;</P>
<P>&nbsp;&nbsp;&nbsp; /**<BR>&nbsp;&nbsp;&nbsp;&nbsp; * Key code for left soft key<BR>&nbsp;&nbsp;&nbsp;&nbsp; */<BR>&nbsp;&nbsp;&nbsp; public static final int KEY_SOFT_LEFT = -1;</P>
<P>&nbsp;&nbsp;&nbsp; /**<BR>&nbsp;&nbsp;&nbsp;&nbsp; * Key code for right soft key<BR>&nbsp;&nbsp;&nbsp;&nbsp; */<BR>&nbsp;&nbsp;&nbsp; public static final int KEY_SOFT_RIGHT = -4;</P>
<P>Ｓｏｆｔｋｅｙｓ并没有被包含在ＭＩＤＰ２．０的规范中，所以，<BR>如果你非要在手机上使用这几个Ｓｏｆｔｋｅｙｓ，那么请注意手机的差异，你可能需要针对不同款手机分别定义了。<BR><BR></P>
<P>以下对拨打电话的手机按键的定义是在nokia、三星和Motorola（v80/220/300/400/500/600, e398, c650）：</P>
<P>
<DIV class=htmlcode><B>以下内容为程序代码:</B><BR>
<P></P>
<P>/**<BR>&nbsp;&nbsp;&nbsp;&nbsp; * Key code for PHONE_ON key (green button)<BR>&nbsp;&nbsp;&nbsp;&nbsp; */<BR>&nbsp;&nbsp;&nbsp;&nbsp;public static final int KEY_PHONE_ON = -10;</P>
<P></P></DIV>
<P></P>
<P>以下这种定义是在西门子：</P>
<P>
<DIV class=htmlcode><B>以下内容为程序代码:</B><BR>
<P></P>
<P>/**<BR>&nbsp;&nbsp;&nbsp;&nbsp; * Key code for PHONE_ON key (green button)<BR>&nbsp;&nbsp;&nbsp;&nbsp; */<BR>&nbsp;&nbsp;&nbsp;&nbsp;public static final int KEY_PHONE_ON = -11;</P>
<P></P></DIV>
<P></P>
<P>以下这种定义是在Motorola platform phones iDEN, T280, T72x, v6x</P>
<P>
<DIV class=htmlcode><B>以下内容为程序代码:</B><BR>
<P></P>
<P>/**<BR>&nbsp;&nbsp;&nbsp;&nbsp; * Key code for PHONE_ON key (green button)<BR>&nbsp;&nbsp;&nbsp;&nbsp; */<BR>&nbsp;&nbsp;&nbsp;&nbsp;public static final int KEY_PHONE_ON = -14;</P>
<P></P></DIV><img src ="http://www.blogjava.net/zhengyun/aggbug/25444.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-12-26 15:16 <a href="http://www.blogjava.net/zhengyun/archive/2005/12/26/softkeys.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Bloglines手机伴侣 开源开发 纪事[2]</title><link>http://www.blogjava.net/zhengyun/archive/2005/12/25/bloglinesbuddy3.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Sun, 25 Dec 2005 14:55:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/12/25/bloglinesbuddy3.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/25393.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/12/25/bloglinesbuddy3.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/25393.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/25393.html</trackback:ping><description><![CDATA[<P>源代码下载：服务器端的web service已经能够发布alpha版本了，请在<A href="http://www.cnblogs.com/Files/zhengyun_ustc/flickrBuddy.rar">http://www.cnblogs.com/Files/zhengyun_ustc/flickrBuddy.rar</A>下载。这是一个tomcat+axis搭建环境下的java web service。</P>
<P><STRONG>2005年12月25日晚上：</STRONG><BR>今日完成的开发，是点击前面列出的blog订阅源标题，则请求bloglines检索这个特定订阅的博客登录条目。<BR>以弹出式对话框展示文章内容。<BR>下面演示此j2me软件：</P>
<P>第一步，输入你的bloglines登录电子邮件地址：</P>
<P><IMG id=ViewPicture1_GalleryImage style="BORDER-RIGHT: black 2px solid; BORDER-TOP: black 2px solid; BORDER-LEFT: black 2px solid; WIDTH: 269px; BORDER-BOTTOM: black 2px solid; HEIGHT: 478px" alt=bloglines.inputusermail src="http://www.cnblogs.com/images/cnblogs_com/zhengyun_ustc/44059/r_bloglines.inputusermail.JPG">&nbsp;，</P>
<P>然后输入你的登录密码：</P>
<P><IMG id=ViewPicture1_GalleryImage style="BORDER-RIGHT: black 2px solid; BORDER-TOP: black 2px solid; BORDER-LEFT: black 2px solid; WIDTH: 262px; BORDER-BOTTOM: black 2px solid; HEIGHT: 480px" alt=bloglines.inputpassword src="http://www.cnblogs.com/images/cnblogs_com/zhengyun_ustc/44059/r_bloglines.inputpassword.JPG">&nbsp;</P>
<P>然后手机将去bloglines站点检索你所订阅的blog源，并将标题和未读blog条目数显示在界面上，如下所示：</P>
<P><IMG id=ViewPicture1_GalleryImage style="BORDER-RIGHT: black 2px solid; BORDER-TOP: black 2px solid; BORDER-LEFT: black 2px solid; WIDTH: 262px; BORDER-BOTTOM: black 2px solid; HEIGHT: 439px" alt=bloglinesbuddy.myfeeds src="http://www.cnblogs.com/images/cnblogs_com/zhengyun_ustc/44059/r_bloglinesbuddy.myfeeds.JPG"></P>
<P>点击其中一个blog标题，你可以看到该blog的你尚未读过的blog文章集合，如下所示：<BR><IMG id=ViewPicture1_GalleryImage style="BORDER-RIGHT: black 2px solid; BORDER-TOP: black 2px solid; BORDER-LEFT: black 2px solid; WIDTH: 272px; BORDER-BOTTOM: black 2px solid; HEIGHT: 448px" alt=bloglinesbuddy.getitems src="http://www.cnblogs.com/images/cnblogs_com/zhengyun_ustc/44059/r_bloglinesbuddy.getitems.JPG">&nbsp;</P>
<P>与之对照的blog文章如下所示：<BR><IMG id=ViewPicture1_GalleryImage style="BORDER-RIGHT: black 2px solid; BORDER-TOP: black 2px solid; BORDER-LEFT: black 2px solid; WIDTH: 640px; BORDER-BOTTOM: black 2px solid; HEIGHT: 311px" alt=bloglines.web.solidot src="http://www.cnblogs.com/images/cnblogs_com/zhengyun_ustc/44059/r_bloglines.web.solidot.JPG">&nbsp;</P>
<P></P>
<P>更多图片：<BR><IMG id=ViewPicture1_GalleryImage style="BORDER-RIGHT: black 2px solid; BORDER-TOP: black 2px solid; BORDER-LEFT: black 2px solid; WIDTH: 269px; BORDER-BOTTOM: black 2px solid; HEIGHT: 454px" alt=BloglinesBuddy.mainmenu src="http://www.cnblogs.com/images/cnblogs_com/zhengyun_ustc/44059/r_BloglinesBuddy.mainmenu.JPG">&nbsp;&nbsp;&nbsp; <BR><IMG id=ViewPicture1_GalleryImage style="BORDER-RIGHT: black 2px solid; BORDER-TOP: black 2px solid; BORDER-LEFT: black 2px solid; WIDTH: 254px; BORDER-BOTTOM: black 2px solid; HEIGHT: 391px" alt=BloglinesBuddy.about src="http://www.cnblogs.com/images/cnblogs_com/zhengyun_ustc/44059/r_BloglinesBuddy.about.JPG">&nbsp;<FONT face="Times New Roman">&nbsp;</FONT></P><img src ="http://www.blogjava.net/zhengyun/aggbug/25393.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-12-25 22:55 <a href="http://www.blogjava.net/zhengyun/archive/2005/12/25/bloglinesbuddy3.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Bloglines手机伴侣开发纪事[1][j2me] </title><link>http://www.blogjava.net/zhengyun/archive/2005/12/25/bloglinesbuddy2.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Sun, 25 Dec 2005 08:56:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/12/25/bloglinesbuddy2.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/25378.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/12/25/bloglinesbuddy2.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/25378.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/25378.html</trackback:ping><description><![CDATA[<DIV class=postbody>
<P><FONT face="Times New Roman" color=#000000 size=3>2005年12月25日:<BR>制作完成了flickrBuddy web service，可以完成对bloglines api的方便调用。手机客户端则使用kSoap来访<BR></FONT><FONT face="Times New Roman" color=#000000 size=3>问这个flickrBuddy web service来获得用户的bloglines订阅源。<BR>首先，可以看到你的“my feeds”中列出的blog订阅源标题以及未读条目的数目。比如：<BR>Engadget Simplified Chinese[16]<BR>旁观者的奇妙冒险[0]<BR>未完成 - Incomplete[0]<BR>王建硕[0]<BR>车东[Blog^2][0]</FONT></P>
<P><FONT face="Times New Roman" color=#000000 size=3><IMG id=ViewPicture1_GalleryImage style="BORDER-RIGHT: black 2px solid; BORDER-TOP: black 2px solid; BORDER-LEFT: black 2px solid; WIDTH: 262px; BORDER-BOTTOM: black 2px solid; HEIGHT: 439px" alt=bloglinesbuddy.myfeeds src="http://www.cnblogs.com/images/cnblogs_com/zhengyun_ustc/44059/r_bloglinesbuddy.myfeeds.JPG">&nbsp;<BR></P>
<P><FONT face="Times New Roman" color=#000000 size=3>它是利用了<A href="http://www.bloglines.com/myblogs">http://www.bloglines.com/myblogs</A>这个世界上最大的blog订阅源服务提供的服务，请看它的界面：</FONT></P>
<P><IMG id=ViewPicture1_GalleryImage style="BORDER-RIGHT: black 2px solid; BORDER-TOP: black 2px solid; BORDER-LEFT: black 2px solid; WIDTH: 517px; BORDER-BOTTOM: black 2px solid; HEIGHT: 480px" alt=bloglines.webinterface src="http://www.cnblogs.com/images/cnblogs_com/zhengyun_ustc/44059/r_bloglines.webinterface.JPG">&nbsp;</P>
<P>下面是我的“关于”，呵呵，<BR><IMG id=ViewPicture1_GalleryImage style="BORDER-RIGHT: black 2px solid; BORDER-TOP: black 2px solid; BORDER-LEFT: black 2px solid; WIDTH: 254px; BORDER-BOTTOM: black 2px solid; HEIGHT: 391px" alt=BloglinesBuddy.about src="http://www.cnblogs.com/images/cnblogs_com/zhengyun_ustc/44059/r_BloglinesBuddy.about.JPG"> <BR><BR>下一步完成：<BR>点击“Engadget Simplified Chinese[16]”的标题菜单，就可以看到未读的条目全文。</FONT></P></DIV><img src ="http://www.blogjava.net/zhengyun/aggbug/25378.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-12-25 16:56 <a href="http://www.blogjava.net/zhengyun/archive/2005/12/25/bloglinesbuddy2.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Nokia真机测试程序自动退出现象搜集[1][javaME] </title><link>http://www.blogjava.net/zhengyun/archive/2005/12/16/nokiacase1.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Fri, 16 Dec 2005 06:34:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/12/16/nokiacase1.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/24206.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/12/16/nokiacase1.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/24206.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/24206.html</trackback:ping><description><![CDATA[<DIV class=postbody>第一，<BR>下面的代码在索爱机型上可以运行，在nokia s60模拟器上也可以运行，唯独不能在nokia 7610上运行，程序会自动退出：<BR><PRE class=overflow title="pre code"><BR>new Thread(this, "Menu thread").start();<BR></PRE><BR><BR>必须改写为<BR><PRE class=overflow title="pre code"><BR>Thread thread;<BR>(thread = new Thread(this)).start();<BR></PRE><BR>方能在真机上运行。<BR><BR>这种程序自动退出的问题，有时候是因为你根本猜想不到的代码导致的，这时候只能通过二分排除法(不断地注释代码来缩小代码范围)来判定了。 <BR><BR>第二，再譬如说，<BR>你的代码中有对double的使用，比如这种代码：<BR><PRE class=overflow title="pre code"><BR>double alpha = (double)Math.abs(i - m_canvasWidth / 2) /<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (double)m_canvasWidth;<BR></PRE><BR><BR>但是，注意一点，CLDC1.1才开始支持Math，“Math functions in java.lang package is available only since CLDC-1.1”。所以，如果你一旦在CLDC1.0的nokia手机上使用，那么，即使你用了try/catch捕获异常，程序也会自动退出。<BR><BR>这时候你也不要惊诧。 <BR><BR>第三，<BR>Thread thread;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (thread = new Thread(this)).start();代码可以运行。<BR>但是Thread thread;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (thread = new Thread(this, "Menu thread")).start();<BR>就会导致Nokia真机立即退出。<BR>同样，<BR>Thread thread;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (thread = new Thread(new Runnable()<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; public void run()<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m_inputHandler.handleStringInput(input);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }, "inputHandler")).start();<BR>也会导致立即退出。<BR>以上虽然模拟器可以运行，但是真机是不允许的。</DIV><img src ="http://www.blogjava.net/zhengyun/aggbug/24206.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-12-16 14:34 <a href="http://www.blogjava.net/zhengyun/archive/2005/12/16/nokiacase1.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Midletinfo-探索手机javaME系统信息的实用工具</title><link>http://www.blogjava.net/zhengyun/archive/2005/12/07/midletinfo.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Wed, 07 Dec 2005 07:30:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/12/07/midletinfo.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/22873.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/12/07/midletinfo.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/22873.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/22873.html</trackback:ping><description><![CDATA[<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: right" align=right><B><SPAN lang=EN-US style="FONT-SIZE: 24pt; COLOR: gray; mso-color-alt: #333333; text-effect: emboss">Midletinfo<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: right" align=right><B><SPAN style="FONT-SIZE: 24pt; COLOR: gray; FONT-FAMILY: 宋体; mso-color-alt: #333333; text-effect: emboss; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">探索手机</SPAN></B><B><SPAN lang=EN-US style="FONT-SIZE: 24pt; COLOR: gray; mso-color-alt: #333333; text-effect: emboss"><o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: right" align=right><B><SPAN lang=EN-US style="FONT-SIZE: 24pt; COLOR: gray; mso-color-alt: #333333; text-effect: emboss">javaME</SPAN></B><B><SPAN style="FONT-SIZE: 24pt; COLOR: gray; FONT-FAMILY: 宋体; mso-color-alt: #333333; text-effect: emboss; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">系统信息的实用工具</SPAN></B><B><SPAN lang=EN-US style="FONT-SIZE: 24pt; COLOR: gray; mso-color-alt: #333333; text-effect: emboss"><o:p></o:p></SPAN></B></P>
<H2 style="MARGIN: 13pt 0cm"><SPAN style="FONT-SIZE: 15pt; LINE-HEIGHT: 173%; FONT-FAMILY: 黑体; mso-ascii-font-family: Arial; mso-bidi-font-size: 16.0pt">摘要：</SPAN><SPAN lang=EN-US style="FONT-SIZE: 15pt; LINE-HEIGHT: 173%; mso-bidi-font-size: 16.0pt"><o:p></o:p></SPAN></H2>
<P class=MsoBodyTextIndent2 style="MARGIN: 0cm 0cm 0pt; mso-char-indent-count: 0"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt">本文档帮你了解实用工具</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">midletinfo</SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt">，简单地说，它发掘了</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">javaME</SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt">所能得到的大多数系统信息，对试图将自己的程序在不同款手机上运行的开发者会很有帮助的。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></P>
<H1 style="MARGIN: 12pt 0cm; LINE-HEIGHT: normal"><A name=_1概述></A><SPAN lang=EN-US style="mso-fareast-font-family: 黑体">1</SPAN><SPAN style="FONT-FAMILY: 黑体; mso-ascii-font-family: 'Times New Roman'">背景</SPAN><SPAN lang=EN-US style="mso-fareast-font-family: 黑体"><o:p></o:p></SPAN></H1>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p>&nbsp;</o:p></SPAN></P>
<H2 style="MARGIN: 13pt 0cm"><SPAN lang=EN-US><FONT face=Arial>1.1. </FONT></SPAN><SPAN style="FONT-FAMILY: 黑体; mso-ascii-font-family: Arial">下载</SPAN></H2>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.1pt; mso-char-indent-count: 2.0"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 10.5pt; COLOR: #ff6600; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt">下载链接：</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: #ff6600; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><A href="http://jmobilecore.sourceforge.net/midletinfo/index.html">http://jmobilecore.sourceforge.net/midletinfo/index.html</A></SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 10.5pt; COLOR: #ff6600; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt">。</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: #ff6600; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></B></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.1pt; mso-char-indent-count: 2.0"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt">官方介绍：</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></B></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.1pt; mso-char-indent-count: 2.0"><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">Midletinfo</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt">展示以下信息：</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></B></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt 63pt; TEXT-INDENT: -21pt; mso-list: l0 level3 lfo1; tab-stops: list 63.0pt"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><SPAN style="mso-list: Ignore">u<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt">系统信息：</SPAN><SPAN style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial">内存以及</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: Arial">j2me</SPAN><SPAN style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial">属性；</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: Arial"><o:p></o:p></SPAN></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt 63pt; TEXT-INDENT: -21pt; mso-list: l0 level3 lfo1; tab-stops: list 63.0pt"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><SPAN style="mso-list: Ignore">u<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial">屏幕信息：分辨率、色彩支持、绘制属性和按键属性；</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: Arial"><o:p></o:p></SPAN></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt 63pt; TEXT-INDENT: -21pt; mso-list: l0 level3 lfo1; tab-stops: list 63.0pt"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><SPAN style="mso-list: Ignore">u<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial">字体；</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: Arial"><o:p></o:p></SPAN></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt 63pt; TEXT-INDENT: -21pt; mso-list: l0 level3 lfo1; tab-stops: list 63.0pt"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><SPAN style="mso-list: Ignore">u<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial">画布上按键对应的值</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: Arial">(</SPAN><SPAN style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial">很有用！</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: Arial">)</SPAN><SPAN style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial">；</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: Arial"><o:p></o:p></SPAN></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt 63pt; TEXT-INDENT: -21pt; mso-list: l0 level3 lfo1; tab-stops: list 63.0pt"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><SPAN style="mso-list: Ignore">u<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: 'Times New Roman'">所支持的连接协议类型；</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: blue; FONT-FAMILY: Arial"><o:p></o:p></SPAN></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.1pt; mso-char-indent-count: 2.0"><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p>&nbsp;</o:p></SPAN></B></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt">这些信息对于开发者而言，都非常有用。比如说很多开发者遇到的问题是，按键对应的数值，每款手机都不太一致，用</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">midletinfo</SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt">就很容易帮你确定了。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt">源代码在此：</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><A href="http://jmobilecore.sourceforge.net/midletinfo/src">http://jmobilecore.sourceforge.net/midletinfo/src</A> <o:p></o:p></SPAN></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p>&nbsp;</o:p></SPAN></P>
<H2 style="MARGIN: 13pt 0cm"><SPAN lang=EN-US><FONT face=Arial>1.2. </FONT></SPAN><SPAN style="FONT-FAMILY: 黑体; mso-ascii-font-family: Arial">系统信息</SPAN></H2>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt">如图所示：<BR>&nbsp;<IMG id=ViewPicture1_GalleryImage style="BORDER-RIGHT: black 2px solid; BORDER-TOP: black 2px solid; BORDER-LEFT: black 2px solid; WIDTH: 277px; BORDER-BOTTOM: black 2px solid; HEIGHT: 404px" alt=systeminfo src="http://www.blogjava.net/images/blogjava_net/zhengyun/5727/r_midletinfo.systeminfo.JPG"><FONT size=3> </FONT><BR></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt">看，编码类型、</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">cldc</SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt">类型、</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">midp</SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt">类型都知道了。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p>&nbsp;</o:p></SPAN></P>
<H2 style="MARGIN: 13pt 0cm"><SPAN lang=EN-US><FONT face=Arial>1.3. </FONT></SPAN><SPAN style="FONT-FAMILY: 黑体; mso-ascii-font-family: Arial">屏幕信息</SPAN></H2>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt">如图所示：<BR><IMG id=ViewPicture1_GalleryImage style="BORDER-RIGHT: black 2px solid; BORDER-TOP: black 2px solid; BORDER-LEFT: black 2px solid; WIDTH: 280px; BORDER-BOTTOM: black 2px solid; HEIGHT: 355px" alt=screeninfo src="http://www.blogjava.net/images/blogjava_net/zhengyun/5727/r_midletinfo.screeninfo.JPG">&nbsp;<BR></SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></P></SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt">是否支持双缓冲、屏幕大小都知道了。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p>&nbsp;</o:p></SPAN></P>
<H2 style="MARGIN: 13pt 0cm"><SPAN lang=EN-US>1.4. </SPAN><SPAN style="FONT-FAMILY: 黑体; mso-ascii-font-family: Arial">按键信息</SPAN></H2>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt">如图所示：</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" /><v:shapetype id=_x0000_t75 stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600"><v:stroke joinstyle="miter"></v:stroke><v:formulas><v:f eqn="if lineDrawn pixelLineWidth 0"></v:f><v:f eqn="sum @0 1 0"></v:f><v:f eqn="sum 0 0 @1"></v:f><v:f eqn="prod @2 1 2"></v:f><v:f eqn="prod @3 21600 pixelWidth"></v:f><v:f eqn="prod @3 21600 pixelHeight"></v:f><v:f eqn="sum @0 0 1"></v:f><v:f eqn="prod @6 1 2"></v:f><v:f eqn="prod @7 21600 pixelWidth"></v:f><v:f eqn="sum @8 21600 0"></v:f><v:f eqn="prod @7 21600 pixelHeight"></v:f><v:f eqn="sum @10 21600 0"></v:f></v:formulas><v:path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"></v:path><o:lock aspectratio="t" v:ext="edit"></o:lock></v:shapetype><o:p></o:p></SPAN></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt"><IMG id=ViewPicture1_GalleryImage style="BORDER-RIGHT: black 2px solid; BORDER-TOP: black 2px solid; BORDER-LEFT: black 2px solid; WIDTH: 237px; BORDER-BOTTOM: black 2px solid; HEIGHT: 352px" alt=keyinfo src="http://www.blogjava.net/images/blogjava_net/zhengyun/5727/r_midletinfo.keyinfo.JPG">&nbsp;<BR>按下哪个键，屏幕上就绘制出这个键对应的值。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p>&nbsp;</o:p></SPAN></P>
<H2 style="MARGIN: 13pt 0cm"><SPAN lang=EN-US>1.5. </SPAN><SPAN style="FONT-FAMILY: 黑体; mso-ascii-font-family: Arial">连接协议信息</SPAN></H2>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt">如图所示：</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt"><IMG id=ViewPicture1_GalleryImage style="BORDER-RIGHT: black 2px solid; BORDER-TOP: black 2px solid; BORDER-LEFT: black 2px solid; WIDTH: 217px; BORDER-BOTTOM: black 2px solid; HEIGHT: 331px" alt=connectioninfo src="http://www.blogjava.net/images/blogjava_net/zhengyun/5727/r_midletinfo.connectioninfo.JPG">&nbsp;<BR>看，手机当前是否支持</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">http/tcp/udp/file/sms/cbs/ssl</SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt">都可以立即知道。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p>&nbsp;</o:p></SPAN></P>
<TABLE class=MsoNormalTable style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; MARGIN: auto auto auto 14.75pt; BORDER-LEFT: medium none; WIDTH: 93.66%; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: solid white .5pt; mso-yfti-tbllook: 480; mso-padding-alt: .7pt 5.75pt .7pt 5.75pt; mso-border-insideh: .5pt solid white; mso-border-insidev: .5pt solid white" cellSpacing=0 cellPadding=0 width="93%" border=1>
<TBODY>
<TR style="HEIGHT: 10.9pt; mso-yfti-irow: 0; mso-yfti-firstrow: yes">
<TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 5.75pt; BACKGROUND: #9faccb; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: white 1pt solid; WIDTH: 260.95pt; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 10.9pt; mso-border-top-alt: solid white .5pt; mso-border-left-alt: solid white .5pt; mso-border-bottom-alt: solid white .5pt" vAlign=top width=348>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: center" align=center><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">郑昀</SPAN><SPAN lang=EN-US><FONT face="Times New Roman">@ultrapower</FONT></SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="mso-fareast-language: JA"><o:p></o:p></SPAN></B></P></TD>
<TD style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 5.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 5.75pt; BACKGROUND: #9faccb; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: white 1pt solid; WIDTH: 110.2pt; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 10.9pt; mso-border-alt: solid white .5pt" vAlign=top width=147>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: center" align=center><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">名称</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="mso-fareast-language: JA"><o:p></o:p></SPAN></B></P></TD>
<TD style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 5.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 5.75pt; BACKGROUND: #9faccb; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: #ece9d8; WIDTH: 90.95pt; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 10.9pt; mso-border-alt: solid white .5pt; mso-border-left-alt: solid white .5pt" vAlign=top width=121>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: center" align=center><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">版本</SPAN><SPAN lang=EN-US><o:p></o:p></SPAN></B></P></TD></TR>
<TR style="HEIGHT: 15.45pt; mso-yfti-irow: 1; mso-yfti-lastrow: yes">
<TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.75pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.75pt; BACKGROUND: #e6e6e6; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: white 1pt solid; WIDTH: 260.95pt; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 15.45pt; mso-border-top-alt: solid white .5pt; mso-border-left-alt: solid white .5pt; mso-border-bottom-alt: solid white .5pt" vAlign=top width=348>
<P class=MsoNormal style="MARGIN: 0cm 7.5pt 0pt 0cm"><SPAN lang=EN-US style="COLOR: gray; FONT-FAMILY: Arial">Keyword: midlet information j2me tool<o:p></o:p></SPAN></P></TD>
<TD style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 5.75pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.75pt; BACKGROUND: #e6e6e6; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: white 1pt solid; WIDTH: 110.2pt; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 15.45pt; mso-border-alt: solid white .5pt; mso-border-top-alt: solid white .5pt" vAlign=top width=147>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: center" align=center><B><SPAN lang=EN-US style="COLOR: black; FONT-FAMILY: Verdana">midletinfo</SPAN></B><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial"><o:p></o:p></SPAN></P></TD>
<TD style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 5.75pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.75pt; BACKGROUND: #e6e6e6; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: #ece9d8; WIDTH: 90.95pt; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 15.45pt; mso-border-alt: solid white .5pt; mso-border-top-alt: solid white .5pt; mso-border-left-alt: solid white .5pt" vAlign=top width=121>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial">0.9.1<o:p></o:p></SPAN></P></TD></TR></TBODY></TABLE>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US><o:p><FONT face="Times New Roman" size=3>&nbsp;</FONT></o:p></SPAN></P></o:p></SPAN><img src ="http://www.blogjava.net/zhengyun/aggbug/22873.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-12-07 15:30 <a href="http://www.blogjava.net/zhengyun/archive/2005/12/07/midletinfo.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>封装MIDP 1.0 HttpConnection用于商业应用[javaME] </title><link>http://www.blogjava.net/zhengyun/archive/2005/12/01/NetConnection.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Thu, 01 Dec 2005 10:19:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/12/01/NetConnection.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/22145.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/12/01/NetConnection.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/22145.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/22145.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 另外，还有一篇必读的文章《Debugging MIDP HTTP Requests，http://developers.sun.com/techtopics/mobility/midp/articles/httpdebug/》，也给出了一份源代码，http://developers.sun.com/techtopics/mobility/midp/articles/httpdebug/src/ht...&nbsp;&nbsp;<a href='http://www.blogjava.net/zhengyun/archive/2005/12/01/NetConnection.html'>阅读全文</a><img src ="http://www.blogjava.net/zhengyun/aggbug/22145.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-12-01 18:19 <a href="http://www.blogjava.net/zhengyun/archive/2005/12/01/NetConnection.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>什么时候在游戏中调用System.gc()？[javaME]</title><link>http://www.blogjava.net/zhengyun/archive/2005/11/25/systemgc.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Fri, 25 Nov 2005 08:40:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/25/systemgc.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/21440.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/25/systemgc.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/21440.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/21440.html</trackback:ping><description><![CDATA[不知道大家有否看过“反编译的西伯利亚攻击源代码”的代码，okay，不知道它的权威性有多大，不过西伯利亚攻击这个游戏还是有名气的，也许值得一看。<BR>它的主引擎就是声明一个静态的图片数组：<BR>
<DIV style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><IMG src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align=top><SPAN style="COLOR: #0000ff">class</SPAN><SPAN style="COLOR: #000000">&nbsp;MainEngine&nbsp;</SPAN><SPAN style="COLOR: #0000ff">extends</SPAN><SPAN style="COLOR: #000000">&nbsp;FullCanvas<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">implements</SPAN><SPAN style="COLOR: #000000">&nbsp;Runnable<BR><IMG id=Codehighlighter1_60_720_Open_Image onclick="this.style.display='none'; Codehighlighter1_60_720_Open_Text.style.display='none'; Codehighlighter1_60_720_Closed_Image.style.display='inline'; Codehighlighter1_60_720_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align=top><IMG id=Codehighlighter1_60_720_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_60_720_Closed_Text.style.display='none'; Codehighlighter1_60_720_Open_Image.style.display='inline'; Codehighlighter1_60_720_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align=top></SPAN><SPAN id=Codehighlighter1_60_720_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG src="http://www.blogjava.net/images/dot.gif"></SPAN><SPAN id=Codehighlighter1_60_720_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>。。。。<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">static</SPAN><SPAN style="COLOR: #000000">&nbsp;Image&nbsp;imgs[];<BR><IMG id=Codehighlighter1_127_719_Open_Image onclick="this.style.display='none'; Codehighlighter1_127_719_Open_Text.style.display='none'; Codehighlighter1_127_719_Closed_Image.style.display='inline'; Codehighlighter1_127_719_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><IMG id=Codehighlighter1_127_719_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_127_719_Closed_Text.style.display='none'; Codehighlighter1_127_719_Open_Image.style.display='inline'; Codehighlighter1_127_719_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">public</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">static</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">void</SPAN><SPAN style="COLOR: #000000">&nbsp;initImage()&nbsp;</SPAN><SPAN id=Codehighlighter1_127_719_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG src="http://www.blogjava.net/images/dot.gif"></SPAN><SPAN id=Codehighlighter1_127_719_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG id=Codehighlighter1_151_713_Open_Image onclick="this.style.display='none'; Codehighlighter1_151_713_Open_Text.style.display='none'; Codehighlighter1_151_713_Closed_Image.style.display='inline'; Codehighlighter1_151_713_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><IMG id=Codehighlighter1_151_713_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_151_713_Closed_Text.style.display='none'; Codehighlighter1_151_713_Open_Image.style.display='inline'; Codehighlighter1_151_713_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">if</SPAN><SPAN style="COLOR: #000000">&nbsp;(</SPAN><SPAN style="COLOR: #000000">!</SPAN><SPAN style="COLOR: #000000">isLoadImg)&nbsp;</SPAN><SPAN id=Codehighlighter1_151_713_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG src="http://www.blogjava.net/images/dot.gif"></SPAN><SPAN id=Codehighlighter1_151_713_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">if</SPAN><SPAN style="COLOR: #000000">(imgs&nbsp;</SPAN><SPAN style="COLOR: #000000">==</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">null</SPAN><SPAN style="COLOR: #000000">)<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;imgs&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">new</SPAN><SPAN style="COLOR: #000000">&nbsp;Image[GameData.imgName.length];<BR><IMG id=Codehighlighter1_295_679_Open_Image onclick="this.style.display='none'; Codehighlighter1_295_679_Open_Text.style.display='none'; Codehighlighter1_295_679_Closed_Image.style.display='inline'; Codehighlighter1_295_679_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><IMG id=Codehighlighter1_295_679_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_295_679_Closed_Text.style.display='none'; Codehighlighter1_295_679_Open_Image.style.display='inline'; Codehighlighter1_295_679_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">for</SPAN><SPAN style="COLOR: #000000">&nbsp;(</SPAN><SPAN style="COLOR: #0000ff">int</SPAN><SPAN style="COLOR: #000000">&nbsp;i&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #000000">0</SPAN><SPAN style="COLOR: #000000">;&nbsp;i&nbsp;</SPAN><SPAN style="COLOR: #000000">&lt;</SPAN><SPAN style="COLOR: #000000">&nbsp;GameData.imgName.length&nbsp;</SPAN><SPAN style="COLOR: #000000">-</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #000000">1</SPAN><SPAN style="COLOR: #000000">;&nbsp;i</SPAN><SPAN style="COLOR: #000000">++</SPAN><SPAN style="COLOR: #000000">)&nbsp;</SPAN><SPAN id=Codehighlighter1_295_679_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG src="http://www.blogjava.net/images/dot.gif"></SPAN><SPAN id=Codehighlighter1_295_679_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG id=Codehighlighter1_328_569_Open_Image onclick="this.style.display='none'; Codehighlighter1_328_569_Open_Text.style.display='none'; Codehighlighter1_328_569_Closed_Image.style.display='inline'; Codehighlighter1_328_569_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><IMG id=Codehighlighter1_328_569_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_328_569_Closed_Text.style.display='none'; Codehighlighter1_328_569_Open_Image.style.display='inline'; Codehighlighter1_328_569_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">if</SPAN><SPAN style="COLOR: #000000">&nbsp;(imgs[i]&nbsp;</SPAN><SPAN style="COLOR: #000000">==</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">null</SPAN><SPAN style="COLOR: #000000">)&nbsp;</SPAN><SPAN id=Codehighlighter1_328_569_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG src="http://www.blogjava.net/images/dot.gif"></SPAN><SPAN id=Codehighlighter1_328_569_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG id=Codehighlighter1_346_430_Open_Image onclick="this.style.display='none'; Codehighlighter1_346_430_Open_Text.style.display='none'; Codehighlighter1_346_430_Closed_Image.style.display='inline'; Codehighlighter1_346_430_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><IMG id=Codehighlighter1_346_430_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_346_430_Closed_Text.style.display='none'; Codehighlighter1_346_430_Open_Image.style.display='inline'; Codehighlighter1_346_430_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">try</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN id=Codehighlighter1_346_430_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG src="http://www.blogjava.net/images/dot.gif"></SPAN><SPAN id=Codehighlighter1_346_430_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;imgs[i]&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;Image.createImage(</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">/</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #000000">+</SPAN><SPAN style="COLOR: #000000">&nbsp;GameData.imgName[i]);<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</SPAN></SPAN><SPAN style="COLOR: #000000"><BR><IMG id=Codehighlighter1_465_557_Open_Image onclick="this.style.display='none'; Codehighlighter1_465_557_Open_Text.style.display='none'; Codehighlighter1_465_557_Closed_Image.style.display='inline'; Codehighlighter1_465_557_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><IMG id=Codehighlighter1_465_557_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_465_557_Closed_Text.style.display='none'; Codehighlighter1_465_557_Open_Image.style.display='inline'; Codehighlighter1_465_557_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">catch</SPAN><SPAN style="COLOR: #000000">&nbsp;(Exception&nbsp;ex)&nbsp;</SPAN><SPAN id=Codehighlighter1_465_557_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG src="http://www.blogjava.net/images/dot.gif"></SPAN><SPAN id=Codehighlighter1_465_557_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">i:</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">+</SPAN><SPAN style="COLOR: #000000">i);<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ex.printStackTrace();<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</SPAN></SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</SPAN></SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;percent&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;(i&nbsp;</SPAN><SPAN style="COLOR: #000000">*</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #000000">100</SPAN><SPAN style="COLOR: #000000">)&nbsp;</SPAN><SPAN style="COLOR: #000000">/</SPAN><SPAN style="COLOR: #000000">&nbsp;(GameData.imgName.length&nbsp;</SPAN><SPAN style="COLOR: #000000">-</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #000000">1</SPAN><SPAN style="COLOR: #000000">);<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sib.engine.flushGraphic();<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</SPAN></SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;isLoadImg&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">true</SPAN><SPAN style="COLOR: #000000">;<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</SPAN></SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}</SPAN></SPAN></DIV>
<P></SPAN>而且我搜索了它的5个java文件，它在什么情况下调用System.gc()呢？<BR>下面三种情况：<BR>用户返回游戏时(可能之前去接听电话了？或者去设置里改参数了？)；<BR>用户选完飞机后，这可能是一个选项菜单，选飞机时所用到的资源可能以后在游戏中没必要用，所以及时回收一下；<BR>显示过关界面时，这时候有卡的现象，欢喜的用户也不会在意的。</P>
<P>除此之外就没有了。<BR><BR><STRONG>Nokia 的文档</STRONG><A class=l onmousedown="return clk(this.href,'res','3','')" href="http://sw.nokia.com/id/94d3bcbe-41e3-4522-bc8e-d6c45948d9ce/Known_Issues_In_The_Nokia_6600_v1_7_en.pdf" target=_blank><FONT color=#551a8b><STRONG>Known Issues In The Nokia 6600 MIDP 2.0 Implementation v1.7</STRONG></FONT></A><STRONG>说：<BR></STRONG>2.15.1 Garbage collecting<BR>Description<BR>Calling the System.gc() method results in extreme slowness and jamming. In Monty 1.0 VM, garbage <BR>collection is different and every time System.gc is called, the entire memory is really cleared. <BR>This is an extremely slow process!<BR>Solution<BR>Do not call the System.gc method at all, or call the System.gc() garbage collecting method only <BR>in non-time-critical situations, such as screen transitions, state transitions, pause states, <BR>etc. If the System.gc() method is used, it is recommended to add a short delay (~20-50 ms) after <BR>the method call to ensure the sufficient time for the garbage collection, as in the following <BR><BR>example<BR>System.gc();<BR>Thread.sleep(delay); delay = 20-50 ms<BR></P><img src ="http://www.blogjava.net/zhengyun/aggbug/21440.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-25 16:40 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/25/systemgc.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>手机上如何绘制半透明图片[JavaME] </title><link>http://www.blogjava.net/zhengyun/archive/2005/11/23/CreateAlphaImage.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Wed, 23 Nov 2005 08:46:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/23/CreateAlphaImage.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/21148.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/23/CreateAlphaImage.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/21148.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/21148.html</trackback:ping><description><![CDATA[<P class=MsoNormal style="TEXT-ALIGN: right" align=right><B><SPAN lang=EN-US style="FONT-SIZE: 24pt; COLOR: gray; mso-color-alt: #333333; text-effect: emboss">[JavaME]</SPAN></B><B><SPAN style="FONT-SIZE: 24pt; COLOR: gray; FONT-FAMILY: 宋体; mso-color-alt: #333333; text-effect: emboss; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">手机上如何绘制半透明图片</SPAN></B><B><SPAN style="FONT-SIZE: 24pt; COLOR: gray; mso-color-alt: #333333; text-effect: emboss"> <SPAN lang=EN-US><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></SPAN></B></P>
<H2><SPAN lang=EN-US>windcao</SPAN><SPAN style="FONT-FAMILY: 黑体; mso-ascii-font-family: Arial">提供了一个</SPAN><SPAN lang=EN-US>CreateAlphaImage</SPAN><SPAN style="FONT-FAMILY: 黑体; mso-ascii-font-family: Arial">方法</SPAN></H2>
<P class=MsoNormalIndent style="TEXT-INDENT: 21.1pt; mso-char-indent-count: 2.0"><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: #ff6600; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">Windcao</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 10.5pt; COLOR: #ff6600; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: Arial">提供的</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: #ff6600; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">CreateAlphaImage</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 10.5pt; COLOR: #ff6600; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: Arial">的意思是这样的“如果需要半透明可以先在</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: #ff6600; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">image</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 10.5pt; COLOR: #ff6600; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: Arial">上画，然后把这个</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: #ff6600; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">Image</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 10.5pt; COLOR: #ff6600; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: Arial">弄成半透明的。最后将</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: #ff6600; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">Image</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 10.5pt; COLOR: #ff6600; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: Arial">绘到</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: #ff6600; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">Canvas</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 10.5pt; COLOR: #ff6600; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: Arial">上就</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: #ff6600; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">OK</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 10.5pt; COLOR: #ff6600; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: Arial">了”。</SPAN></B></P>
<P class=MsoNormalIndent style="TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p>&nbsp;<SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">他的处理函数如下所示：</SPAN></P>
<DIV style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><IMG id=Codehighlighter1_73_576_Open_Image onclick="this.style.display='none'; Codehighlighter1_73_576_Open_Text.style.display='none'; Codehighlighter1_73_576_Closed_Image.style.display='inline'; Codehighlighter1_73_576_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><IMG id=Codehighlighter1_73_576_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_73_576_Closed_Text.style.display='none'; Codehighlighter1_73_576_Open_Image.style.display='inline'; Codehighlighter1_73_576_Open_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif" align=top><SPAN style="COLOR: #0000ff">public</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">static</SPAN><SPAN style="COLOR: #000000">&nbsp;Image&nbsp;CreateAlphaImage(</SPAN><SPAN style="COLOR: #0000ff">int</SPAN><SPAN style="COLOR: #000000">&nbsp;Alphalike&nbsp;</SPAN><SPAN style="COLOR: #000000">0x88000000</SPAN><SPAN style="COLOR: #000000">,Image&nbsp;src)&nbsp;</SPAN><SPAN id=Codehighlighter1_73_576_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG src="http://www.cnblogs.com/Images/dot.gif"></SPAN><SPAN id=Codehighlighter1_73_576_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">int</SPAN><SPAN style="COLOR: #000000">&nbsp;w,h;<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;w</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">src.getWidth();<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;h</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">src.getHeight();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">int</SPAN><SPAN style="COLOR: #000000">&nbsp;len</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">wh;<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">int</SPAN><SPAN style="COLOR: #000000">&nbsp;srcRgb[]</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #0000ff">new</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">int</SPAN><SPAN style="COLOR: #000000">[len];<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">int</SPAN><SPAN style="COLOR: #000000">&nbsp;dscRgb[]</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #0000ff">new</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">int</SPAN><SPAN style="COLOR: #000000">[len];<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top><BR><IMG id=Codehighlighter1_255_309_Open_Image onclick="this.style.display='none'; Codehighlighter1_255_309_Open_Text.style.display='none'; Codehighlighter1_255_309_Closed_Image.style.display='inline'; Codehighlighter1_255_309_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><IMG id=Codehighlighter1_255_309_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_255_309_Closed_Text.style.display='none'; Codehighlighter1_255_309_Open_Image.style.display='inline'; Codehighlighter1_255_309_Open_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">try</SPAN><SPAN id=Codehighlighter1_255_309_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG src="http://www.cnblogs.com/Images/dot.gif"></SPAN><SPAN id=Codehighlighter1_255_309_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;src.getRGB(srcRgb,</SPAN><SPAN style="COLOR: #000000">0</SPAN><SPAN style="COLOR: #000000">,w,</SPAN><SPAN style="COLOR: #000000">0</SPAN><SPAN style="COLOR: #000000">,</SPAN><SPAN style="COLOR: #000000">0</SPAN><SPAN style="COLOR: #000000">,w,h);<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</SPAN></SPAN><SPAN style="COLOR: #000000"><BR><IMG id=Codehighlighter1_338_382_Open_Image onclick="this.style.display='none'; Codehighlighter1_338_382_Open_Text.style.display='none'; Codehighlighter1_338_382_Closed_Image.style.display='inline'; Codehighlighter1_338_382_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><IMG id=Codehighlighter1_338_382_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_338_382_Closed_Text.style.display='none'; Codehighlighter1_338_382_Open_Image.style.display='inline'; Codehighlighter1_338_382_Open_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">catch</SPAN><SPAN style="COLOR: #000000">(Exception&nbsp;ex)</SPAN><SPAN id=Codehighlighter1_338_382_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG src="http://www.cnblogs.com/Images/dot.gif"></SPAN><SPAN id=Codehighlighter1_338_382_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ex.printStackTrace();<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</SPAN></SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top><BR><IMG id=Codehighlighter1_422_487_Open_Image onclick="this.style.display='none'; Codehighlighter1_422_487_Open_Text.style.display='none'; Codehighlighter1_422_487_Closed_Image.style.display='inline'; Codehighlighter1_422_487_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><IMG id=Codehighlighter1_422_487_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_422_487_Closed_Text.style.display='none'; Codehighlighter1_422_487_Open_Image.style.display='inline'; Codehighlighter1_422_487_Open_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">for</SPAN><SPAN style="COLOR: #000000">&nbsp;(</SPAN><SPAN style="COLOR: #0000ff">int</SPAN><SPAN style="COLOR: #000000">&nbsp;i&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #000000">0</SPAN><SPAN style="COLOR: #000000">;&nbsp;i&nbsp;&nbsp;len;&nbsp;i</SPAN><SPAN style="COLOR: #000000">++</SPAN><SPAN style="COLOR: #000000">)&nbsp;</SPAN><SPAN id=Codehighlighter1_422_487_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG src="http://www.cnblogs.com/Images/dot.gif"></SPAN><SPAN id=Codehighlighter1_422_487_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dscRgb[i]&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;srcRgb[i]</SPAN><SPAN style="COLOR: #000000">+</SPAN><SPAN style="COLOR: #000000">Alpha;<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</SPAN></SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Image&nbsp;result</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">Image.createRGBImage(dscRgb,w,h,</SPAN><SPAN style="COLOR: #0000ff">true</SPAN><SPAN style="COLOR: #000000">);<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">return</SPAN><SPAN style="COLOR: #000000">&nbsp;result;<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}</SPAN></SPAN></DIV><BR>&nbsp; 
<P class=MsoNormalIndent style="TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: Arial">我在工程中用了，有效果，好像也不需要对原始的</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">Image src</SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: Arial">有什么特殊要求。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></P><IMG id=ViewPicture1_GalleryImage style="BORDER-RIGHT: black 2px solid; BORDER-TOP: black 2px solid; BORDER-LEFT: black 2px solid; WIDTH: 262px; BORDER-BOTTOM: black 2px solid; HEIGHT: 192px" alt=translucenceCustomItem src="http://www.cnblogs.com/images/cnblogs_com/zhengyun_ustc/38862/r_translucenceCustomItem.JPG">&nbsp;<BR>&nbsp; 
<P class=MsoNormalIndent style="TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: Arial">可以与</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></P><IMG id=ViewPicture1_GalleryImage style="BORDER-RIGHT: black 2px solid; BORDER-TOP: black 2px solid; BORDER-LEFT: black 2px solid; WIDTH: 257px; BORDER-BOTTOM: black 2px solid; HEIGHT: 167px" alt=directlypaintCustomItem src="http://www.cnblogs.com/images/cnblogs_com/zhengyun_ustc/38862/r_directlypaintCustomItem.JPG">&nbsp;&nbsp; 
<P class=MsoNormalIndent style="TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: Arial">做一下对比。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></P>
<P class=MsoNormalIndent style="TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: Arial">后者没有将图片作</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial; mso-font-kerning: 0pt">CreateAlphaImage</SPAN><SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-font-kerning: 0pt">处理。所以绘制的图片覆盖了原来的文字。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></P>
<P class=MsoNormalIndent style="TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: Arial">我是在一个</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">CustomItem</SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: Arial">扩展类中使用这个半透明图片的，代码如下所示：</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></P><BR><BR>
<DIV style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><IMG id=Codehighlighter1_45_740_Open_Image onclick="this.style.display='none'; Codehighlighter1_45_740_Open_Text.style.display='none'; Codehighlighter1_45_740_Closed_Image.style.display='inline'; Codehighlighter1_45_740_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><IMG id=Codehighlighter1_45_740_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_45_740_Closed_Text.style.display='none'; Codehighlighter1_45_740_Open_Image.style.display='inline'; Codehighlighter1_45_740_Open_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif" align=top><SPAN style="COLOR: #0000ff">public</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">class</SPAN><SPAN style="COLOR: #000000">&nbsp;StringKeyItem&nbsp;</SPAN><SPAN style="COLOR: #0000ff">extends</SPAN><SPAN style="COLOR: #000000">&nbsp;CustomItem</SPAN><SPAN id=Codehighlighter1_45_740_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG src="http://www.cnblogs.com/Images/dot.gif"></SPAN><SPAN id=Codehighlighter1_45_740_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>。。。<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">private</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">static</SPAN><SPAN style="COLOR: #000000">&nbsp;Image&nbsp;m_imageCommand&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;CommandResources.getImage(CommandResources.IMG_COMMAND);<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>。。。<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">public</SPAN><SPAN style="COLOR: #000000">&nbsp;StringKeyItem(&nbsp;<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;GUIController&nbsp;control,<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">int</SPAN><SPAN style="COLOR: #000000">&nbsp;inIndent,&nbsp;String&nbsp;inText&nbsp;)<BR><IMG id=Codehighlighter1_254_330_Open_Image onclick="this.style.display='none'; Codehighlighter1_254_330_Open_Text.style.display='none'; Codehighlighter1_254_330_Closed_Image.style.display='inline'; Codehighlighter1_254_330_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><IMG id=Codehighlighter1_254_330_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_254_330_Closed_Text.style.display='none'; Codehighlighter1_254_330_Open_Image.style.display='inline'; Codehighlighter1_254_330_Open_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN id=Codehighlighter1_254_330_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG src="http://www.cnblogs.com/Images/dot.gif"></SPAN><SPAN id=Codehighlighter1_254_330_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>。。。<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;m_imageCommand&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;CreateAlphaImage(</SPAN><SPAN style="COLOR: #000000">0x88000000</SPAN><SPAN style="COLOR: #000000">,m_imageCommand);<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</SPAN></SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top><BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>。。。<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">public</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">void</SPAN><SPAN style="COLOR: #000000">&nbsp;paint(&nbsp;Graphics&nbsp;g,&nbsp;</SPAN><SPAN style="COLOR: #0000ff">int</SPAN><SPAN style="COLOR: #000000">&nbsp;w,&nbsp;</SPAN><SPAN style="COLOR: #0000ff">int</SPAN><SPAN style="COLOR: #000000">&nbsp;h&nbsp;)<BR><IMG id=Codehighlighter1_392_739_Open_Image onclick="this.style.display='none'; Codehighlighter1_392_739_Open_Text.style.display='none'; Codehighlighter1_392_739_Closed_Image.style.display='inline'; Codehighlighter1_392_739_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><IMG id=Codehighlighter1_392_739_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_392_739_Closed_Text.style.display='none'; Codehighlighter1_392_739_Open_Image.style.display='inline'; Codehighlighter1_392_739_Open_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN id=Codehighlighter1_392_739_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG src="http://www.cnblogs.com/Images/dot.gif"></SPAN><SPAN id=Codehighlighter1_392_739_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>。。。<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #008000">//</SPAN><SPAN style="COLOR: #008000">&nbsp;draw&nbsp;the&nbsp;text:&nbsp;word-wrap&nbsp;is&nbsp;an&nbsp;exercise&nbsp;for&nbsp;the&nbsp;reader</SPAN><SPAN style="COLOR: #008000"><BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top></SPAN><SPAN style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;g.drawString(&nbsp;text,&nbsp;<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;indent&nbsp;</SPAN><SPAN style="COLOR: #000000">*</SPAN><SPAN style="COLOR: #000000">&nbsp;INDENT_MARGIN&nbsp;</SPAN><SPAN style="COLOR: #000000">+</SPAN><SPAN style="COLOR: #000000">&nbsp;FONT_HEIGHT,&nbsp;</SPAN><SPAN style="COLOR: #000000">0</SPAN><SPAN style="COLOR: #000000">,&nbsp;g.TOP&nbsp;</SPAN><SPAN style="COLOR: #000000">|</SPAN><SPAN style="COLOR: #000000">&nbsp;g.LEFT&nbsp;);<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR><IMG id=Codehighlighter1_580_638_Open_Image onclick="this.style.display='none'; Codehighlighter1_580_638_Open_Text.style.display='none'; Codehighlighter1_580_638_Closed_Image.style.display='inline'; Codehighlighter1_580_638_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><IMG id=Codehighlighter1_580_638_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_580_638_Closed_Text.style.display='none'; Codehighlighter1_580_638_Open_Image.style.display='inline'; Codehighlighter1_580_638_Open_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN id=Codehighlighter1_580_638_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">/**/</SPAN><SPAN id=Codehighlighter1_580_638_Open_Text><SPAN style="COLOR: #008000">/*</SPAN><SPAN style="COLOR: #008000"><BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;绘制一个半透明的前景图片，刚好就贴在StringKeyItem的文字上，还可以显示底色以及文字<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #008000">*/</SPAN></SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;g.drawImage(m_imageCommand,&nbsp;<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;indent&nbsp;</SPAN><SPAN style="COLOR: #000000">*</SPAN><SPAN style="COLOR: #000000">&nbsp;INDENT_MARGIN&nbsp;</SPAN><SPAN style="COLOR: #000000">+</SPAN><SPAN style="COLOR: #000000">&nbsp;FONT_HEIGHT,&nbsp;</SPAN><SPAN style="COLOR: #000000">0</SPAN><SPAN style="COLOR: #000000">,&nbsp;g.TOP&nbsp;</SPAN><SPAN style="COLOR: #000000">|</SPAN><SPAN style="COLOR: #000000">&nbsp;g.LEFT);<BR><IMG src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</SPAN></SPAN></DIV></SPAN><BR>&nbsp; 
<P class=MsoNormalIndent style="TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: Arial">实践效果还是不错的。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></P>
<P class=MsoNormalIndent style="TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: Arial">感谢</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">windcao</SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: Arial">的代码共享和思路提供！</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></P></o:p></SPAN><img src ="http://www.blogjava.net/zhengyun/aggbug/21148.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-23 16:46 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/23/CreateAlphaImage.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>HttpConnection访问时ArrayIndexOutofBoundException的解释[javaME] </title><link>http://www.blogjava.net/zhengyun/archive/2005/11/23/21132.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Wed, 23 Nov 2005 07:32:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/23/21132.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/21132.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/23/21132.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/21132.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/21132.html</trackback:ping><description><![CDATA[<P>为什么会在HttpConnection访问远端服务器时，得到了ArrayIndexOutofBoundException异常呢？<BR><STRONG>有这么一种可能：</STRONG><BR>远端服务器虽然完整地响应了数据，但是却存在两种隐患：服务器没有正确地设置HTTP_CONTENT_LENGTH头域，<BR>或者设置了但是在传输过程中，可能远端服务器和手机之间的某一代理服务器人为修改，导致<BR>在手机端，代码仍试图按照HTTP_CONTENT_LENGTH的错误数值-1去检索数据，所以得到了这个异常。</P>
<P><STRONG>解决办法：</STRONG><BR>一是确定服务器端正确地改写了HTTP_CONTENT_LENGTH头域；<BR>二是针对手机端拿到了HTTP_CONTENT_LENGTH的错误数值-1，作相应处理。</P><img src ="http://www.blogjava.net/zhengyun/aggbug/21132.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-23 15:32 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/23/21132.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>手机同时播放两个音乐 探讨二</title><link>http://www.blogjava.net/zhengyun/archive/2005/11/23/playsounds2.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Wed, 23 Nov 2005 05:50:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/23/playsounds2.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/21118.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/23/playsounds2.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/21118.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/21118.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: [JavaME]手机同时播放两个音乐 探讨二摘要：本文档以及后续文档试图一步一步地探讨如何在手机上同时播放两个声音文件，譬如一个是背景音乐，一个是按键触发的游戏音效。请慢慢看下去，我们尽量糅合进各方汇集的一些经验。1探讨适合Nokia的同步播放方法摘要：本章 简单描述如何在NokiaS60系列手机同时播放两个音乐。&nbsp;1.1. 使用nokia的专有类Sound...&nbsp;&nbsp;<a href='http://www.blogjava.net/zhengyun/archive/2005/11/23/playsounds2.html'>阅读全文</a><img src ="http://www.blogjava.net/zhengyun/aggbug/21118.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-23 13:50 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/23/playsounds2.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[j2me.org]FAQ - j2me wiki</title><link>http://www.blogjava.net/zhengyun/archive/2005/11/23/j2meorgfaq.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Wed, 23 Nov 2005 02:25:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/23/j2meorgfaq.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/21094.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/23/j2meorgfaq.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/21094.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/21094.html</trackback:ping><description><![CDATA[<TABLE id=toc border=0>
<TBODY>
<TR id=toctitle>
<TD align=middle><B><A href="http://www.j2me.org/"><IMG src="http://www.j2me.org/j2me_header.gif"></A><BR>Table of contents</B>
<SCRIPT type=text/javascript>showTocToggle("show","hide")</SCRIPT>
 <SPAN class=toctoggle>[<A class=internal href="javascript:toggleToc()"><SPAN id=showlink style="DISPLAY: none">show</SPAN><SPAN id=hidelink>hide</SPAN></A>]</SPAN> </TD></TR>
<TR id=tocinside>
<TD>
<DIV class=tocline><A href="http://www.j2me.org/wiki/index.php/FAQ#Introduction">1 Introduction</A><BR></DIV>
<DIV class=tocindent>
<P><A href="http://www.j2me.org/wiki/index.php/FAQ#We_also_have_a_few_other_tips_for_new_posters:">1.1 We also have a few other tips for new posters:</A><BR></P></DIV>
<DIV class=tocline><A href="http://www.j2me.org/wiki/index.php/FAQ#General">2 General</A><BR></DIV>
<DIV class=tocindent>
<P><A href="http://www.j2me.org/wiki/index.php/FAQ#How_do_I_write_a_xxxx_game_.3F">2.1 How do I write a xxxx game&nbsp;?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#Where_can_I_find_xxxx.27s_developer.27s_site.3F_Where_can_I_find_xxxx.27s_SDKs_.3F">2.2 Where can I find xxxx's developer's site? Where can I find xxxx's SDKs&nbsp;?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#How_do_I_make_a_game.3F__Do_I_need_to_learn_Java_first_.3F">2.3 How do I make a game? Do I need to learn Java first&nbsp;?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#What_are_the_basic_differences_between_developing_in_J2SE_and_J2ME.3F">2.4 What are the basic differences between developing in J2SE and J2ME?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#How_do_I_do_xxxxx.3F_.28Which_isn.27t_realated_to_or_doesn.27t_use_J2me.29">2.5 How do I do xxxxx? (Which isn't realated to or doesn't use J2me)</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#How_much_Heap.2FWhat_screen_size_is.2FWhat_MIDP_or_CLDC_version_is_XXX_handset.2Fdevice.3F">2.6 How much Heap/What screen size is/What MIDP or CLDC version is XXX handset/device?</A><BR></P></DIV>
<DIV class=tocline><A href="http://www.j2me.org/wiki/index.php/FAQ#APIs_and_Libraries">3 APIs and Libraries</A><BR></DIV>
<DIV class=tocindent>
<P><A href="http://www.j2me.org/wiki/index.php/FAQ#How_do_I_use_the_Nokia_UI_API_in_the_Wireless_Toolkit.3F">3.1 How do I use the Nokia UI API in the Wireless Toolkit?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#How_do_I_add_API_X_.28bluetooth.2C_wma.2C_mmapi.2C_Image.getRGB.2C_....29_to_a_phone_that_does_not_have_built_in_support_for_API_X.3F">3.2 How do I add API X (bluetooth, wma, mmapi, Image.getRGB, ...) to a phone that does not have built in support for API X?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#I_am_using_a_third_party_library_in_my_app_and_when_I_try_to_emulate_it_I_gives_me_an_error_like:_preverfication_error:_com.2Fcool.2Flibrary.2FClassA._What_am_I_doing_wrong.3F">3.3 I am using a third party library in my app and when I try to emulate it I gives me an error like: preverfication error: com/cool/library/ClassA. What am I doing wrong?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#But_it.27s_a_library_therefore_it_goes_into_the_library_directory_right.3F">3.4 But it's a library therefore it goes into the library directory right?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#Where_can_I_find_out_about_XXX_api_to_see_if_it_is_possible_to_do_YYY_with_j2me.3F">3.5 Where can I find out about XXX api to see if it is possible to do YYY with j2me?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#Where_can_I_find_out_if_my_phone_supports_XXX_JSR.3F">3.6 Where can I find out if my phone supports XXX JSR?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#How_can_I_find_out_about_whether_a_specific_phone_supports_soemthing_with_closed_APIs.3F">3.7 How can I find out about whether a specific phone supports soemthing with closed APIs?</A><BR></P></DIV>
<DIV class=tocline><A href="http://www.j2me.org/wiki/index.php/FAQ#Servers.2C_Communication_and_Databases">4 Servers, Communication and Databases</A><BR></DIV>
<DIV class=tocindent>
<P><A href="http://www.j2me.org/wiki/index.php/FAQ#What_language_should_I_write_my_server_in.3F">4.1 What language should I write my server in?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#How_do_I_talk_to_a_FTP_server.2C_database.2C_www.something.com:xxx.3F">4.2 How do I talk to a FTP server, database, www.something.com:xxx?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#How_do_I_connect_to_an_Database.3F_.2F_Can_I_use_SQL.3F">4.3 How do I connect to an Database? / Can I use SQL?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#I_get_an_Exception_when_I_try_to_connect_to_web_services_from_the_WTK_emulators.3F">4.4 I get an Exception when I try to connect to web services from the WTK emulators?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#Where_can_I_find_a_list_of_GPRS_access_points_for_REAL_internet_access_not_just_WAP_gateway_access.3F">4.5 Where can I find a list of GPRS access points for REAL internet access not just WAP gateway access?</A><BR></P></DIV>
<DIV class=tocline><A href="http://www.j2me.org/wiki/index.php/FAQ#Wireless_Messaging_API">5 Wireless Messaging API</A><BR></DIV>
<DIV class=tocindent>
<P><A href="http://www.j2me.org/wiki/index.php/FAQ#What_port_numbers_should_I_use_for_SMS_.28WMA.29_MIDlets.3F">5.1 What port numbers should I use for SMS (WMA) MIDlets?</A><BR></P></DIV>
<DIV class=tocline><A href="http://www.j2me.org/wiki/index.php/FAQ#Storage_and_SIM_access_on_the_phone">6 Storage and SIM access on the phone</A><BR></DIV>
<DIV class=tocindent>
<P><A href="http://www.j2me.org/wiki/index.php/FAQ#Can_I_access_the_phone.27s_xxxx.3F_.28memory.2C_phone_book.2C_inbox.2C_pictures....29_.3F">6.1 Can I access the phone's xxxx? (memory, phone book, inbox, pictures...)&nbsp;?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#Is_it_possible_to_access_the_SIM_card_from_a_java_midlet_in_order_to_get_the_operator_ID_and_the_telephone_number.3F">6.2 Is it possible to access the SIM card from a java midlet in order to get the operator ID and the telephone number?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#Can_I_access_the_Pictures.2FSMS.2FPhones_numbers_that_are_already_on_my_phone.3F">6.3 Can I access the Pictures/SMS/Phones numbers that are already on my phone?</A><BR></P></DIV>
<DIV class=tocline><A href="http://www.j2me.org/wiki/index.php/FAQ#Canvas.2C_Forms_and_Alerts">7 Canvas, Forms and Alerts</A><BR></DIV>
<DIV class=tocindent>
<P><A href="http://www.j2me.org/wiki/index.php/FAQ#I_want_to_display_a_.22Busy.2C_please_wait....22_screen_while_i_do_my_networking.2Fany_other_lengthy_process.2C_but_the_waiting_screen_never_appears.2C_and_after_the_process_is_over_the_result_screen_appears._What.27s_wrong_.3F">7.1 I want to display a "Busy, please wait..." screen while i do my networking/any other lengthy process, but the waiting screen never appears, and after the process is over the result screen appears. What's wrong&nbsp;?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#How_do_I_capture_keypresses_on_a_Form.2FList.2FAlert.3F">7.2 How do I capture keypresses on a Form/List/Alert?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#Ok.2C_then_how_do_I_put_a_canvas_on_the_form_or_use_a_highlevel_widget_on_the_canvas.3F">7.3 Ok, then how do I put a canvas on the form or use a highlevel widget on the canvas?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#Why_doesnt_my_app_switch_between_my_two.2Fthree.2Ffifty-seven_canvases_when_I_call_myDisplay.setCurrent.28nextCanvas.29.3F">7.4 Why doesnt my app switch between my two/three/fifty-seven canvases when I call myDisplay.setCurrent(nextCanvas)?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#Why_when_I_set_the_GameCanvas_to_full_screen_does_getHeight.28.29_not_return_the_right_value.3F">7.5 Why when I set the GameCanvas to full screen does getHeight() not return the right value?</A><BR></P></DIV>
<DIV class=tocline><A href="http://www.j2me.org/wiki/index.php/FAQ#JAD_and_MANIFEST">8 JAD and MANIFEST</A><BR></DIV>
<DIV class=tocindent>
<P><A href="http://www.j2me.org/wiki/index.php/FAQ#What_does_this_mean.3F_.22Unable_to_create_MIDlet_SimpleGame__java.lang.ClassNotFoundException:_SimpleGame.22">8.1 What does this mean? "Unable to create MIDlet SimpleGame java.lang.ClassNotFoundException: SimpleGame"</A><BR></P></DIV>
<DIV class=tocline><A href="http://www.j2me.org/wiki/index.php/FAQ#Installing_and_Updating_MIDlets">9 Installing and Updating MIDlets</A><BR></DIV>
<DIV class=tocindent>
<P><A href="http://www.j2me.org/wiki/index.php/FAQ#I.27ve_just_developed_a_J2ME_app_in_an_emulator._Now_I_want_to_try_it_in_a_real_phone._How_can_I_transfer_my_app_to_a_phone.3F_Do_I_need_to_do_it_Over_the_Air_.28OTA.29_and_pay_a_call_charge_each_time.3F">9.1 I've just developed a J2ME app in an emulator. Now I want to try it in a real phone. How can I transfer my app to a phone? Do I need to do it Over the Air (OTA) and pay a call charge each time?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#But_how_do_I_do_an_OTA_installation.3F">9.2 But how do I do an OTA installation?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#How_can_I_automatically_update_my_MIDlet_from_within_the_MIDlet.3F">9.3 How can I automatically update my MIDlet from within the MIDlet?</A><BR></P></DIV>
<DIV class=tocline><A href="http://www.j2me.org/wiki/index.php/FAQ#Bluetooth">10 Bluetooth</A><BR></DIV>
<DIV class=tocindent>
<P><A href="http://www.j2me.org/wiki/index.php/FAQ#Where_can_I_find_information_about_using_Bluetooth_in_J2ME_and_some_example_code.3F">10.1 Where can I find information about using Bluetooth in J2ME and some example code?</A><BR></P></DIV>
<DIV class=tocline><A href="http://www.j2me.org/wiki/index.php/FAQ#Memory_Management">11 Memory Management</A><BR></DIV>
<DIV class=tocindent>
<P><A href="http://www.j2me.org/wiki/index.php/FAQ#Memory_Management_In_J2ME">11.1 Memory Management In J2ME</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#What_is_garbage_collection.3F">11.2 What is garbage collection?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#Where_is_the_Java_equivalent_of_delete.3F">11.3 Where is the Java equivalent of delete?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#What_happens_when_I_call_System.gc.28.29.3F">11.4 What happens when I call System.gc()?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#Assuming_garbage_collection_does_occur.2C_how_does_it_work.3F">11.5 Assuming garbage collection does occur, how does it work?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#This_tutorial_is_pretty_useless.2C_what_can_you_tell_me_that_is_definitive.3F">11.6 This tutorial is pretty useless, what can you tell me that is definitive?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#How_can_I_make_it_easy_to_ensure_an_object.27s_eligibility_for_garbage_collection.3F">11.7 How can I make it easy to ensure an object's eligibility for garbage collection?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#How_can_I_prevent_my_object_from_being_elegible_for_garbage_collection.3F">11.8 How can I prevent my object from being elegible for garbage collection?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#My_device_has_XX_kilobytes_of_memory_but_I_cannot_allocate_all_of_it._What_is_going_on.3F">11.9 My device has XX kilobytes of memory but I cannot allocate all of it. What is going on?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#When_I_print_out_an_object_I_get_something_like_Object.40345563._Isn.27t_this_the_address_of_the_object.3F">11.10 When I print out an object I get something like Object@345563. Isn't this the address of the object?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#How_do_I_deal_with_OutOfMemoryErrors.3F">11.11 How do I deal with OutOfMemoryErrors?</A><BR><A href="http://www.j2me.org/wiki/index.php/FAQ#Is_there_any_way_to_determine_the_real_addresses_of_objects_on_the_heap.3F">11.12 Is there any way to determine the real addresses of objects on the heap?</A><BR></P></DIV>
<DIV class=tocline><A href="http://www.j2me.org/wiki/index.php/FAQ#FILE_API">12 FILE API</A><BR></DIV>
<DIV class=tocindent>
<P><A href="http://www.j2me.org/wiki/index.php/FAQ#Why_cannot_I_access_to_c:.2FmyFile_using_.28FileConnection.29_Connector.open.28.22file:.2F.2F.2Fc:.2FmyFile.22.29.3F">12.1 Why cannot I access to c:/myFile using (FileConnection) Connector.open("file:///c:/myFile")?</A></P></DIV></TD></TR></TBODY></TABLE><img src ="http://www.blogjava.net/zhengyun/aggbug/21094.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-23 10:25 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/23/j2meorgfaq.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[JavaME]手机同时播放两个音乐 探讨一 </title><link>http://www.blogjava.net/zhengyun/archive/2005/11/22/playsounds1.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Tue, 22 Nov 2005 15:50:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/22/playsounds1.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/21048.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/22/playsounds1.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/21048.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/21048.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: [JavaME]手机同时播放两个音乐 探讨一摘要：本文档以及后续文档试图一步一步地探讨如何在手机上同时播放两个声音文件，譬如一个是背景音乐，一个是按键触发的游戏音效。请慢慢看下去，我们尽量糅合进各方汇集的一些经验。1背景摘要：本章 简单描述手机同时播放两个音乐的背景。&nbsp;1.1. 常见于各大J2ME论坛的这个问题最近看到，不断地有人再询问同一类型的问题：...&nbsp;&nbsp;<a href='http://www.blogjava.net/zhengyun/archive/2005/11/22/playsounds1.html'>阅读全文</a><img src ="http://www.blogjava.net/zhengyun/aggbug/21048.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-22 23:50 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/22/playsounds1.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[javaME]摩托罗拉V300-V500-V600同时播放音乐的讲究 </title><link>http://www.blogjava.net/zhengyun/archive/2005/11/21/20783.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Mon, 21 Nov 2005 07:56:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/21/20783.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/20783.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/21/20783.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/20783.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/20783.html</trackback:ping><description><![CDATA[<P>摩托罗拉V300-V500-V600同时播放音乐的讲究</P>
<P>唯一支持的同步播放音乐的办法是，midi和wav声音混合播放。<BR>即使是这样，也存在着一个限制：<BR>应用程序必须先播放midi(可以作为背景音乐)，然后再播放wav；wav文件还必须是以下的格式：<BR>&nbsp;PCM 8000KHZ；<BR>&nbsp;8Bit；<BR>&nbsp;Mono。</P>
<P>除了上面这种方法，只要是一个新的media被播放，上一个Player必须被停止而且释放资源。<BR></P><img src ="http://www.blogjava.net/zhengyun/aggbug/20783.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-21 15:56 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/21/20783.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JavaME中可用的StringTokenizer</title><link>http://www.blogjava.net/zhengyun/archive/2005/11/21/StringTokenizer.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Mon, 21 Nov 2005 07:06:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/21/StringTokenizer.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/20770.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/21/StringTokenizer.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/20770.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/20770.html</trackback:ping><description><![CDATA[<DIV style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><IMG id=Codehighlighter1_1_583_Open_Image onclick="this.style.display='none'; Codehighlighter1_1_583_Open_Text.style.display='none'; Codehighlighter1_1_583_Closed_Image.style.display='inline'; Codehighlighter1_1_583_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align=top><IMG id=Codehighlighter1_1_583_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1_583_Closed_Text.style.display='none'; Codehighlighter1_1_583_Open_Image.style.display='inline'; Codehighlighter1_1_583_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align=top><SPAN style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN id=Codehighlighter1_1_583_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">/**/</SPAN><SPAN id=Codehighlighter1_1_583_Open_Text><SPAN style="COLOR: #008000">/*</SPAN><SPAN style="COLOR: #008000"><BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;javaME中一向没有与StringTokenizer相对应的类，Ostermiller提供了一个。他的util类包还有很多很多其他帮助类。<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;你只需要将<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #008000; TEXT-DECORATION: underline">http://ostermiller.org/utils/StringTokenizer.java.html中的</SPAN><SPAN style="COLOR: #008000"><BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;class&nbsp;StringTokenizer&nbsp;implements&nbsp;java.util.Enumeration,&nbsp;java.util.Iterator&nbsp;{<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;简化为<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;class&nbsp;StringTokenizer&nbsp;implements&nbsp;java.util.Enumeration{<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;。<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;即可立即在midlet中使用<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;s&nbsp;=&nbsp;"&nbsp;&nbsp;(&nbsp;&nbsp;&nbsp;aaa&nbsp;&nbsp;\t&nbsp;&nbsp;*&nbsp;(b+c1&nbsp;))";<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;StringTokenizer&nbsp;st&nbsp;=&nbsp;new&nbsp;StringTokenizer(s,&nbsp;"&nbsp;\t\n\r\f",&nbsp;"()+*");<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(st.hasMoreTokens())&nbsp;{<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(st.nextToken());<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;，我经过实际测试，得到了如下结果：<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;aaa<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;b<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;c1<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #008000">*/</SPAN></SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;s&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">&nbsp;&nbsp;(&nbsp;&nbsp;&nbsp;aaa&nbsp;&nbsp;\t&nbsp;&nbsp;*&nbsp;(b+c1&nbsp;))</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">;<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;StringTokenizer&nbsp;st&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">new</SPAN><SPAN style="COLOR: #000000">&nbsp;StringTokenizer(s,&nbsp;</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">&nbsp;\t\n\r\f</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">,&nbsp;</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">()+*</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">);<BR><IMG id=Codehighlighter1_726_768_Open_Image onclick="this.style.display='none'; Codehighlighter1_726_768_Open_Text.style.display='none'; Codehighlighter1_726_768_Closed_Image.style.display='inline'; Codehighlighter1_726_768_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align=top><IMG id=Codehighlighter1_726_768_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_726_768_Closed_Text.style.display='none'; Codehighlighter1_726_768_Open_Image.style.display='inline'; Codehighlighter1_726_768_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">while</SPAN><SPAN style="COLOR: #000000">&nbsp;(st.hasMoreTokens())&nbsp;</SPAN><SPAN id=Codehighlighter1_726_768_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG src="http://www.blogjava.net/images/dot.gif"></SPAN><SPAN id=Codehighlighter1_726_768_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(st.nextToken());</SPAN></DIV></SPAN><img src ="http://www.blogjava.net/zhengyun/aggbug/20770.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-21 15:06 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/21/StringTokenizer.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[JavaME]解决来电问题(Incoming Call)</title><link>http://www.blogjava.net/zhengyun/archive/2005/11/16/incomingcall.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Wed, 16 Nov 2005 14:42:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/16/incomingcall.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/20158.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/16/incomingcall.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/20158.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/20158.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 不过，正像下面的帖子中谈到的，Nokia 7650机型的问题是无法克服的，当你接电话时关闭了游戏，那么电话打完后你也无法启动游戏了，除非重启手机。&nbsp;&nbsp;<a href='http://www.blogjava.net/zhengyun/archive/2005/11/16/incomingcall.html'>阅读全文</a><img src ="http://www.blogjava.net/zhengyun/aggbug/20158.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-16 22:42 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/16/incomingcall.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[JavaME]如何确认用户连续按键指的是哪一个字符</title><link>http://www.blogjava.net/zhengyun/archive/2005/11/16/20139.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Wed, 16 Nov 2005 11:19:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/16/20139.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/20139.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/16/20139.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/20139.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/20139.html</trackback:ping><description><![CDATA[<P>有点像手机英文输入法中，按2一下代表a，连按两下代表b，连续三下代表c。<BR>据说，你可以用timertask来做这件事情。</P>
<P>我的一个设想是(未曾代码试验过，错了请指出)：</P>
<P>用户按键“1”,那么计数他按了多少下，根据他按的次数去你事先写好的数组中查到是哪一个字符。如果用户迟迟没有再按下去，那么到了一定时间，就应该确认他的输入了，timer呢就调用confirmCharacter()。</P>
<P>String[] values = {".,1","abc","def"... ...};<BR>&nbsp;<BR>keyPressed(keyCode) {<BR>&nbsp; int index = keyCode - KEY_NUM0;<BR>&nbsp; if(index == lastindex) charselected++;<BR>&nbsp; else lastindex = index;<BR>&nbsp;&nbsp; // here reset the key confirmation timer<BR>&nbsp;<BR>&nbsp;&nbsp; tempInputString+=values[index].char(charselected);<BR>}<BR>&nbsp;<BR>//When timer gets triggered, it calls this method<BR>void confirmCharacter() {<BR>&nbsp;&nbsp;&nbsp; inputString = tempInputString;<BR>&nbsp;&nbsp;&nbsp; lastindex = -1;<BR>}</P><img src ="http://www.blogjava.net/zhengyun/aggbug/20139.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-16 19:19 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/16/20139.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[JavaME]在高级UI上的keyPressed事件截获的说明</title><link>http://www.blogjava.net/zhengyun/archive/2005/11/16/keypressed.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Wed, 16 Nov 2005 10:44:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/16/keypressed.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/20134.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/16/keypressed.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/20134.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/20134.html</trackback:ping><description><![CDATA[<P><BR>譬如说你是在一个Form上，那么有一点点不幸。<BR>据我所知，除非你在Form上加一个CustomItem，并且选中它，那么你的<BR>protected void keyPressed(int key) {<BR>&nbsp;&nbsp;&nbsp; System.out.println("Key pressed: "+key);<BR>}<BR>能够打印出你的按键。<BR>但是如果你当前焦点在TextField或其他lcdui.Item，那么不可能截获按键。</P>
<P>如果我说错了，请指出。</P>
<P>譬如说你当前是在一个Canvas上，ok，<BR>To "catch" an event, just implement one of</P>
<P># showNotify()<BR># hideNotify()<BR># keyPressed()<BR># keyRepeated()<BR># keyReleased()<BR># pointerPressed()<BR># pointerDragged()<BR># pointerReleased()</P>
<P>如果你特地针对keyPressed，那么：<BR>public class MyCanvas extends Canvas {<BR>&nbsp; MyMIDlet midlet;&nbsp; // the midlet reference<BR>&nbsp; public MyCanvas(MyMIDlet m) {<BR>&nbsp;&nbsp;&nbsp; midlet = m;<BR>&nbsp; }<BR>&nbsp; protected void keyPressed(int keyCode) {<BR>&nbsp;&nbsp;&nbsp; if (getGameAction(keyCode) == Canvas.FIRE) {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; midlet.firePressed();<BR>&nbsp;&nbsp;&nbsp; }<BR>&nbsp; }<BR>}</P>
<P>不过，值得注意的是，手机的按键并不能保证个个都能拿到，而且上下左右之类的特定意义的按键也未见得都有，所以小心。 </P><img src ="http://www.blogjava.net/zhengyun/aggbug/20134.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-16 18:44 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/16/keypressed.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[JavaME]利用java.util.TimerTask来做Splash Screen的N种方法</title><link>http://www.blogjava.net/zhengyun/archive/2005/11/16/timertask.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Wed, 16 Nov 2005 10:19:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/16/timertask.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/20132.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/16/timertask.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/20132.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/20132.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 请参考java.util.TimerTask.TimerTask is something like Timer in VisualBasic. You can sepcify a time period in milliseconds for your requirement"一幅LOGO显示完以后，几秒种自动显示下一幅LOGO". Here is an sample code.pu...&nbsp;&nbsp;<a href='http://www.blogjava.net/zhengyun/archive/2005/11/16/timertask.html'>阅读全文</a><img src ="http://www.blogjava.net/zhengyun/aggbug/20132.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-16 18:19 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/16/timertask.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[JavaME]手机申请移动分配的动态IP（3）?</title><link>http://www.blogjava.net/zhengyun/archive/2005/11/16/ServerSocketConnection3.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Wed, 16 Nov 2005 08:29:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/16/ServerSocketConnection3.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/20086.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/16/ServerSocketConnection3.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/20086.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/20086.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 上回说到申请动态IP是可以了，并且准备好了一个线程等候在socket://10.16.195.219:8110之类的端口上监听。<br><br>这次把代码修改了，完成了监听线程之后，就相当于起了一个Socket Server，一旦有人要连接它，就回复一个字符串说“God bless you!You are the No.”后面加上是第几位访问者的序号。<br><br>菜单中也相应加入了一个命令“联系ServerSocket”，就是向界面中的"ServerSocket为:"编辑框所指明的Server发起Socket连接请求，看能否得到回复；如果有回复，就输出到屏幕上。&nbsp;&nbsp;<a href='http://www.blogjava.net/zhengyun/archive/2005/11/16/ServerSocketConnection3.html'>阅读全文</a><img src ="http://www.blogjava.net/zhengyun/aggbug/20086.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-16 16:29 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/16/ServerSocketConnection3.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>"SymbianOsError -3606"问题解决了</title><link>http://www.blogjava.net/zhengyun/archive/2005/11/16/20071.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Wed, 16 Nov 2005 07:42:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/16/20071.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/20071.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/16/20071.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/20071.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/20071.html</trackback:ping><description><![CDATA[<SPAN style="FONT-WEIGHT: bold; COLOR: #808080; FONT-FAMILY: 宋体">我的７６１０一直好好的，直到昨天突然变成了走CMNET连接点竟然报告"SymbianOsError -3606"。搞得我想测试手机动态ＩＰ之间能否直接用Ｓｏｃｋｅｔ通信都测试不了了。<BR>查询了这个错误号，指的是“KErrGenConnDatabaseDefaultUndefined -3606&nbsp; "No Internet accounts have been set up. Set up an account in Control panel." ”<BR><BR>后来，终于试出来了，只要到接入点删除拔号连接互联网，就可以了。然后起应用程序，再连接网络时，就能够提示选择接入点了。而之前出现－３６０６错误的时候，是不会提示接入点选择的。<BR><BR><SPAN style="FONT-WEIGHT: bold; COLOR: #808080; FONT-FAMILY: 宋体">可能之前我曾经用拨号互联网这个接入点拨号了，导致手机以后连CMNET默认用这个接入点，不带提示的。<BR></SPAN><BR><BR></SPAN><img src ="http://www.blogjava.net/zhengyun/aggbug/20071.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-16 15:42 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/16/20071.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>jsr120规定的受限SMS Port Numbers</title><link>http://www.blogjava.net/zhengyun/archive/2005/11/16/20069.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Wed, 16 Nov 2005 07:38:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/16/20069.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/20069.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/16/20069.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/20069.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/20069.html</trackback:ping><description><![CDATA[<P>下面的表格给出了jsr120规定的受限SMS Port Numbers</P>
<P>Port number Description<BR>2805 WAP WTA secure connection-less session service<BR>2923 WAP WTA secure session service<BR>2948 WAP Push connectionless session service (client side)<BR>2949 WAP Push secure connectionless session service (client side)<BR>5502 Service Card reader<BR>5503 Internet access configuration reader<BR>5508 Dynamic Menu Control Protocol<BR>5511 Message Access Protocol<BR>5512 Simple Email Notification<BR>9200 WAP connectionless session service<BR>9201 WAP session service<BR>9202 WAP secure connectionless session service<BR>9203 WAP secure session service<BR>9207 WAP vCal Secure<BR>49996 SyncML OTA configuration<BR>49999 WAP OTA configuration<BR><BR>普通SMS的端口是特定的，可以通过this.getAppProperty("SMS_Port")来获取，只要你的设备支持JSR120。</P><img src ="http://www.blogjava.net/zhengyun/aggbug/20069.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-16 15:38 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/16/20069.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[JavaME]手机是否能够申请到动态IP?</title><link>http://www.blogjava.net/zhengyun/archive/2005/11/09/dynamicipmobile.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Tue, 08 Nov 2005 16:27:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/09/dynamicipmobile.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/18876.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/09/dynamicipmobile.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/18876.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/18876.html</trackback:ping><description><![CDATA[<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: right" align=right><B><SPAN lang=EN-US style="FONT-SIZE: 24pt; COLOR: gray; mso-color-alt: #333333; text-effect: emboss">[JavaME]</SPAN></B><B><SPAN style="FONT-SIZE: 24pt; COLOR: gray; FONT-FAMILY: 宋体; mso-color-alt: #333333; text-effect: emboss; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">手机是否能够申请到动态</SPAN></B><B><SPAN lang=EN-US style="FONT-SIZE: 24pt; COLOR: gray; mso-color-alt: #333333; text-effect: emboss">IP?<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></B></P>
<H2 style="MARGIN: 13pt 0cm"><A name=_1概述></A><SPAN style="FONT-FAMILY: 黑体; mso-ascii-font-family: Arial">用</SPAN><SPAN lang=EN-US><FONT face=Arial>ServerSocketConnection</FONT></SPAN><SPAN style="FONT-FAMILY: 黑体; mso-ascii-font-family: Arial">？</SPAN></H2>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.1pt; mso-char-indent-count: 2.0"><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: #ff6600; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><A href="http://www.j2medev.com/bbs/dispbbs.asp?boardid=21&amp;id=4099&amp;star=1#2083">http://www.j2medev.com/bbs/dispbbs.asp?boardid=21&amp;id=4099&amp;star=1#2083</A> </SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 10.5pt; COLOR: #ff6600; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-bidi-font-size: 12.0pt">，这里是原始讨论贴。</SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: #ff6600; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></B></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p>&nbsp;</o:p></SPAN></P>
<P style="BACKGROUND: white; WORD-BREAK: break-all; TEXT-INDENT: 18pt"><FONT face=宋体><SPAN style="FONT-SIZE: 10.5pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-bidi-font-size: 12.0pt">这里我们给出一个思路：</SPAN><SPAN style="FONT-SIZE: 9pt; COLOR: black; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-bidi-font-family: Tahoma">可以先这样，手机先访问一个固定的网址，然后就会被分配一个</SPAN></FONT><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma">IP</SPAN><SPAN style="FONT-SIZE: 9pt; COLOR: black; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-bidi-font-family: Tahoma"><FONT face=宋体>，这就是手机用来和外界联系的</FONT></SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma">IP</SPAN><FONT face=宋体><SPAN style="FONT-SIZE: 9pt; COLOR: black; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-bidi-font-family: Tahoma">了。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma"><o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt; WORD-BREAK: break-all; TEXT-INDENT: 24.05pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-char-indent-count: 2.67" align=left><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma; mso-font-kerning: 0pt">Efei</SPAN><SPAN style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-font-kerning: 0pt; mso-bidi-font-family: Tahoma">说，刚才测试了下，使用一段文档上提供的代码，也就那两三句话</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma; mso-font-kerning: 0pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt; WORD-BREAK: break-all; TEXT-INDENT: 15.05pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" align=left><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma; mso-font-kerning: 0pt">try{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ServerSocketConnection scs = (ServerSocketConnection) Connector.open("socket://:1234");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;frmMain.append("ip:" + scs.getLocalAddress());<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;catch (Exception e) {}<o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt; WORD-BREAK: break-all; TEXT-INDENT: 15.05pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" align=left><SPAN style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-font-kerning: 0pt; mso-bidi-font-family: Tahoma">取得了一个</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma; mso-font-kerning: 0pt">IP</SPAN><SPAN style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-font-kerning: 0pt; mso-bidi-font-family: Tahoma">：</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma; mso-font-kerning: 0pt">10.66.7.28</SPAN><SPAN style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-font-kerning: 0pt; mso-bidi-font-family: Tahoma">。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma; mso-font-kerning: 0pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt; WORD-BREAK: break-all; TEXT-INDENT: 15.05pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" align=left><SPAN style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-font-kerning: 0pt; mso-bidi-font-family: Tahoma">这个</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma; mso-font-kerning: 0pt">IP</SPAN><SPAN style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-font-kerning: 0pt; mso-bidi-font-family: Tahoma">外部网络是无法访问的，换言之，内部网络可以访问。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma; mso-font-kerning: 0pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt; WORD-BREAK: break-all; TEXT-INDENT: 15.05pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" align=left><SPAN style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-font-kerning: 0pt; mso-bidi-font-family: Tahoma">所以只要在移动的机房有服务器，你可以访问了</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma; mso-font-kerning: 0pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt; WORD-BREAK: break-all; TEXT-INDENT: 15.05pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" align=left><SPAN style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-font-kerning: 0pt; mso-bidi-font-family: Tahoma">但是还有个问题，这个</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma; mso-font-kerning: 0pt">IP</SPAN><SPAN style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-font-kerning: 0pt; mso-bidi-font-family: Tahoma">是动态变化的，所以至少需要客户端先访问服务器一下，让服务器知道你现在的</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma; mso-font-kerning: 0pt">IP</SPAN><SPAN style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: 宋体; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-font-kerning: 0pt; mso-bidi-font-family: Tahoma">。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma; mso-font-kerning: 0pt"><o:p></o:p></SPAN></P>
<P style="BACKGROUND: #e4e8ef; WORD-BREAK: break-all; TEXT-INDENT: 15.05pt"><SPAN style="FONT-SIZE: 9pt; COLOR: black; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-bidi-font-family: Tahoma"><FONT face=宋体>确实如</FONT></SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma">efei</SPAN><SPAN style="FONT-SIZE: 9pt; COLOR: black; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-bidi-font-family: Tahoma"><FONT face=宋体>所说，我在手机上测试结果也是拿到了</FONT></SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma">socket://10.15.134.128:4234</SPAN><SPAN style="FONT-SIZE: 9pt; COLOR: black; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-bidi-font-family: Tahoma"><FONT face=宋体>，看来是没办法访问的了。但是我觉得虽然我们的位于</FONT></SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma">Internet</SPAN><SPAN style="FONT-SIZE: 9pt; COLOR: black; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-bidi-font-family: Tahoma"><FONT face=宋体>的服务器无法访问，但是也许另一部手机是可以访问这个地址的，所以手机的</FONT></SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma">p2p</SPAN><FONT face=宋体><SPAN style="FONT-SIZE: 9pt; COLOR: black; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-bidi-font-family: Tahoma">理论上也许是可行的。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma"><o:p></o:p></SPAN></FONT></P>
<P style="BACKGROUND: #e4e8ef; WORD-BREAK: break-all; TEXT-INDENT: 15.05pt"><SPAN style="FONT-SIZE: 9pt; COLOR: black; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-bidi-font-family: Tahoma"><FONT face=宋体>我的测试代码在</FONT></SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma"><A href="http://www.cnblogs.com/Files/zhengyun_ustc/GetDynamicIP.rar" target=_blank>http://www.cnblogs.com/Files/zhengyun_ustc/GetDynamicIP.rar</A></SPAN><SPAN style="FONT-SIZE: 9pt; COLOR: black; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-bidi-font-family: Tahoma"><FONT face=宋体>下载，安装的</FONT></SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma">jar</SPAN><SPAN style="FONT-SIZE: 9pt; COLOR: black; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-bidi-font-family: Tahoma"><FONT face=宋体>包在</FONT></SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma"><A href="http://www.cnblogs.com/Files/zhengyun_ustc/GetDynamicIP-deployed.rar" target=_blank>http://www.cnblogs.com/Files/zhengyun_ustc/GetDynamicIP-deployed.rar</A></SPAN><FONT face=宋体><SPAN style="FONT-SIZE: 9pt; COLOR: black; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-bidi-font-family: Tahoma">下载，</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma"><o:p></o:p></SPAN></FONT></P>
<P style="BACKGROUND: #e4e8ef; WORD-BREAK: break-all; TEXT-INDENT: 15.05pt"><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma">Nokia7610</SPAN><FONT face=宋体><SPAN style="FONT-SIZE: 9pt; COLOR: black; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-bidi-font-family: Tahoma">测试通过。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: Tahoma"><o:p></o:p></SPAN></FONT></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-bidi-font-size: 12.0pt">朋友们也可以自己在真机上试验下这个程序。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN></P>
<TABLE class=MsoNormalTable style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; MARGIN: auto auto auto 14.75pt; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-table-layout-alt: fixed; mso-border-alt: solid white .5pt; mso-yfti-tbllook: 480; mso-padding-alt: .7pt 5.75pt .7pt 5.75pt; mso-border-insideh: .5pt solid white; mso-border-insidev: .5pt solid white" cellSpacing=0 cellPadding=0 border=1>
<TBODY>
<TR style="HEIGHT: 10.9pt; mso-yfti-irow: 0; mso-yfti-firstrow: yes">
<TD style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 5.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 5.75pt; BACKGROUND: #9faccb; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: white 1pt solid; WIDTH: 414pt; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 10.9pt; mso-border-alt: solid white .5pt" vAlign=top width=552>
<P><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 10.5pt; COLOR: white; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana"><FONT face=宋体>用下面的代码可以得到一个</FONT></SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: white; FONT-FAMILY: Verdana">socket </SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 10.5pt; COLOR: white; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana"><FONT face=宋体>动态</FONT></SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: white; FONT-FAMILY: Verdana">IP<o:p></o:p></SPAN></B></P></TD></TR>
<TR style="HEIGHT: 15.45pt; mso-yfti-irow: 1; mso-yfti-lastrow: yes">
<TD style="BORDER-RIGHT: white 1pt solid; PADDING-RIGHT: 5.75pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.75pt; BACKGROUND: #e6e6e6; PADDING-BOTTOM: 0.7pt; BORDER-LEFT: white 1pt solid; WIDTH: 414pt; PADDING-TOP: 0.7pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 15.45pt; mso-border-alt: solid white .5pt; mso-border-top-alt: solid white .5pt" vAlign=top width=552>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><o:p>&nbsp;</o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">//Use an unrestricted filter.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">String filter = "*";<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">String url = "socket://:" + m_sSocketPort;<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">ServerSocketConnection ssc = null;<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><o:p>&nbsp;</o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">try<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">{<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>//Open the connection.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN></SPAN><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">ssc =<o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><SPAN style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>(ServerSocketConnection) Connector.open(url);<o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>System.out.println("/* Already Open the connection!");<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><SPAN style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>//Discover the system-assigned port.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>url = "socket://:" + ssc.getLocalPort();<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>//Register the connection now. The AMS will<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>//remember the registered URL even when the MIDlet<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>//is not active.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>PushRegistry.registerConnection(url,<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><SPAN style="mso-tab-count: 3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>m_sMidletClassName, filter);<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>System.out.println("/* Already Register the connection now!" +<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><SPAN style="mso-tab-count: 3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>url);<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>//Now publish the push URL. We can use an HTTP<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>//POST or a socket or datagram for this.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>String purl;<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>purl = "socket://" + ssc.getLocalAddress() + <o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-tab-count: 1">&nbsp;&nbsp; </SPAN>":" + ssc.getLocalPort();<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>publishInboundConnection(purl, m_sMidletClassName);<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">}</SPAN><B style="mso-bidi-font-weight: normal"><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 新宋体; mso-hansi-font-family: Arial; mso-font-kerning: 0pt; mso-bidi-font-family: Arial"><o:p></o:p></SPAN></B></P></TD></TR></TBODY></TABLE>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p>&nbsp;</o:p></SPAN></P>
<P class=MsoNormalIndent style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p>&nbsp;</o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US><o:p>&nbsp;</o:p></SPAN></P><img src ="http://www.blogjava.net/zhengyun/aggbug/18876.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-09 00:27 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/09/dynamicipmobile.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[JavaME]Real World Experiences with the WMA and the Push Registry[ZT]</title><link>http://www.blogjava.net/zhengyun/archive/2005/11/08/18819.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Tue, 08 Nov 2005 09:37:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/08/18819.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/18819.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/08/18819.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/18819.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/18819.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: This article will recount my experiences on a recent project that involved use of the Wireless Messaging API (WMA) and the Push Registry. The Push Registry is a feature new to the MIDP 2.0 spec, and the WMA, while not a MIDP 2.0 feature, is an optional feature that can be found on several MIDP 1.0 and 2.0 phones.<br>http://www.microjava.com/articles/techtalk/WMA20&nbsp;&nbsp;<a href='http://www.blogjava.net/zhengyun/archive/2005/11/08/18819.html'>阅读全文</a><img src ="http://www.blogjava.net/zhengyun/aggbug/18819.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-08 17:37 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/08/18819.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[收藏]MIDlet如何签名的tutorial</title><link>http://www.blogjava.net/zhengyun/archive/2005/11/08/midletsigning.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Tue, 08 Nov 2005 09:16:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/08/midletsigning.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/18812.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/08/midletsigning.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/18812.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/18812.html</trackback:ping><description><![CDATA[<H1 style="MARGIN: 17pt 0cm 16.5pt"><SPAN lang=DA style="mso-font-kerning: 0pt; mso-ansi-language: DA">MIDlet jar signing (a tutorial)<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></H1>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体"><A href="http://www.spindriftpages.net/pebble/dave/2005/06/20/1119275880301.html"><B>http://www.spindriftpages.net/pebble/dave/2005/06/20/1119275880301.html</B></A> <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">I needed to sign a MIDlet and deploy it on a Nokia Series 60 phone (i.e. 6630, 6680 etc) so the user doesn't constantly get security alerts. I figured (hoped?) this might be a fairly simple task since any useful application is likely to need access to restricted functionality. It turns out I was very, very wrong. There is virtually no information on how to sign and deploy an application on the web. Anyway here are the steps I took to get to et my MIDlet signed and installed! <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-outline-level: 3; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" align=left><B><SPAN lang=EN-US style="FONT-SIZE: 13.5pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Get required software<o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l3 level1 lfo1; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">1.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Get and install the <A href="http://javashoplm.sun.com/ECom/docs/Welcome.jsp?StoreId=22&amp;PartDetailId=j2sdk-1.4.2_08-oth-JPR&amp;SiteId=JSC&amp;TransactionId=noreg"><B><SPAN style="mso-bidi-font-size: 12.0pt"><FONT color=#4169aa>Java SDK (JDK)</FONT></SPAN></B></A> from <A href="http://www.sun.com/java/"><B><SPAN style="mso-bidi-font-size: 12.0pt"><FONT color=#4169aa>Sun</FONT></SPAN></B></A> (you should already have this) <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l3 level1 lfo1; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">2.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Get and install the <A href="http://java.sun.com/products/sjwtoolkit/download-2_2.html"><B><SPAN style="mso-bidi-font-size: 12.0pt"><FONT color=#4169aa>Java Wireless Toolkit (WTK)</FONT></SPAN></B></A> also from <A href="http://www.sun.com/java/"><B><SPAN style="mso-bidi-font-size: 12.0pt"><FONT color=#4169aa>Sun</FONT></SPAN></B></A> <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l3 level1 lfo1; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">3.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Optionally get and install <A href="http://ant.apache.org/"><B><SPAN style="mso-bidi-font-size: 12.0pt"><FONT color=#4169aa>Ant</FONT></SPAN></B></A> and <A href="http://antenna.sourceforge.net/"><B><SPAN style="mso-bidi-font-size: 12.0pt"><FONT color=#4169aa>Antenna</FONT></SPAN></B></A> to allow you to automate your build <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-outline-level: 3; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" align=left><B><SPAN lang=EN-US style="FONT-SIZE: 13.5pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Create and import a certificate<o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo2; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">1.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">You need to use <A href="http://java.sun.com/j2se/1.4.2/docs/tooldocs/windows/keytool.html"><B><SPAN style="mso-bidi-font-size: 12.0pt"><FONT color=#4169aa>keytool</FONT></SPAN></B></A> (from the JDK) <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo2; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">2.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">I used the following command <I>keytool -genkey -alias {myalias} -keyalg RSA -validity 365</I> <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo2; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">3.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">This will prompt you for a keystore password, enter your keystore password (if you have an existing keystore) or the one you want to use if you don't have one yet <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo2; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">4.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Fill in all the prompts about location/company name etc <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo2; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">5.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Run <I>keytool -list</I> to see your new certificate <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo2; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">6.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Next you must export the certificate so you can import it to your phone <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo2; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">7.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Run <I>keytool -export -alias {myalias} -file mycertificate.crt</I> <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo2; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">8.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Import the certificate into your phone, in Windows XP SP2 I could do this by right clicking the file and selecting "Send to Bluetooth Device" <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-outline-level: 3; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" align=left><B><SPAN lang=EN-US style="FONT-SIZE: 13.5pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Build and package the application<o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo3; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">1.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Use <A href="http://java.sun.com/j2se/1.4.2/docs/tooldocs/windows/javac.html"><B><SPAN style="mso-bidi-font-size: 12.0pt"><FONT color=#4169aa>javac</FONT></SPAN></B></A> to build your MIDlet paying special attention to your classpath and bootclasspath options (otherwise preverification will fail). I also set target to 1.1 and source to 1.3 <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo3; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">2.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Generate your JAD file the critical attributes in the JAD are MIDlet-Jar-URL, MIDlet-Jar-Size, MIDlet-Permissions we also included MIDlet-Icon, MicroEdition-Configuration, MicroEdition-Profile, MIDlet-Name, MIDlet-Push-1, MIDlet-Icon, MIDlet-Descriptionn and MIDlet-Version <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo3; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">3.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Generate the MANIFEST.MF file based on your JAD, you must remove MIDlet-Jar-Size and MIDlet-Jar-URL <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo3; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">4.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Both these tasks can be completed using the wtkJad Antenna task <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo3; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">5.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Package and preverify the app using the wtkPackage Antenna Task you must set the classpath and bootclasspath properties correctly otherwise Preverification will fail <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-outline-level: 3; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" align=left><B><SPAN lang=EN-US style="FONT-SIZE: 13.5pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Sign the application<o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l2 level1 lfo4; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">1.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Sign the Application using <A href="http://java.sun.com/j2se/1.4.2/docs/tooldocs/windows/jarsigner.html"><B><SPAN style="mso-bidi-font-size: 12.0pt"><FONT color=#4169aa>jarsigner</FONT></SPAN></B></A> <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l2 level1 lfo4; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">2.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Run <I>jarsigner -keystore {mykeystore} -storepass (mypassword} {myjar} {myalias}</I> <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l2 level1 lfo4; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">3.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Now you have a signed jar you need to update the MIDlet-Jar-Size in your JAD <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l2 level1 lfo4; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">4.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Now add the certificate to the JAD using <A href="http://java.sun.com/j2me/docs/wtk2.2/docs/UserGuide-html/commandline.html"><B><SPAN style="mso-bidi-font-size: 12.0pt"><FONT color=#4169aa>JadTool.jar</FONT></SPAN></B></A> from the WTK <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l2 level1 lfo4; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">5.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Run <I>java -jar JadTool.jar -addcert -alias {myalias} -storepass {mypassword} -keystore {mykeystore} -inputjad {myinputjad} -outputjad {myoutputjad}</I> <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l2 level1 lfo4; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">6.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Now add the signature to the JAD again using <A href="http://java.sun.com/j2me/docs/wtk2.2/docs/UserGuide-html/commandline.html"><B><SPAN style="mso-bidi-font-size: 12.0pt"><FONT color=#4169aa>JadTool.jar</FONT></SPAN></B></A> <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l2 level1 lfo4; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">7.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Run <I>java -jar JadTool.jar -addjarsig -alias {myalias} -jarfile {myjar} -storepass {mypassword} -keypass {mypassword} -keystore {mykeystore} -inputjad {myinputjad} -outputjad {myoutputjad}</I> <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: white; MARGIN: 0cm 0cm 0pt 46pt; TEXT-INDENT: -18pt; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l2 level1 lfo4; tab-stops: list 36.0pt" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">8.<SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN></SPAN><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">You can now deploy this to a webserver with the MIME types set correctly and download it to your phone and it will be a trusted 3rd party application <o:p></o:p></SPAN></P>
<P class=MsoNormal style="BACKGROUND: #f8f8f8; MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" align=left><SPAN lang=EN-US style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">Tags : <A href="http://technorati.com/tag/jar"><SPAN style="COLOR: gray; mso-ansi-font-weight: normal; mso-bidi-font-weight: normal"><STRONG>jar</STRONG></SPAN></A>, <A href="http://technorati.com/tag/signing"><SPAN style="COLOR: gray; mso-ansi-font-weight: normal; mso-bidi-font-weight: normal"><STRONG>signing</STRONG></SPAN></A>, <A href="http://technorati.com/tag/nokia"><SPAN style="COLOR: gray; mso-ansi-font-weight: normal; mso-bidi-font-weight: normal"><STRONG>nokia</STRONG></SPAN></A>, <A href="http://technorati.com/tag/midlets"><SPAN style="COLOR: gray; mso-ansi-font-weight: normal; mso-bidi-font-weight: normal"><STRONG>midlets</STRONG></SPAN></A>, <A href="http://technorati.com/tag/technology"><SPAN style="COLOR: gray; mso-ansi-font-weight: normal; mso-bidi-font-weight: normal"><STRONG>technology</STRONG></SPAN></A><o:p></o:p></SPAN></P><img src ="http://www.blogjava.net/zhengyun/aggbug/18812.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-08 17:16 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/08/midletsigning.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>同一个MIDlet是否允许多个MessageConnection？</title><link>http://www.blogjava.net/zhengyun/archive/2005/11/08/18765.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Tue, 08 Nov 2005 06:08:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/08/18765.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/18765.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/08/18765.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/18765.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/18765.html</trackback:ping><description><![CDATA[<P>第一，同一个端口是不允许两个程序监听的。<BR>参见注释：<BR>Trying to bind to an already reserved local address causes an IOException to be thrown！<BR>也就是说。调用(MessageConnection)Connector.open("sms://:5000"); 时就会抛出异常。</P>
<P>第二，(MessageConnection)Connector.open监听不同端口是没有问题的。比如<A href="http://www.cnblogs.com/Files/zhengyun_ustc/SimplePushRegistry.rar">http://www.cnblogs.com/Files/zhengyun_ustc/SimplePushRegistry.rar</A>的例子，你就可以看出这一点。在midlet的startApp中，<BR>&nbsp;protected void startApp() throws MIDletStateChangeException {<BR>&nbsp;&nbsp;<BR>&nbsp;&nbsp;if (!init) {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; init = true;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String[] conns = <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PushRegistry.listConnections(false);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("Found " + conns.length + <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; " connections.");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for(int ccnt=0; ccnt &lt; conns.length; ccnt++){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DatagramHandler handler = <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; new DatagramHandler(conns [ccnt], this);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; connectionHandlers.addElement(handler);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; handler.start();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp; }</P>
<P>&nbsp;}<BR>从而得到所有注册的连接，并转发给线程处理。线程就可以根据所传入的连接名称，自行打开：<BR>&nbsp;&nbsp; public DatagramHandler(String c, PushSMSListner midlet){<BR>&nbsp;&nbsp;&nbsp;&nbsp; try {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dgc = (DatagramConnection)Connector.open(c);<BR>&nbsp;&nbsp;&nbsp;&nbsp; } catch (IOException x){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; x.printStackTrace();<BR>&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;<BR>&nbsp;&nbsp;m_midlet = midlet;<BR>&nbsp;&nbsp; }</P><img src ="http://www.blogjava.net/zhengyun/aggbug/18765.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-08 14:08 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/08/18765.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>J2ME中有没有方法读取SIM卡中的内容?</title><link>http://www.blogjava.net/zhengyun/archive/2005/11/08/jsr177.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Tue, 08 Nov 2005 05:58:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/08/jsr177.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/18763.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/08/jsr177.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/18763.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/18763.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 一般性的答案是：可以的。只不过现在的手机尚且不支持此标准。<br><br>更多的信息：<br><br>对于JavaCard这种东西，MIDP2.0中扩展了一个叫做Security and Trust Services API for J2ME (SATSA); JSR 177的东西，具体信息参见http://java.sun.com/products/satsa/。&nbsp;&nbsp;<a href='http://www.blogjava.net/zhengyun/archive/2005/11/08/jsr177.html'>阅读全文</a><img src ="http://www.blogjava.net/zhengyun/aggbug/18763.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-08 13:58 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/08/jsr177.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>midpjni: how MIDlets can access native services</title><link>http://www.blogjava.net/zhengyun/archive/2005/11/05/midpjni.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Sat, 05 Nov 2005 09:37:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/05/midpjni.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/18316.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/05/midpjni.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/18316.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/18316.html</trackback:ping><description><![CDATA[<FONT size=2><FONT face=Arial><STRONG><FONT color=#0060a0>Question:<BR></FONT></STRONG>Can I access native functionality from a MIDlet?</FONT></FONT><BR><BR><B><FONT face=Arial color=#0060a0 size=2>Answer:</FONT></B><FONT face=Arial color=#0060a0 size=2> </FONT><BR><FONT face=arial size=2>Not directly since MIDP does not support JNI. 
<UL><BR>However, it is possible for a MIDlet to communicate with a C++ application running on the host device using a standard communication protocol such as TCP/IP sockets.<BR><BR>For instance the native application can provide a (server) socket listening for incoming connections on a specific port (say 1234). The MIDlet can then use the GCF to opens a client socket connection using the local loopback address to communicate with the native application as follows:<BR><BR><FONT face="Courier New">SocketConnection mySocket = (SocketConnection) Connector.open("socket://127.0.0.1:1234");</FONT><BR><BR>Once a two way connection has been established the MIDlet client can make requests for data from the native server using a custom protocol understood by both.<BR><BR>Of course this approach relinquishes many of the tradition strengths of MIDP (such as cross platform portability) requiring as it does the implementation, installation and launching of a dedicated native application as well as the MIDlet. However it may provide a route for application developers to leverage existing Java code to a Java implementation with different capabilities, rather than undertake a complete re-write in C++.<BR><BR>For further information see:</UL>
<UL><A href="http://www.symbian.com/developer/techlib/papers/java_MIDP.asp">http://www.symbian.com/developer/techlib/papers/java_MIDP.asp</A><BR>"Extending the Reach of MIDlets: how MIDlets can access native services"<BR>and<BR><A href="http://midpjni.com/">http://midpjni.com/</A><BR></UL>
<UL><BR>Also see FAQ-1206 <A href="http://www3.symbian.com/faq.nsf/72801504e48494d0802569e000595040/afd2ad495d7da53480256f87003ceac2?OpenDocument"><IMG src="http://www3.symbian.com/icons/doclink.gif" border=0></A><BR></FONT></UL><img src ="http://www.blogjava.net/zhengyun/aggbug/18316.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-05 17:37 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/05/midpjni.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>手机也能玩转MSN传情动漫！ J2ME实作</title><link>http://www.blogjava.net/zhengyun/archive/2005/11/04/popupwinksonmobile.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Fri, 04 Nov 2005 09:32:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/11/04/popupwinksonmobile.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/18173.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/11/04/popupwinksonmobile.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/18173.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/18173.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 本文档并不是一个关于PopupWinks On Mobile 之Kjava版本的开发说明，这里只是一个总入口。我将给出手机传情动漫的奇异特性、用户使用说明，以及演示程序下载地址；并且给出开发指导的相关链接。慢慢看下去，你会大有收获的。<br>有源代码可以下载研究。&nbsp;&nbsp;<a href='http://www.blogjava.net/zhengyun/archive/2005/11/04/popupwinksonmobile.html'>阅读全文</a><img src ="http://www.blogjava.net/zhengyun/aggbug/18173.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-11-04 17:32 <a href="http://www.blogjava.net/zhengyun/archive/2005/11/04/popupwinksonmobile.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[j2me]手机也可以玩播客(Podcast)！ Geek开源开发说明</title><link>http://www.blogjava.net/zhengyun/archive/2005/10/31/ipodderxmobile.html</link><dc:creator>让变化成为计划的一部分</dc:creator><author>让变化成为计划的一部分</author><pubDate>Mon, 31 Oct 2005 08:20:00 GMT</pubDate><guid>http://www.blogjava.net/zhengyun/archive/2005/10/31/ipodderxmobile.html</guid><wfw:comment>http://www.blogjava.net/zhengyun/comments/17566.html</wfw:comment><comments>http://www.blogjava.net/zhengyun/archive/2005/10/31/ipodderxmobile.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhengyun/comments/commentRss/17566.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhengyun/services/trackbacks/17566.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: [J2ME] 手机也可以玩播客(Podcast)！ Geek说明摘要：本文档给出iPodderX on Mobile 之Kjava版本的Geek说明。第1章 简单描述这个iPodderX的功能和特别之处。第2章 给出了 这个iPodderX的下载资源。我的IPodderX on Mobile资源：1：《[J2ME]手机也可以玩播客(Podcast)！ Geek客说明》...&nbsp;&nbsp;<a href='http://www.blogjava.net/zhengyun/archive/2005/10/31/ipodderxmobile.html'>阅读全文</a><img src ="http://www.blogjava.net/zhengyun/aggbug/17566.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhengyun/" target="_blank">让变化成为计划的一部分</a> 2005-10-31 16:20 <a href="http://www.blogjava.net/zhengyun/archive/2005/10/31/ipodderxmobile.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>