我正在制作as3 AIR应用。我想把电话号码放在应用程序中。在iPhone上,当用户点击“电话号码”按钮时,它会调用tel,类似于:
str = "tel:1-415-555-1212";
var urlReq:URLReq = new URLRequest(str);
navigateToURL(urlReq);
这会将电话号码放在用户本机拨号程序中(在iOS上它实际上为您拨打并发送)。但是,在iPad上它没有任何作用。我想首先检查tel是否受支持。如果是,请正常进行。如果不是,请显示带有电话号码的弹出窗口。对于Android手机和平板电脑,我想做的几乎完全一样。
答案 0 :(得分:1)
据我所知,单凭AIR无法做到这一点。在Objective-C中,您可以使用名为canOpenURL
的方法执行此操作。相当微不足道。没有AIR等价物。
所以你有两个选择:
tel
URI执行此操作。鉴于Apple的一般做法,这是不可能的,但可能。编辑:我昨天自己最终需要这个功能,所以我找了一个提供功能的ANE。非常感谢StickSports发布他们所有的ANE。 https://github.com/StickSports/ANE-Can-Open-URL
使用示例:
public static function shareTwitter( url:String, message:String = null ):void {
var msg:String = ( message ? message : "" ) + " " + url;
var nurl:String = "twitter://post?message=" + msg;
var web:String = "https://twitter.com/intent/tweet?text=" + message + "&url=" + url;
if ( CanOpenUrl.canOpen( nurl ) ) {
navigateToURL( new URLRequest( nurl ) );
}
else {
navigateToURL( new URLRequest( web ) );
}
}