下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

如何在J2ME和WAP中实现电话呼叫功能

作者:课课家教育     来源: http://www.kokojia.com点击数:635发布时间: 2016-01-29 18:38:37

标签: java敏捷开发java网络开发java学习课程

大神带你学编程,欢迎选课

  本文介绍如何在J2ME平台和WAP页面实现电话呼叫的功能。关于WAP和J2ME的区别并不在讨论范畴,读者可以自行查阅资料。 MIDP 1.0中没有提供电话呼叫的功能。在MIDP 2.0中,javax.microedition.midlet.MIDlet类提供了platformRequest()方法来请求设备来完成特定的请求,请求的内容由platformRequest()方法的String类型的参数url来标识。可能是调用浏览器打开某个特定的wap页面,也可以是呼叫电话。在设备资源可用的时候,系统会把MIDlet放在后台执行,而把特定的应用程序,例如电话程序或者浏览器放在前台来执行。呼叫电话的时候可以使用如下的形式:

如何在J2ME和WAP中实现电话呼叫功能_java敏捷开发_java网络开发_课课家

  try{

  this.platformRequest("tel:13810000000");

  }catch(ConnectionNotFoundException ex){

  ex.printStackTrace();

  }

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

  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函数来呼叫特定的电话号码,代码如下所示:

  或者直接写入电话号码的方式:

  拨打电话

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

赞(10)
踩(4)
分享到:
华为认证网络工程师 HCIE直播课视频教程