`
pandonix
  • 浏览: 400997 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

J2me中访问手机本地电话本

    博客分类:
  • J2ME
阅读更多
J2me中访问手机本地电话本

本文主要介绍如何访问各种终端的本地电话本数据。在j2me中访问电话本数据是比较困难的事情,特别是中低端机型。通常,各终端厂商都有自己的API用于访问电话本,例如,motophonebook。在jsr75中,sun推出了PIM包,可访问电话本等本地数据,但是支持jsr75的手机终端大多是06出厂的手机。

 普通S60手机

前段时间,适用了一款j2me软件,界面采用高级界面实现。由于之前没有高级界面开发经验,对高级界面的各种API也不是特别熟悉,所以对该软件的“特殊功能”也少见多怪一番:该软件在Nokia/6600上面,输入手机号码时,可以调出本地电话本,并可将电话本中的手机号码。反编译所有class文件,并没有发现该软件导入了特殊的扩展包。对此深感疑惑,googlebaidu一番以后,终于获得答案。

大部分的S60终端中,定义TextFeild时,将 constraints指定为PHONENUMBER,即可。代码如下:

java 代码
TextField  text =  new TextField(“电话”,null,12,TextField. PHONENUMBER);  
 

这应该属于Nokia厂商的底层实现。目前,测试的手机中,Nokia/6600Nokia/N72是支持的,而MOTO/E680Moto/A1200SEK700以及Nokia/3100等机型是不支持该功能的。希望对该问题感兴趣的朋友,帮忙多做些测试,也是对这个问题的有效补充。

PIM

PIM包定义了访问终端本地重要数据的API,本文的重点是讨论如何使用PIM访问手机本地电话本。对于PIM的介绍,请参考mingjava的文章《J2me可选包—PIM介绍》。

java 代码
  1. /** 
  2.  * 访问本地电话本数据 
  3.  * 
  4.  */  
  5. private void pimVisit ()  
  6. {  
  7.     String[] names = PIM.getInstance().listPIMLists(PIM.CONTACT_LIST);  
  8.     try  
  9.     {  
  10.         for (int i = 0; i < names.length; i++)  
  11.         {  
  12.             display.append("AdrBookName: " + names[i] + "\n");  
  13.             ContactList list = (ContactList) PIM.getInstance().openPIMList(  
  14.                     PIM.CONTACT_LIST, PIM.READ_ONLY, names[i]);  
  15.             /* 
  16.              * 遍历所有的记录,这里主要获取记录的姓名和电话号码 
  17.              */  
  18.             Contact contact;  
  19.             int count = 0;  
  20.             for (Enumeration e = list.items(); e.hasMoreElements();)  
  21.             {  
  22.                 contact = (Contact) e.nextElement();  
  23.                 String name;  
  24.                 name = contact.getString(Contact.FORMATTED_NAME, 0);  
  25.                 String tel = contact.getString(Contact.TEL, 0);  
  26.                 display.append(name+" "+tel + "\n");  
  27.                 count++;  
  28.             }  
  29.             display.append("所有记录数量:" + count + "\n");  
  30.             list.close();  
  31.         }  
  32.     }  
  33.     catch (PIMException e)  
  34.     {  
  35.     }  
  36.   
  37. }  

使用PIM不仅可以读取本地电话本数据,而且可以修改或增加电话本记录,这点也是上面所讨论的方法无法相比的。应该说,PIM对电话本的操作更加灵活,并且可控制。

 参考文章:

http://www.j2medev.com/Article/Class1/Class16/200408/19.html  J2me可选包—PIM介绍

作者:mingjava

分享到:
评论

相关推荐

    J2ME读取电话号码本内容

    在Java 2 Micro Edition (J2ME)平台上,开发人员可以访问特定的手机功能,如读取电话号码本。这个项目就是围绕这个主题展开的,它允许程序读取存储在设备本地以及SIM卡上的联系人信息。下面我们将深入探讨如何在J2ME...

    j2me开发教程全集.

    本教程全集可能包含上述所有或部分主题的详细文档,通过学习这些内容,你可以从零开始学习J2ME,直至能够开发出功能丰富的手机游戏和其他应用程序。对于希望进入移动开发领域的开发者来说,这是一个宝贵的资源。

    《j2me开发大全》源代码

    6. **数据存储与持久化**:RecordStore是J2ME中用于本地数据存储的主要方式,源码会展示如何创建、读取、更新和删除数据。 7. **多媒体处理**:J2ME可以处理音频和图像,源码可能包含如何播放音频、显示图片和动画...

    J2ME网络回拨电话源码

    在本源码中,我们将探讨如何利用J2ME技术实现网络回拨电话功能。 1. **J2ME高级控件**: J2ME中的高级控件通常指的是那些比基础组件更复杂、功能更强大的UI元素。这些控件可能包括自定义的按钮、列表视图、表格、...

    郭克华J2ME pdf版下载

    郭克华的《J2ME移动开发》PDF版是一份重要的学习资源,它专注于Java Micro Edition(J2ME)技术,这是Java平台的一个版本,主要用于嵌入式设备和移动电话的开发。J2ME为开发者提供了在小型设备上构建应用程序的能力...

    J2ME手机入门教程

    **J2ME手机入门教程** Java 2 Micro Edition(J2ME)是Java平台的一个重要分支,主要用于开发在小型设备上运行的应用程序,如移动电话、PDA、智能电视等。J2ME提供了丰富的功能,使得开发者能够创建具有交互性和...

    J2ME手机办公软件

    2. **MIDP API**:这是J2ME开发中的核心部分,提供了用户界面组件、网络访问和数据存储等功能,对于开发手机应用至关重要。 3. **用户界面设计**:在资源受限的设备上创建用户友好的界面是一项挑战,需要熟练使用...

    j2me学习资料之手机网站

    4. **手机网站开发**:在J2ME中,开发者可以通过HTTP协议访问网页内容,使用`javax.microedition.io.Connector`类创建网络连接,然后通过`HttpConnection`对象请求网页。获取到HTML后,可以解析并显示在设备上,或者...

    J2ME手册

    在J2ME中,Record Management System (RMS) 提供了本地数据存储功能。开发者可以创建记录存储区,保存和读取数据,这对于在离线状态下工作的应用程序非常有用。 **8. 系统安全** J2ME为了保护设备和用户的安全,...

    J2ME 手机通讯录实现(部分)

    本教程将深入探讨如何使用J2ME技术来实现一个简单的手机通讯录应用,这对于初学者来说是一个很好的实践项目。 1. **J2ME基础** - **架构**:J2ME由配置(Configurations)和配置文件(Profiles)组成,例如MIDP...

    论文研究-基于J2ME技术的手机预订机票系统的设计与实现.pdf

    J2ME技术在本系统的设计中,主要利用了其MIDP(Mobile Information Device Profile)简档,这是专为移动信息设备设计的一种规范,提供了构建用户界面、本地数据存储、网络通信等功能的API。MIDP简化了开发流程,使得...

    J2ME超级学习笔记

    RMS是J2ME中用于本地数据存储的系统,通过RecordStore类管理数据,适合保存应用程序的配置信息或用户数据。 7. **应用打包与部署** 使用J2ME的JAR和JAD文件进行应用打包,JAD文件包含了应用元数据,如版本信息、...

    local_visit.rar_pim in j2me_pim j2me

    通过阅读这个文件,开发者可以更好地理解如何将理论知识应用于实际开发中,从而实现J2ME设备上本地电话本的高效管理。总的来说,理解和掌握JSR 75的PIM API是构建J2ME个人信息管理应用的关键,也是提升移动开发能力...

    使用J2ME与MIDP进行手机开发的全功略

    Java 2 Micro Edition (J2ME) 是Java平台的一个子集,专为资源有限的嵌入式设备设计,包括移动电话、智能手表、数字电视等。Mobile Information Device Profile (MIDP) 是J2ME的一部分,提供了一套用于开发移动应用...

    《J2ME嵌入式开发案例精解》.

    《J2ME嵌入式开发案例精解》是一本专注于Java Micro Edition(J2ME)在嵌入式领域的应用开发书籍。J2ME是Java平台的一个子集,专门设计用于资源有限的设备,如移动电话、智能卡和家用电器等。这本书通过一系列详细的...

    j2me开发大全(中英文版)

    Java 2 Micro Edition(J2ME)是一种Java平台,专门设计用于嵌入式设备和移动设备,如手机、智能手表、数字电视等。它提供了一种标准的方式来开发和部署跨平台的应用程序,使得开发者可以利用Java语言的强大功能,...

    J2ME-API.rar_j2me

    Java 2 Micro Edition(J2ME)是Java平台的一个子集,主要用于开发和运行在小型设备上,如移动电话、智能手表、PDA等嵌入式设备的应用程序。"J2ME-API.rar_j2me"这个压缩包文件显然是一个关于J2ME API的详细文档或者...

    精通J2ME无线编程

    8. **数据存储**:RMS是J2ME中的本地数据存储系统,用于在设备上持久化应用程序数据。学习如何有效地使用RMS管理用户数据和设置是重要的实践技能。 9. **推送通知**:J2ME还支持PushRegistry,允许应用程序接收...

Global site tag (gtag.js) - Google Analytics