iOS 应用跳转、参数传递

iOS 应用跳转、参数传递,第1张

itms-apps:// 和 itms:// 开头的链接都可以,而此时 https:// 开头的链接不可以

创建两个示例Demo,TestDemo和Test2Demo,现在需要实现从Test2Demo跳转到TestDemo中

1、在被跳转的App配置一个协议scheme,这里命名为test(名字可随意配置,当然最好是英文并且跟你项目相关)

targets ->info ->URL Types ->URL Scheme ->填写协议

2、在需要跳转 *** 作的App中执行跳转的方法,实现下面方法

OK,到这里如果你的系统是ios9.0以下,已经大大功告成了。但是,如果是9.0以后,请看下一步。

3、配置协议白名单

在需要跳转 *** 作的App的info.plist文件中增加一个 LSApplicationQueriesSchemes 字段,把它设置为数组类型,并配置需要跳转的协议名单

其中参数mt:8的含义为:

实现iOS APP之间的相互跳转, 使用的就是UIApplication的openURL:方法.

那么, 如果想要在openURL方法中传递参数和数据, 应该如何实现呢?

AppDelegate的application:openURL:options方法

通过URL传递参数,在AppDelegate的 application:openURL:options 方法中, 参数url在两个APP都是一样的值.

如在第一个App中调用如下,

则在 跳转到的App 的AppDelegate.m文件的 application:openURL:options 方法中, 即可获取该url的完整信息.

这样, 就通过URL本身在两个APP之间传递了参数.该参数的格式与Http请求的GET格式保存一致.

通过URL只能简单地传递参数, 如果要传递负责的数据如image就只能通过剪贴板UIPasteboard了.

如在跳转入口App中, 向系统剪贴板中填充数据:

则在 跳转到的App 中, 从剪贴板中取出数据便可以使用:

iOS禁止软件跳转其他软件是可以手动打开关闭的。

苹果手机自动跳转别的app关闭方法如下

1、在手机上找到

设置并打开。

2、打开设置进入设置页面,

3、在设置页面下拉找到Safari并打开,

4、打开Safari,进入Safari页面,

5、在Safari页面上下拉,找到清除历史记录和网站数据并打开。

6、点击确认清除历史记录和数据,

7、清除完毕之后,就不会允许跳转app了

单点授权登录,第三方分享,第三方登录

例如手机有两个应用,app1和app2,app1跳转到app2,步骤如下:

白名单设置方法如下所示:

传值主要通过URL的方式,URL示例如下:

app1成功跳转到app2后,需要在app2的AppDelegate的代理方法中对URL作参数解析,示例如下:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11158440.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存