繁体   English   中英

如何从Java Card 2.2.2 SIM卡小程序启动具有特定URL的浏览器?

[英]How to launch the browser with specific URL from Java Card 2.2.2 SIM card applet?

我正在尝试构建一个应用程序,其中我的应用程序将APDU发送到SIM卡上的Java卡小程序。 收到此apdu后,我希望我的Applet使用特定的URL启动浏览器。 我可以在Java Card 3.0 Connected Edition中执行相同的操作。 我已经读过Java Card 2.2.2在主动处理程序中有一个启动浏览器的选项,但是我找不到它。 如果有人可以教我如何做,我将不胜感激。

对的,这是可能的。 但是,许多电话(尤其是运行iOS的电话)不支持此功能,因此您应始终首先检查TERMINAL PROFILE命令的输出。

import sim.toolkit.*;
...

private final static byte[] URL = {
  (byte)'h', (byte)'t', (byte)'t', (byte)'p', (byte)':', (byte)'/', (byte)'/', (byte)'w', (byte)'w', (byte)'w', (byte)'.', (byte)'g', (byte)'o', (byte)'o', (byte)'g', (byte)'l', (byte)'e', (byte)'.', (byte)'c', (byte)'o', (byte)'m'
};
private static final byte PROFILE_LAUNCH_BROWSER = (byte)70;

private static final void browse() throws ToolkitException {
    if (MEProfile.check(PROFILE_LAUNCH_BROWSER)) { //checking if the device supports this proactive command
        ProactiveHandler proactiveHandler = ProactiveHandler.getTheHandler();
        proactiveHandler.init(ToolkitConstants.PRO_CMD_LAUNCH_BROWSER, (byte)0x00, ToolkitConstants.DEV_ID_ME);
        proactiveHandler.appendTLV(ToolkitConstants.TAG_URL, URL, (short)0, (short)URL.length);
        proactiveHandler.send();
    } else {
        //feature not supported, throw an exception or do something like that
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM