一、在J2ME中獲得手機IMEI的方法
IMEI是Internation mobile entity identification的簡稱,在手機中輸入*#06#可以顯示該數字,長度為15位,全球唯一,永遠不會沖突,所以可以作為識別用戶的一個標志。
下面是在J2ME中獲得IMEI的方法:
1、MOTO系列的手機可以通過讀取系統的IMEI屬性獲得,代碼如下:String imei = System.getProperty("IMEI");
2、SIEMENS系列的手機可以通過讀取系統的com.siemens.IMEI屬性獲得,代碼如下:String imei = System.getProperty("com.sIEmens.IMEI");
二、J2ME網絡連接中顯示問題的解決辦法
在網絡編程中,有些時候會出現一些在沒有接收到網絡數據就顯示界面的,造成界面顯示不符合要求(例如公告顯示,會先顯示公告的背景圖片再顯示公告信息),這裡提一個簡單的解決辦法給大家。解決這種情況的方法分成三個步驟:
1、在需要顯示的界面中,調用發送網絡數據的方法。每次顯示時調用該構造方法,不調用Display的setCurrent方法顯示。
2、顯示等待界面(例如進度條等),給用戶提示,在進行網絡連接。
3、在處理網絡反饋的數據完以後,調用Display的setCurrent方法顯示顯示當前界面。
三、J2ME加密數據的一個第三方開源免費類庫介紹
在J2ME編程中,經常遇到一些數據在存儲或者傳輸時需要加密,下面介紹一個第三方的加密類庫的一些資料:
加密類庫的官方主頁:http://www.bouncycastle.org/
介紹的文章:
中文:http://18900.motorola.com/ewa_portal/develope/jc_J2MEssl_5_1.JSP
英文:http://www.javaworld.com/Javaworld/jw-12-2002/jw-1220-wireless.Html
該文章的源代碼包含使用的一些方法。
備注:因為該類庫提供的功能比較強大,所以類庫的尺寸比較大,最後在發布時需要將類庫中不需要的類刪除。
四、J2ME在低級用戶界面上分行顯示文字
在J2ME的低級用戶界面開發中,經常會遇到需要在Canvas上顯示大量的文字,例如關於界面、游戲說明、游戲公告等信息。如果在設計時,將文字的內容和長度都固定,既不利於修改也不利於維護。下面介紹一個簡單的方法,實現一個簡單、可維護性強的方式。實現方法:
1、將需要顯示的所有信息做成一個字符串。
2、編寫一個將該字符串按照要求轉換為字符串數組的方法。
3、將轉換後的數組以循環的方式顯示在Canvas上。
通過這樣三個步驟,則修改顯示的信息時,只需要修改包含顯示信息的字符串即可,自己書寫的方法可以按照以前的標准重新分割新的字符串。如果需要修改每行顯示的字符個數,則只需要修改自己書寫的方法即可。通過這樣一種實現方式,可以很方便的實現顯示一些比較長的文本信息,即使是可變長度的字符串也沒有問題。