在网页里点击链接,直接打开app的方法

December 09, 2023
测试
测试
测试
测试
2 分钟阅读

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

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

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

给小琪打电话:

给小琪发短信:

给小琪发邮件:

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

一些常用内置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); 然后你可以看到这个界面:

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

找到后,直接拖至桌面;

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

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

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

继续阅读

更多来自我们博客的帖子

如何安装 BuddyPress
由 测试 December 17, 2023
经过差不多一年的开发,BuddyPress 这个基于 WordPress Mu 的 SNS 插件正式版终于发布了。BuddyPress...
阅读更多
Filter如何工作
由 测试 December 17, 2023
在 web.xml...
阅读更多
如何理解CGAffineTransform
由 测试 December 17, 2023
CGAffineTransform A structure for holding an affine transformation matrix. ...
阅读更多