??xml version="1.0" encoding="utf-8" standalone="yes"?> 郑昀@ultrapower 产品名称 产品版本 Keyword: Mobile RSS Bloglines BloglinesMobileBuddy 1.0.12 [J2ME] BloglinesMobileBuddy (Bloglines手机伴G) 开源说?/SPAN> 我的资源Q?/SPAN>虽然q有q样那样的问题,但是作ؓ一?/SPAN>Alpha版本?/SPAN>j2me软gQ能够在Nokia S60pd手机上运行,q样已经_了,所以先攑և源代码,希望抛砖引玉吸引有志者l在此基上修攏V?/SPAN> http://www.cnblogs.com/Files/zhengyun_ustc/flickrBuddy.rar 服务器端?/SPAN>web service已经能够发布alpha版本了,请在下蝲。这是一?/SPAN>tomcat+axis搭徏环境下的java web service?/SPAN> 提请注意的是Q由于本源代码中包含?/SPAN>bluegammon/jmobilecore/henson.midp.Float/Zohar Melamed’s Jbloglines{开放源代码库,所以我也遵?/SPAN>GPL协议Q请看后面的“开源版权声明”?/SPAN> http://www.cnblogs.com/Files/zhengyun_ustc/BloglinesMobile-deployed.rar Nokia S60pd安装E序Q用数据U传BloglinesMobile.jar到?zhn)的手Z卛_安装?/SPAN> 试体验 我在Nokia 7610上测试过了,整体视觉效果q是不错的,而且d和阅读速度q是蛮快的。昨晚上Q在手机上竟然踏t实实把按摩乳的?/SPAN>让小强真正来一ơ历?/SPAN>》和?/SPAN>正面新闻》共计七千七百余字的|志看完了,呵呵Q不得不佩服Nokia7610的内存够大的Q竟然还能够畅地显C?/SPAN> Z么要?/SPAN>Bloglines制作无线阅读软g呢? ?/SPAN>2005q?/SPAN>10月,Web 2.0 Conference最后一天的会议上,Ask Jeeves的一位副董事长公布了旗下Bloglines|站的一?/SPAN>最新数?/SPAN>(PPT格式)Q这些数据也可以从另一个方面体现出目前RSS的用状c?/SPAN> - 有超q?/SPAN>135万条Feed臛_有一个订阅者?/SPAN> - 14,363?/SPAN>Feed的订阅者超q?/SPAN>50人?/SPAN> - 437?/SPAN>Feed的订阅者在1000Z上?/SPAN> - 60?/SPAN>Feed?/SPAN>5000Z上订阅?/SPAN> - Slashdot是唯一订阅者超q?/SPAN>50000人的Feed?/SPAN> Bloglines是目前用最为广泛的在线RSS阅读服务之一Q这么多的订阅者,他们也许需要在无线条g下阅?/SPAN>Bloglines提供的服务,所以我制作了这ƾ手机程序?/SPAN> Bloglines 是什?/SPAN> Bloglines 是一个全球最抢眼的基?/SPAN>Web?/SPAN>blog订阅跟踪服务之一Q它允许个h?/SPAN> weblog 和新ȝ各种订阅保持跟踪Q这些订阅内容以 Really Simple SyndicationQ?/SPAN>RSSQ和 Atom 提供的Ş式交付?/SPAN> 我每天第一件事情就是打开bloglinesQ看看我订阅?/SPAN>21个资料库有没有更C们的blog?/SPAN>21个资料库Q是不是了点?我也曄看过其他人有q成千上万个资料库,不过Q我感觉其中80%?/SPAN>blog其实不值得逐日跟踪?/SPAN> ׃我这个版本的 Bloglines Mobile Buddy手机伴G 也是Zbluegammon/jmobilecore/henson.midp.Float/Zohar Melamed’s Jbloglines{?/SPAN>基础上加入我的智慧整合而来的,所以决定遵?/SPAN>GPL协议的大意开放源代码Q?zhn)可以自由传播和修改,在遵照下面的U束条g的前提下Q?/SPAN> 条g1 只要你在Bloglines Mobile Buddy?/SPAN>每一副本上明昑֒恰当地出版版权声明,保持此许可证的声明和没有担保的声明完整无损,q和E序一L每个其他的程序接受者一份许可证的副本,你就可以用Q何媒体复制和发布你收到的原始的程序的源代码。你可以{让副本的实际行动收取一定费用,但必M先得到郑昀的同意?/SPAN> 条g2 你可以修?/SPAN>Bloglines Mobile BuddyE序的一个或几个副本或程序的M部分Q以此Ş成基于程序的作品。只要你同时满下面的所有条Ӟ你就可以按前面第一Ƅ要求复制和发布这一l过修改的程序或作品?/SPAN> aQ?/SPAN> 你必d修改的文件中附有明确的说明:你修改了q一文g及具体的修改日期?/SPAN> bQ?/SPAN> 你必M你发布或出版的作品(它包含程序的全部或一部分Q或包含q序的全部或部分衍生的作品Q允许第三方作ؓ整体按许可证条款免费使用?/SPAN> cQ?/SPAN> 如果修改的程序在q行时以交互方式d命oQ你必须使它在开始进入常规的交互使用方式时打印或昄声明Q包括适当的版权声明和没有担保的声明(或者你提供担保的声明)Q用户可以按此许可证条款重新发布E序的说明;q告诉用户如何看到这一许可证的副本。(例外的情况:如果原始E序以交互方式工作,它ƈ不打印这L声明Q你的基于程序的作品也就不用打印声明Q?/SPAN> q样Q?zhn)可以自׃用ƈ传播本源代码Q当然请(zhn)原不动地保留原作者信息?/SPAN> ~写?/SPAN> 日期 关键?/SPAN> 郑昀@ultrapower 2005-12-27 Mobile RSS READER ONLINE BLOGLINES Java J2ME LQ?BR>《Series 60 Developer Platform 2.0: Specification v1.0》, /** /** /** /** /** /** QIftkeysq没有被包含在QDQͼQ0的规范中Q所以, 以下Ҏ(gu)打电(sh)话的手机按键的定义是在nokia、三星和MotorolaQv80/220/300/400/500/600, e398, c650Q:
/** 以下q种定义是在襉K子:
/** 以下q种定义是在Motorola platform phones iDEN, T280, T72x, v6x
/** 2005q?2?5日晚上: W一步,输入你的bloglinesd?sh)子邮g地址Q?/P>
然后输入你的d密码Q?/P>
然后手机去bloglines站点索你所订阅的blog源,q将标题和未读blog条目数显C在界面上,如下所C: 点击其中一个blog标题Q你可以看到该blog的你未读过的blog文章集合Q如下所C: 与之对照的blog文章如下所C: 更多囄Q?BR> 2005q?2?5? 它是利用?A >http://www.bloglines.com/myblogsq个世界上最大的blog订阅源服务提供的服务Q请看它的界面: 下面是我的“关于”,呵呵Q?BR>
开源版权声?/SPAN>
]]>
你所说的KEY_SOFTKEY1,KEY_SOFTKEY2,KEY_SOFTKEY3q几个定义,应该是Nokia Qテ QPQ中的uullEanvas定义的吧?
而QDQͼQ0的Eanvas规范ƈ没有定义q几个?/P>
Page 77:
Left soft key, -6, "Left soft key" or left soft-key symbol
Right soft key, -7, "Right soft key" or right soft-key symbol
Middle soft key, -5, "Select", "Middle soft key" or similar symbol
所以我们的Qokia、Samsung和SonyEricsson专有E序中会q么定义Q?BR> /**
* Key code for the FIRE game action.
*/
public static final int KEY_FIRE = -5;
* Key code for left soft key
*/
public static final int KEY_SOFT_LEFT = -6;
* Key code for right soft key
*/
public static final int KEY_SOFT_RIGHT = -7;
在摩托罗拉专有的E序中则q么定义Q?BR> /**
* Key code for the FIRE game action.
*/
public static final int KEY_FIRE = 20;
* Key code for left soft key
*/
public static final int KEY_SOFT_LEFT = 21;
* Key code for right soft key
*/
public static final int KEY_SOFT_RIGHT = 22;
在西门子E序中则q么定义Q?BR> /**
* Key code for the FIRE game action.
*/
public static final int KEY_FIRE = -26;
* Key code for left soft key
*/
public static final int KEY_SOFT_LEFT = -1;
* Key code for right soft key
*/
public static final int KEY_SOFT_RIGHT = -4;
如果你非要在手机上用这几个QIftkeysQ那么请注意手机的差异,你可能需要针对不同款手机分别定义了?BR>
* Key code for PHONE_ON key (green button)
*/
public static final int KEY_PHONE_ON = -10;
* Key code for PHONE_ON key (green button)
*/
public static final int KEY_PHONE_ON = -11;
* Key code for PHONE_ON key (green button)
*/
public static final int KEY_PHONE_ON = -14;
]]>
今日完成的开发,是点d面列出的blog订阅源标题,则请求bloglines索这个特定订阅的博客d条目?BR>以弹出式对话框展C文章内宏V?BR>下面演示此j2me软gQ?/P>
Q?/P>
]]>
制作完成了flickrBuddy web serviceQ可以完成对bloglines api的方便调用。手机客L则用kSoap来访
问这个flickrBuddy web service来获得用Lbloglines订阅源?BR>首先Q可以看C的“my feeds”中列出的blog订阅源标题以及未L目的数目。比如:
Engadget Simplified Chinese[16]
旁观者的奇妙冒险[0]
未完?- Incomplete[0]
王徏[0]
车东[Blog^2][0]
下一步完成:
点击“Engadget Simplified Chinese[16]”的标题菜单Q就可以看到未读的条目全文?/FONT>
]]>
new Thread(this, "Menu thread").start();
必须改写?BR>
Thread thread;
(thread = new Thread(this)).start();
方能在真Zq行?BR>
q种E序自动退出的问题Q有时候是因ؓ你根本猜想不到的代码D的,q时候只能通过二分排除?不断地注释代码来~小代码范围)来判定了?
W二Q再譬如_
你的代码中有对double的用,比如q种代码Q?BR>
double alpha = (double)Math.abs(i - m_canvasWidth / 2) /
(double)m_canvasWidth;
但是Q注意一点,CLDC1.1才开始支持MathQ“Math functions in java.lang package is available only since CLDC-1.1”。所以,如果你一旦在CLDC1.0的nokia手机上用,那么Q即使你用了try/catch捕获异常Q程序也会自动退出?BR>
q时候你也不要惊诧?
W三Q?BR>Thread thread;
(thread = new Thread(this)).start();代码可以q行?BR>但是Thread thread;
(thread = new Thread(this, "Menu thread")).start();
׃DNokia真机立即退出?BR>同样Q?BR>Thread thread;
(thread = new Thread(new Runnable()
{
public void run()
{
m_inputHandler.handleStringInput(input);
}
}, "inputHandler")).start();
也会D立即退出?BR>以上虽然模拟器可以运行,但是真机是不允许的?/DIV>
]]>
探烦手机
javaMEpȝ信息的实用工?/SPAN>
本文档帮你了解实用工?/SPAN>midletinfoQ简单地_它发掘了javaME所能得到的大多数系l信息,对试囑ְ自己的程序在不同ƾ手Zq行的开发者会很有帮助的?/SPAN>
下蝲链接Q?/SPAN>http://jmobilecore.sourceforge.net/midletinfo/index.html?/SPAN>
官方介绍Q?/SPAN>
Midletinfo展示以下信息Q?/SPAN>
u pȝ信息Q?/SPAN>内存以及j2me属性;
u 屏幕信息Q分辨率、色彩支持、绘制属性和按键属性;
u 字体Q?/SPAN>
u d上按键对应的?/SPAN>(很有用!)Q?/SPAN>
u 所支持的连接协议类型;
q些信息对于开发者而言Q都非常有用。比如说很多开发者遇到的问题是,按键对应的数|每款手机都不太一_?/SPAN>midletinfo很Ҏ(gu)帮你定了?/SPAN>
源代码在此:http://jmobilecore.sourceforge.net/midletinfo/src
如图所C:
看,~码cd?/SPAN>cldccd?/SPAN>midpcd都知道了?/SPAN>
如图所C:
是否支持双缓册Ӏ屏q大都知道了?/SPAN>
如图所C:
按下哪个键,屏幕上就l制个键对应的倹{?/SPAN>
如图所C:
看,手机当前是否支持http/tcp/udp/file/sms/cbs/ssl都可以立即知道?/SPAN>
郑昀@ultrapower |
名称 |
版本 |
Keyword: midlet information j2me tool |
midletinfo |
0.9.1 |
而且我搜索了它的5个java文gQ它在什么情况下调用System.gc()呢?
下面三种情况Q?BR>用户q回游戏?可能之前L听电(sh)话了Q或者去讄里改参数了?)Q?BR>用户选完飞机后,q可能是一个选项菜单Q选飞机时所用到的资源可能以后在游戏中没必要用,所以及时回收一下;
昄q关界面Ӟq时候有卡的现象Q欢喜的用户也不会在意的?/P>
除此之外没有了?BR>
Nokia 的文?/STRONG>Known Issues In The Nokia 6600 MIDP 2.0 Implementation v1.7_
2.15.1 Garbage collecting
Description
Calling the System.gc() method results in extreme slowness and jamming. In Monty 1.0 VM, garbage
collection is different and every time System.gc is called, the entire memory is really cleared.
This is an extremely slow process!
Solution
Do not call the System.gc method at all, or call the System.gc() garbage collecting method only
in non-time-critical situations, such as screen transitions, state transitions, pause states,
etc. If the System.gc() method is used, it is recommended to add a short delay (~20-50 ms) after
the method call to ensure the sufficient time for the garbage collection, as in the following
example
System.gc();
Thread.sleep(delay); delay = 20-50 ms
Windcao提供?/SPAN>CreateAlphaImage的意思是q样的“如果需要半透明可以先在image上画Q然后把q个Image弄成半透明的。最后将Imagel到Canvas上就OK了”?/SPAN>
我在工程中用了,有效果,好像也不需要对原始?/SPAN>Image src有什么特D要求?/SPAN>
可以?/SPAN>
做一下对比?/SPAN>
后者没有将囄?/SPAN>CreateAlphaImage处理。所以绘制的囄覆盖了原来的文字?/SPAN>
我是在一?/SPAN>CustomItem扩展cM使用q个半透明囄的,代码如下所C:
实践效果q是不错的?/SPAN>
感谢windcao的代码共享和思\提供Q?/SPAN>
解决办法Q?/STRONG>
一是确定服务器端正地改写了HTTP_CONTENT_LENGTH头域Q?BR>二是针对手机端拿CHTTP_CONTENT_LENGTH的错误数?1Q作相应处理?/P>
]]>