本篇文章給大家分享的是有關(guān)J2ME可選包中PIM用法是什么,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。
創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都做網(wǎng)站、成都網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的烏蘭網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
你對(duì)J2ME可選包—PIM的概念是否了解,這里和大家分享一下,PIM OP定義了一系列的API,提供了訪問(wèn)這些重要數(shù)據(jù)的方法和途徑。有必要先談一下什么是OP,OP的意思就是optionalpackage(可選包),他并不能提供一個(gè)整套的運(yùn)行環(huán)境比如MIDP。
J2ME可選包—PIM介紹
PIM的意思是personal infomation management(個(gè)人信息管理),主要是針對(duì)用戶的重要信息,例如通信錄、提醒、日程等。PIM OP定義了一系列的API,提供了訪問(wèn)這些重要數(shù)據(jù)的方法和途徑。有必要先談一下什么是OP,OP的意思就是optionalpackage(可選包),他并不能提供一個(gè)整套的運(yùn)行環(huán)境比如MIDP。他是對(duì)MIDP的擴(kuò)展同時(shí)需要設(shè)備的支持。因此他并不是通用的,在移植性上存在問(wèn)題。
在使用PIM OP之前我們必須判斷它是否可用,方法很簡(jiǎn)單只是檢查microedition.pim.version的屬性值是不是null,例如:
... //CheckthatPIM OPtionalPackageisavailable Stringv=System.getProperty("microedition.pim.version"); if(v!=null){ //PIM OPavailable }else{ //PIM OPnotavailable } ...
你不能通過(guò)在代碼中檢查pim包是否可用來(lái)判斷上述問(wèn)題,因?yàn)閜im是和設(shè)備實(shí)現(xiàn)相關(guān)的。PIM定義了三種信息類型,分別是Contactlist,Eventlist,ToDolist,設(shè)備并一定要支持全部這三種類型,但是他至少要支持一種。
所有的API都在javax.microedition.pim包里面,你要通過(guò)PIM.getInstance()方法來(lái)得到PIM類,然后你才可以調(diào)用openPIMList()方法得到上述的list.例如下面的代碼:
... PIMPIMsingleton=PIM.getInstance(); ContactListcl=null; try{ cl=(ContactList)singleton.openPIMList(PIM.CONTACT_LIST, PIM.READ_ONLY); //usethecontactlist } catch(PIMException){ //nocontactlistavailable! } catch(SecurityException){ //theapplicationisnotallowedtoaccessthelist } ...
值得一提的是SecurityException,為了安全只有可信任的MIDlets才可以訪問(wèn)這些數(shù)據(jù)。如果不是的話會(huì)拋出這個(gè)異常,這恰恰符合MIDP中的安全模式。在PIMlist中的數(shù)據(jù)稱作PIM item,你可以把PIMlist看作是容器,把PIM item看作是實(shí)體。要想訪問(wèn)這些item可以通過(guò)如下代碼:
importjava.microedition.pim.*; importjava.util.*; ContactListlist=...//acontactlist try{ Enumerationenum=list.items(); while(enum.hasMoreElements()){ Contactcontact=(Contact)enum.nextElement(); //dosomethingwiththecontact } } catch(PIMExceptione){ //anerroroccurred } catch(SecurityExceptione){ //can'treadthislist } ...
在PIM item中可用的字段跟設(shè)備實(shí)現(xiàn)是相關(guān)的,因此在使用某個(gè)字段的時(shí)候有必要調(diào)用它的isSupportedField來(lái)判斷一下,PIM規(guī)范中同樣對(duì)字段中的基本數(shù)據(jù)類型進(jìn)行了定義,例如在Contact里面的TEL字段就是String你通過(guò)getStri()方法來(lái)得到,生日字段就是long類型的通過(guò)getDate()來(lái)得到例如:
... Contactcontact=...; Stringtel=contact.getString(Contact.TEL,0); ... ... Contactcontact=...; longbday=contact.getDate(Contact.BIRTHDAY,0); ...
在contact里面包括多個(gè)字段,通過(guò)后面的index你可以訪問(wèn)他們。
以上就是J2ME可選包中PIM用法是什么,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。