第一步:被唤醒App2 添加URL Schemes
注意事项
- 名称要独一无二
第二步: App1中添加白名单
在App1的InfoPlist
文件中添加白名单LSApplicationQueriesSchemes
,这里的白名单就是你App2中URL Schemes 添加的内容
第三步:在App1 需要唤醒的方法中添加唤醒代码
let url = URL(string: "DDApp2://")!
if UIApplication.shared.canOpenURL(url) {
UIApplication.shared.open(url)
}
注意事项:
- url一定要以第一步起的名字开头,并且加上
://
- 如果不做任何传参
//
后可以不写内容,如果想要传参可以跟上传入内容
第四步:被唤醒App2,唤醒时的响应
- 如果没有SceneDelegate
// 在AppDelegate 中通过这个方法处理后续想要的操作
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {
// 这里会打印App1中传入的内容
print(url)
return true
}
- 如果有SceneDelegate
func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) {
print("1111")
}
演示效果:
OK,如有不对,欢迎大家指正,大家加油!!!