WAP之家:为您提供最全最新的WAP技术,CP.SP.3G等行业资讯。 WAP之家交流论坛全新开放 点击进入>>
WAP资讯 | 3G动态 | SP动态 | 运营商动态 | 内容商动态 | 制造商动态 | 论坛讨论>> 每次自动访问
WAP技术 | WAP源码 | 手机编程 | 手机源码 | 无线技术 | J2ME技术 | 手机软件 添加到收藏夹
IVR技术 | SP资料 | SMS MMS技术 | 商业方案 | IVR下载 | 书籍教程 | 工具软件 语言:繁體中文

WAP之家技术文章J2ME技术进阶教程在J2ME和WAP中实现电话呼叫功能

在J2ME和WAP中实现电话呼叫功能
作者:mingjava  来源:j2medev  发布时间:2005-12-23 3:12:34
 本文介绍如何在J2ME平台和WAP页面实现电话呼叫的功能。关于WAP和J2ME的区别并不在讨论范畴,读者可以自行查阅资料。

        MIDP 1.0中没有提供电话呼叫的功能。在MIDP 2.0中,javax.microedition.midlet.MIDlet类提供了platformRequest()方法来请求设备来完成特定的请求,请求的内容由platformRequest()方法的String类型的参数url来标识。可能是调用浏览器打开某个特定的wap页面,也可以是呼叫电话。在设备资源可用的时候,系统会把MIDlet放在后台执行,而把特定的应用程序,例如电话程序或者浏览器放在前台来执行。呼叫电话的时候可以使用如下的形式:

            try{
                this.platformRequest("tel:13810000000");
            }catch(ConnectionNotFoundException ex){
                ex.printStackTrace();
            }

这里提供了一个简单的例子,在Nokia 7610(支持MIDP 2.0)上测试通过,成功呼叫了指定的电话。

/*
 * TeleMIDlet.java
 *
 * Created on 2005年12月15日, 下午9:56
 */

package com.j2medev.call;

import javax.microedition.io.ConnectionNotFoundException;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

/**
 *
 * @author  Administrator
 * @version
 */
public class TeleMIDlet extends MIDlet implements CommandListener {
   
    private Display display = null;
    private List main = null;
   
    public void startApp() {
        if(display == null){
            display = Display.getDisplay(this);
            main = new List("测试电话功能", List.IMPLICIT);
            main.append("13810000000", null);//这里的电话号码是虚拟的
            main.append("13810000001", null);//这里的电话号码是虚拟的
            main.setCommandListener(this);
        }
        display.setCurrent(main);
    }
   
    public void pauseApp() {
    }
   
    public void destroyApp(boolean unconditional) {
    }
   
    public void commandAction(Command cmd,Displayable displayable){
        if(cmd == List.SELECT_COMMAND){
            String number = main.getString(main.getSelectedIndex());
            try{
                this.platformRequest("tel:"+number);
            }catch(ConnectionNotFoundException ex){
                ex.printStackTrace();
            }
        }
    }
}

        相比J2ME技术,WAP更类似于Web,是一种服务器端为主的技术。在WML中可以调用设备的WTAI函数来呼叫特定的电话号码,代码如下所示:

<input name="phone_no" format="*m" value="13"/>
<do type="option" label="呼出号">
<go href="wtai://wp/mc;$(phone_no)"/>
</do><br/>
或者直接写入电话号码的方式:
<a href="wtai://wp/mc;1331597312*">拨打电话</a>

在MIDP 2.0和WAP平台中都对电话呼叫提供了支持,本文进行了简单的总结,希望对您的实际项目有所帮助。

[] [返回上一页] [打 印]
文章评论

用户名: 查看更多评论

分 值:100分 85分 70分 55分 40分 25分 10分 0分

内 容:

         (注“”为必填内容。) 验证码: 验证码,看不清楚?请点击刷新验证码