J2me中访问手机本地电话本

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

  普通S60手机

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

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

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

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

  PIM包

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

/**
* 访问本地电话本数据
*
*/
private void pimVisit ()
{
String[] names = PIM.getInstance().listPIMLists(PIM.CONTACT_LIST);
try
{
for (int i = 0; i < names.length; i++)
{
display.append("AdrBookName: " + names[i] + "/n");
ContactList list = (ContactList) PIM.getInstance().openPIMList(
PIM.CONTACT_LIST, PIM.READ_ONLY, names[i]);
/*
* 遍历所有的记录,这里主要获取记录的姓名和电话号码
*/
Contact contact;
int count = 0;
for (Enumeration e = list.items(); e.hasMoreElements(); )
{
contact = (Contact) e.nextElement();
String name;
name = contact.getString(Contact.FORMATTED_NAME, 0);
String tel = contact.getString(Contact.TEL, 0);
display.append(name+" "+tel + "/n");
count++;
}
display.append("所有记录数量:" + count + "/n");
list.close();
}
}
catch (PIMException e)
{
}

}

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

手机访问电脑的本地网站或者服务器

最近开始转向移动开发方向,因此对于一个移动开发的前端来说,使用各种真机来进行自己网站或者系统的界面进行针对性的调试就显的尤为重要了。因此,会经常通过电脑开启一个wifi来供手机进行连接,形成一个小的局...
  • fly_home_ysc
  • fly_home_ysc
  • 2015年11月18日 20:29
  • 8589

android手机访问本地电脑Web服务器

1.android网络编程知识复习Android的网络编程分为2种:基于http协议的,和基于socket的。Socket一般应用于社交聊天的应用中,这里关联的比较少就不讲了,我们来说说基于HTTP协...
  • limin13215
  • limin13215
  • 2016年05月26日 17:49
  • 3674

手机成功访问node.js搭建的本地服务器

作为一名不懂后台的前端工程师来说,利用node.js搭建服务器,是一个非常好的选择。下面搭建一个简单的服务器: var app=require("express")(); app.get("/",fu...
  • zhy13087344578
  • zhy13087344578
  • 2017年04月14日 11:57
  • 3705

J2ME_RMS实例_手机电话本

  • 2012年03月27日 15:26
  • 32KB
  • 下载

j2me电话本程序

  • 2008年02月14日 16:54
  • 25KB
  • 下载

j2me电话本

  • 2007年07月30日 13:22
  • 3KB
  • 下载

eclipse+wtk写的j2me电话本程序

  • 2009年05月18日 20:52
  • 281KB
  • 下载

J2ME开发手机游戏物理模型之抛物线

原文地址http://www.hbjjrb.com/Jishu/jsp/200704/7581.html     物体做抛物线运动是游戏中基本运动物理模型之一!...
  • luonan0706
  • luonan0706
  • 2012年12月04日 22:09
  • 554

在J2ME手机程序开发中使用颜色

在J2ME手机开发过程中,需要经常用到颜色来进行绘制,增强程序的表现效果,下面就介绍一下如何使用颜色。  由于J2ME技术比较简单,所以没有实现专门的颜色类,而只是使用RGB的概念来代表颜色。这里简单...
  • pdw_jsp
  • pdw_jsp
  • 2011年02月09日 16:06
  • 358

手机网络编程(基于J2ME的总结)

随着手机编程的发展,现在的手机网络编程已经成为一种基本的手机软件开发技能,虽然相对于PC网络编程来说,手机网络编程比较简单,且绝大部分都是进行客户端网络编程,但是在实际使用中还是存在一系列的问题。 ...
  • dayuqi
  • dayuqi
  • 2012年09月20日 14:22
  • 383
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:J2me中访问手机本地电话本
举报原因:
原因补充:

(最多只允许输入30个字)