wm對kjava本身未提供原生的支持,經過測試客戶這邊選擇的是jmm。 但是今天碰到2個兼容問題,確切的說應該是jmm的問題。
1. jad文件屬性讀取的問題
在wm手機上總是讀取不正確,有些機型可以,有些機型不可以,而且都是wm 6+ jmm這樣的搭配。感覺到超奇怪,開始以為是已讀取的舊屬性被存儲到rms中未正確刪除,多次測試以后突然想起來是否是jad文件的問題。
測試了一下,果然,jmm允許使用jar或者jad的方式安裝,如果使用jar安裝jmm并不會自動去讀取同目錄下和jar同名的jad文件屬性,而是讀取jar中的manifest文件。缺省eclipseMe的打包會把jad文件屬性打入manifest,自然就永遠讀不到jad文件中的屬性了。
而在nokia、索愛和moto上則沒這個問題。
在wm上jad和jar的后綴并不顯示,比較容易搞錯。
2. form中item的選中事件
在其他型號手機上正確,在wm上不會觸發, 想起來以前item的屬性是BUTTON方式的, 后來按用戶要求改成HYPERLINK,
測試以后果然是此問題。
super(null, doc.isSelected() ? checkedImg : boxImg,
ImageItem.LAYOUT_LEFT
| ImageItem.LAYOUT_SHRINK
| ImageItem.LAYOUT_TOP
| ImageItem.LAYOUT_NEWLINE_BEFORE
| ImageItem.LAYOUT_NEWLINE_AFTER
, doc.getTime() + " "
+ doc.getFrom(), Item.BUTTON);
// + doc.getFrom(), Item.HYPERLINK);
this.doc = doc;
setDefaultCommand(CMD_EDIT);
this.setItemCommandListener(this);
wm上還是老實用c#或者c++開發最好,否則找問題都煩死了。