国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

J2ME可選包—PIM介紹

2019-11-18 16:01:37
字體:
來源:轉載
供稿:網友
    前幾天聽朋友說起移動那方面正在談論關于PIM的問題,這是個比較前沿的技術了。忽然想起來以前曾經在sun的網站看到過一篇文章是講述PIM的,于是今天把它大概介紹一下。  PIM的意思是personal infomation management(個人信息管理),主要是針對用戶的重要信息,例如通信錄、提醒、日程等。PIM OP定義了一系列的API,提供了訪問這些重要數據的方法和途徑。有必要先談一下什么是OP,OP的意思就是optional package(可選包),他并不能提供一個整套的運行環境比如MIDP。他是對MIDP的擴展同時需要設備的支持。因此他并不是通用的,在移植性上存在問題。

    在使用PIM OP之前我們必須判斷它是否可用,方法很簡單只是檢查microedition.pim.version的屬性值是不是null,例如:
...
// Check that PIM Optional Package is available
String v = System.getif( v != null ){
    // PIMOP available
} else {
    // PIMOP not available
}
...

    你不能通過在代碼中檢查pim包是否可用來判斷上述問題,因為pim是和設備實現相關的。PIM定義了三種信息類型,分別是Contact list,Event list , ToDo list,設備并一定要支持全部這三種類型,但是他至少要支持一種。

    所有的API都在javax.microedition.pim包里面,你要通過PIM.getInstance()方法來得到PIM類,然后你才可以調用openPIMList()方法得到上述的list.例如下面的代碼:
...
PIM singleton = PIM.getInstance();
ContactList cl = null;

try {
    cl = (ContactList)singleton.openPIMList(PIM.CONTACT_LIST,
         PIM.READ_ONLY );
    // use the contact list
}
catch( PIMException ){
    // no contact list available!
}
catch( SecurityException ){
    // the application is not allowed to access the list
}
...

    值得一提的是SecurityException,為了安全只有可信任的MIDlets才可以訪問這些數據。如果不是的話會拋出這個異常,這恰恰符合MIDP中的安全模式。在PIM list中的數據稱作PIM Item,你可以把PIM list看作是容器,把pim item看作是實體。要想訪問這些item可以通過如下代碼:
import java.microedition.pim.*;
import java.util.*;

ContactList list = ... // a contact list

try {
    Enumeration enum = list.items();
    while( enum.hasMoreElements() ){
 Contact contact = (Contact) enum.nextElement();
 // do something with the contact
    }
}
catch( PIMException e ){
    // an error occurred
}
catch( SecurityException e ){
    // can't read this list
}
...

    在PIM item中可用的字段跟設備實現是相關的,因此在使用某個字段的時候有必要調用它的isSupportedField來判斷一下,PIM 規范中同樣對字段中的基本數據類型進行了定義,例如在Contact里面的TEL字段就是String你通過getStri()方法來得到,生日字段就是long類型的通過getDate()來得到例如:
...
Contact contact = ...;
String tel = contact.getString( Contact.TEL, 0 );
...

...
Contact contact = ...;
long bday = contact.getDate( Contact.BIRTHDAY, 0 );
...

在contact里面包括多個字段,通過后面的index你可以訪問他們。

    就說這么多吧,希望對大家有用!


(出處:http://m.survivalescaperooms.com)



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 贺州市| 吉木乃县| 灵台县| 邵阳市| 老河口市| 富平县| 河源市| 临颍县| 临夏市| 枣强县| 两当县| 芷江| 辉南县| 水富县| 米易县| 汉阴县| 洪雅县| 重庆市| 谷城县| 涿鹿县| 拉萨市| 永城市| 新宾| 竹北市| 高青县| 和政县| 洪洞县| 仁怀市| 南溪县| 临湘市| 安吉县| 缙云县| 柳河县| 财经| 响水县| 宁强县| 塔城市| 木兰县| 光山县| 中山市| 中江县|