如何使用JavaMe在默认浏览器中打开链接?

时间:2012-02-22 20:14:56

标签: mobile java-me

需要为支持 JavaME 的每个移动设备制造商进行跨设备工作 -

特别是:当应用程序打开时,它会重定向到移动设备默认浏览器中的(有线)链接。

移动Java应用程序中找到了如何执行此操作,但未找到 JavaME 的示例。

我正在使用JavaME,Sun Java Wireless Tool Kit 2.5.2和eclipseME。

修改: 我正在尝试:

        try {
        platformRequest("http://www.stackoverflow.com");
        destroyApp(true);
        notifyDestroyed();
    } catch (ConnectionNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

但不确定它是否适用于所有平台。此外,为什么必须销毁应用程序?

1 个答案:

答案 0 :(得分:2)

嗯,这是怎么回事,请阅读代码的评论:

            // In startApp()

    boolean mustExit = false;
    try {

        /**
         * mustExit - Boolean
         * 
         * Some MIDP platforms are more restricted than others.
         * For example, some don't support concurrent processing,
         * so the MIDlet must exit before the platform can honor
         * a service request.
         * 
         * If <true> destroy the app. So the browser
         * can start.
         */
        mustExit = platformRequest("http://www.stackoverflow.com");
    } catch (ConnectionNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    if(mustExit){
        destroyApp(true);
        notifyDestroyed();
    }

此外,如果您使用的是Linux,则必须为模拟器设置默认浏览器。转到yourPath/Java/lib/system.config,最后添加以下行:

# Associate the Mozilla browser with platformRequest() - Linux
com.sun.midp.midlet.platformRequestCommand: /usr/bin/firefox

(当然可以是其他浏览器)

现在在您的模拟器中运行它。或者创建 .jad .jar 在您的实体手机中运行它。