Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java me 调用的平台请求在j2me中不起作用_Java Me_Call_Lwuit_Midp - Fatal编程技术网

Java me 调用的平台请求在j2me中不起作用

Java me 调用的平台请求在j2me中不起作用,java-me,call,lwuit,midp,Java Me,Call,Lwuit,Midp,我正在构建一个电话簿应用程序。我使用lwuit构建ui,所以我的应用程序运行在MIDP2.1和CDLC1.1上。该应用程序面向诺基亚s40设备 当我从我的表单类调用platformRequest方法时,使用一个常量,如下面的这段代码,其中StartApp是我的主MIDlet try { if (StartApp.getInstance().platformRequest("tel:01239201300") == true) {

我正在构建一个电话簿应用程序。我使用lwuit构建ui,所以我的应用程序运行在MIDP2.1和CDLC1.1上。该应用程序面向诺基亚s40设备

当我从我的表单类调用
platformRequest
方法时,使用一个常量,如下面的这段代码,其中
StartApp
是我的主MIDlet

     try 
        { 
    if (StartApp.getInstance().platformRequest("tel:01239201300") == true)
          {
            StartApp.getInstance().notifyDestroyed();
          }
       }
     catch(Exception ex)
     {
        System.out.println(ex);
     }
应用程序正确运行并生成调用请求,但如果我尝试像下面的代码一样执行此操作

   try{   
     String number = "tel:" + lblTelNumber.getText();
        System.out.println(number);
        if (StartApp.getInstance().platformRequest(number) == true)
        {
            StartApp.getInstance().notifyDestroyed();
        }
     }
   catch(Exception ex)
    {
        System.out.println(ex);
    }
这将导致以下异常

ordinary platformRequest: tel:01239201300 
URL is : tel:01239201300 
javax.microedition.io.ConnectionNotFoundException: Invalid Phone Number
at javax.microedition.midlet.MIDlet.platformRequest(+76)
at package1.InformationForm.Call(+48)

我不知道这里的问题是什么?

在第二个代码片段中可能有不可见的符号(例如尾随空格)

若要确定是否是这样,请将调试消息修改为类似于
System.out.println(“[”+number+“]”)的内容
,重新运行测试并重新检查输出

更新
似乎在编号的末尾有一个新行字符,编号在注释中显示为,
[tel:01239201300]
(第二个括号出现在注释的下一行)

仅此一项就足以获得无效的电话号码


API文档引用了电话号码URL,它似乎非常严格地指定了第2.2节“tel”URL方案中允许的内容和不允许的内容。

在第二个代码段中可能会有不可见的尾随空格。若要确定是否是这样,请将调试消息修改为类似于
System.out.println(“[”+number+“])
,重新运行测试并重新检查输出。数字末尾似乎有一个新行字符,该数字在注释中显示为[tel:01239201300](第二个括号出现在评论的下一行)。谢谢你的帮助,我的问题解决了。