通过超链接(URL schemes)打开App应用

URL schemes 可以参考http://en.wikipedia.org/wiki/URI_scheme

通俗点说,就是url地址栏;

输入 http:…. 打开的是网页;

输入 qqdl:…… 如果你安装了腾讯的旋风下载工具,系统会自动启动旋风下载;

输入 thunder:…… 对应的就是打开迅雷下载了;

最常用的还有 ftp:…… ; udp:…… ; mailto:…… ;

还有很多很多,而对于iPhone手机,有一些特定的URL schemes;

了解这些内置的URl schemes,对于我们开发一些基于Web网页的iPhone应用,将会变得非常简单;

首先,当然是最常用的,电话和短信;

给Suvan打电话: phone

给Suvan发短信: msg

给Suvan发邮件: email

如何找到Suvan:(q值是经纬度坐标值);

sample页面在这里: http://www.54575.com/mobile/iphone/URLscheme.html(有iPhone,iPad 的同学可以使用自带的safari浏览器测试,PC机下无效)

或者扫描这个二维码:

一些常用内置URL schemes苹果说明在这里: https://developer.apple.com/library/ios/featuredarticles/iPhoneURLScheme_Reference/Introduction/Introduction.html 以上这些比较简单,相信很多开发者都知道;

下面是我要说的重点,使用URL Schemes,打开安装在iPhone中的某个APP应用;

偶尔在某网站,看到一个打开微信App的方法:

我擦,微信竟然打开了;

于是,我想了想,能否用同样办法打开微博呢?

我擦,微博竟然也打开了;

为什么打开微信是用 wexin: ,用 wechat: 可以不?

为什么打开微博是用 weibo: ,用 sinaweibo: 可以不?

网易新闻,QQ,大众点评这些应用又是如何通过URL打开呢?

打开网易新闻App,是这样滴:

打开大众点评网App,是这样滴:

打开QQ的App,是这样滴:

PS:以上这些URL scheme,都是不区分大小写的,newsapp: 和 NEWSAPP: 是一样效果和功能;

大家要问了,那么打开其他App怎么办呢?

很简单,每个App在提交到App Store上去的时候,都有固定的格式;

其中格式中也包含了这个URL scheme信息(一些App有多个URL schemes值);

比如QQ

mqqflyticket:
mqqapi:
mqq:
mqqopensdkapi:
mqqOpensdkSSoLogin:
mqqapiwallet:
mqqopensdkapiV2:

以上这些,都是QQ的 URL scheme值,也就是说,我们可以用任意一种方式打开QQ;

PS:一些APP不同版本的URL scheme值还不同;

下面说重点,怎么找到这样的URL scheme值,这里我们用微信为例子;

首选需要一个iPhone端的资源管理器,推荐用iToos这个软件。

下载安装完毕后,把iPhone通过USB线接上电脑(安装iTune什么的就不用我说了吧,否则电脑根本就认不出你的iPhone);

然后你可以看到这个界面:

选中微信,点击右侧的【浏览】按钮;

打开一个类似Windows资源管理器的界面,然后我们要的是找到Info.plist这个文件,并复制至我们的电脑;

一般来说,Info.plist这个文件,都是在*****.app目录下( 目前我没看到例外 );

找到后,直接拖至桌面;

.plist文件在苹果机里,就是可以直接打开的,但是在Windows系统下,不能用记事本,Notepad等这些常用文本编辑器打开,目前只有用pListEditor了;

建议用List模式查看,比较清晰直观,我们找到 “CFBundleURLSchemes”这段; 然后就可以看到,其实,微信有3个URL scheme值,分别是:

weixin
fb290293790992170
wechat

也就是说,这3种形式的超链接,都可以打开微信 (很不明白,中间这个fb290293790992170是什么含义?猜测可能是内部版本号)

后来我发觉诸如mailto这样的URL scheme,后面可以跟很多参数,这样,通过对这些参数的设置,是不是就个性化的打开一些内容呢?

对于这些后面跟的这些参数,大家研究出来结果记得告诉我,反正目前我看了微信,新浪的开发接口,暂时未找到相关信息~~

评论

评论正在提交中...请稍后
评论提交成功...