发布网友 发布时间:2022-04-22 15:03
共2个回答
热心网友 时间:2023-11-10 04:59
具体地举个例子,比如你在Safari浏览器(只能Safari)的地址框,输入*://post?messages然后确定,你就会直接打开Twitter这个软件并且直接进入发新推的界面(现在就试试呗)。Launch Center Pro等软件就是基于这个原理工作的。 在之前通过系统的URL Schemes甚至可以做到直接打开关闭Wifi等系统设置上的操作。只是后来苹果将这方面功能屏蔽了,所以现在此类的软件就只能做到打开软件,或者执行某项软件的操作了。力道大减。 那么这个URL Schemes我们应该怎么获得呢? 我把它分为两个部分,一.用于打开软件的URL Schemes这个是非常容易的。所有软件都可以直接做到。 大家根据刚才的*的URL Schemes就能看出来,它的格式是"软件名://"这样的。 所以理论上,我们可以在safari浏览器输入任何软件的名称后面加个冒号和两斜杠来打开软件,比如说输入Music://然后确认,就会直接跳转到音乐。(再试试呗) 但是,当你想尝试你最想尝试的微博的时候,输入Weibo://然后确认,你会发现,这不好使。why? 因为新浪微博的真实的软件名不是这个Weibo,而是sinaweibo所以通过URL Schemes打开软件虽然容易,但是问题就在于去哪搞到正确的软件名。 在iOS设备上操作的办法需要越狱,因为用到iFile: 第一步:打开iFile,在列表里选择“应用程序”,或者进入路径进入/var/mobile/Applications 如果你看到的是乱码,就在设置里将“应用程序名称”这个选项打开: 然后找到你想要的软件,比如说我现在要找“微博HD”: URL Schemes当然不可能有中文,所以我们需要点开这个“微博HD”的文件夹,就会看到WeiboHDPro.app: 接着点开WeiboHDPro.app,找到“info.plist”: 用文本编辑器打开这个”info.plist”,并搜索“CFBundleURLSchemes”: 下面的就是这个软件的URL Schemes,确切地说微博有两个。 我们把这两个中的任何一个复制下来,再粘贴到Safari里,后面加上冒号和两个斜杠,即sinaweibohd://再按输入,就直接可以跳转到新浪微博里了。另,在电脑端操作的办法不需要越狱,直接用第三方文件管理软件按照上述路径找到info.plist文件然后搜索“CFBundleURLSchemes”,找到URL Schemes就可以了。二.用于直接执行某款软件的某项操作的URL Schemes文头提到的:*://post?messages就是一个这样的例子。 你在Safari的地址栏输入这条URL,它不仅会帮你打开Twitter这个软件,而且进入的时候就是输入新信息的界面。这个是很方便的,而且再通过一些URL,你甚至可以做到预设好内容。这样你在Safari输入那条URL的时候,不仅会打开*、直接进入发送新消息的界面,而且里面已经有了内置的内容。 这虽然听起来不错,但是URL却不是我们可以找到的。 因为每个软件都可以按自己的方式去设定URL (LaunchCenterPro的开发者给其它开发者出了一个简易的为自己的App增加URL Schemes的教程)。不过我们可以按照自己的想法去猜猜某些软件的URL。因为我们看那条Twitter的URL,发送新消息的界面就是”post?messages“,别的发布新消息的URL有可能是也有可能不是这样,但总归是和“新消息”、“发布”等单词有关的单词,总不会说微博发布新消息的URL是:sinaweibo://shit我猜出来了一个Byword的URL,是直接打开并创建新文本的URL:byword://new要猜出来所有你想要的App的执行动作类的URL确实没那么简单,不过很多开发者会在自己的主页公布自己软件的URL,Tweetbot的就非常全面。当然也不是所有的软件的作者都有公布,因为有的软件作者可能软件里都没有这种类型的URL,那就没戏了。handleOpenURL总结了相当多的可用的URL Schemes,不过不怎么有国产的软件,大家可以直接搜索。如果你找到了或者搞到了这个网站上没有的URL Schemes,你还可以直接提交给这个网站。造福后来人。以上就是查找两种URL Schemes的办法,本文不是为小白写的所以还是有经验的人再动手。热心网友 时间:2023-11-10 04:59
方法如下:
这个取决于这个APP有没有设置URL Scheme。
如果没有设置, 无论如何都找不到。
如果是要自己给自己的APP配置一个Scheme。
可以在info.plist里面添加URL Types--->URL Schemes--->Items--->添加一个Scheme即可。