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

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

更多3

URL schemes 这个我就不解释了,大家可以看这里:
http://en.wikipedia.org/wiki/URI_scheme

通俗点说,就是url地址栏;
输入 http:…. 打开的是网页;
输入 qqdl:…… 如果你安装了腾讯的旋风下载工具,系统会自动启动旋风下载;
输入 thunder:…… 对应的就是打开迅雷下载了;
最常用的还有 ftp:…… ; udp:…… ;  mailto:…… ;

还有很多很多,而对于iPhone手机,有一些特定的URL schemes;
了解这些内置的URl schemes,对于我们开发一些基于Web网页的iPhone应用,将会变得非常简单;

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

给小琪打电话:
 

给小琪发短信:

给小琪发邮件:

如何找到小琪:(谢绝跨省,没有水表,不买淘宝也没快递,q值是经纬度坐标值);

sample页面在这里:
http://t.cn/z8ohhH2 (有iPhone,iPad 的同学可以使用自带的safari浏览器测试,PC机下无效)
或者扫描这个二维码:
URL schemes, 通过超链接打开App应用

一些常用内置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这个软件:http://www.itools.cn/
下载安装完毕后,把iPhone通过USB线接上电脑(安装iTune什么的就不用我说了吧,否则电脑根本就认不出你的iPhone);
然后你可以看到这个界面:
URL schemes, 通过超链接打开App应用

选中微信,点击右侧的【浏览】按钮;
打开一个类似Windows资源管理器的界面,然后我们要的是找到Info.plist这个文件,并复制至我们的电脑;
一般来说,Info.plist这个文件,都是在*****.app目录下( 目前我没看到例外 );
URL schemes, 通过超链接打开App应用
找到后,直接拖至桌面;

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

建议用List模式查看,比较清晰直观,我们找到 “CFBundleURLSchemes”这段;
然后就可以看到,其实,微信有3个URL scheme值,分别是:
weixin
fb290293790992170
wechat
也就是说,这3种形式的超链接,都可以打开微信 (很不明白,中间这个fb290293790992170是什么含义?猜测可能是内部版本号)
URL schemes, 通过超链接打开App应用

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

还没做研究,还是老规矩,先抛个砖,大家有玉的,可以砸过来!
对于这些后面跟的这些参数,大家研究出来结果记得告诉我,反正目前我看了微信,新浪的开发接口,暂时未找到相关信息~~

你可能感兴趣的:(Scheme)