如何在flutter中使⽤fluwx配置UniversalLink
以下链接可查阅更加了解U niversa lLink
⽀持通⽤链接
允许应⽤程序和⽹站链接到您的内容
启⽤通⽤链接
处理通⽤链接
IOS开发⽂档
什么是U niver sa l Link(通⽤链接)
Universal Link(通⽤链接)是Apple在iOS9推出的⼀种能够⽅便的通过传统HTTPS链接来启动APP的功能,可以使⽤相同的⽹址打开⽹址和APP。当你的应⽤⽀持Universal Link(通⽤链接),当⽤户点击⼀个链接是可以跳转到你的⽹站并获得⽆缝重定向到对应的APP,且不需要通过Safari浏览器。如果你的应⽤不⽀持的话,则会在Safari中打开该链接。在苹果开发者中可以看到对它的介绍是:
Seamlessly link to content inside your app, or on your website in iOS 9 or later. With universal links, you can always give users the most integrated mobile experience, even when your app isn’t installed on their device.
如何理解U niver sa l Link(通⽤链接)
Universal Link(通⽤链接):看起来就是⼀条普通的https链接,当然是我们在该链接域名根⽬录配置过的⼀个链接,也可以在该链接中放置对应的H5页⾯。当⽤户的点击该链接,只要⼿机中安装了⽀持该链接的APP就会直接进⼊到APP中。如果没有安装APP则会跳转到Safari浏览器中,展⽰H5页⾯。对⽤户来说则是⼀个⽆缝跳转的过程。
使⽤U niver sa l Link(通⽤链接)跳转的好处
唯⼀性: 不像⾃定义的URL Scheme,因为它使⽤标准的HTTPS协议链接到你的web站点,所以⼀般不会被其它的APP所声明。另外,URL
唯⼀性
scheme因为是⾃定义的协议,所以在没有安装 app 的情况下是⽆法直接打开的(在Safari中还会出现⼀个不可打开的弹窗),⽽Universal
Link(通⽤链接)本⾝是⼀个HTTPS链接,所以有更好的兼容性;
安全
安全:当⽤户的⼿机上安装了你的APP,那么系统会去你配置的⽹站上去下载你上传上去的说明⽂件(这个说明⽂件声明了当前该HTTPS链接可以打开那些APP)。因为只有你⾃⼰才能上传⽂件到你⽹站的根⽬录,所以你的⽹站和你的APP之间的关联是安全的;
可变:当⽤户⼿机上没有安装你的APP的时候,Universal Link(通⽤链接)也能够⼯作。如果你愿意,在没有安装你的app的时候,⽤户点击链接,可变
会在safari中展⽰你⽹站的内容;
简单:⼀个HTTPS的链接,可以同时作⽤于⽹站和APP;
简单
私有: 其它APP可以在不需要知道你的APP是否安装了的情况下和你的APP相互通信。
私有
如何开启UniversalLink
1.在开发者平台设置Universal Link 注意要以https开头 /结尾
2.在苹果开发者账户⾥⾯开启Associated Domains 及在xcode中配置开发者账户中开启Associated Domains
Xcode中配置
配置如 applinks:www.baidu (applinks:+你准备的UniversalLink)
3.需要编写⼀个名字为apple-app-site-association的json⽂件 (上传服务器时请去掉.json的后缀)
内容格式如: (注意teamID和bundleID 需要到苹果开发者账户⾥⾯查看 下⾯会有截图)
{"applinks":{"apps":[],"details":[{"appID":"teamID.bundleId","paths":["/deaplink","/wwdc/news/","*"]},
{"appID":"ABCD1234.apple.wwdc","paths":["*"]}]}}
apple-app-site-association.json
paths配置,实际上就是限制哪些路径可以唤醒app,哪些路径不能唤醒app。格式如下:
"paths": [ "/wwdc/news/", "NOT /videos/wwdc/2010/*", "/videos/wwdc/201?/*"]
使⽤*配置,则整个⽹站都可以使⽤
使⽤特定的URL,例如/wwdc/news/来指定某⼀个特殊的链接
在特定URL后⾯添加*,例如 /videos/wwdc/2015/*, 来指定⽹站的某⼀部分
除了使⽤*来匹配任意字符,你也可以使⽤ ?来匹配单个字符,你可以在路径当中结合这两个字符使⽤,例如 /foo/*/bar/201?/mypage
需要注意的是:
配置的paths路径,是区分⼤⼩写的
以下获取teamID和bundleID
xcode怎么打开苹果开发者平台
⽐如teamID是xxxxxxxxxxx,bundleId是st.app 那么appID就是: st.app 配置完打开链接会出现
4.此时Xcode还需要配置
在Xcode中,在 “info”标签栏的“LSApplicationQueriesSchemes“添加weixin 和weixinULAPI
5.处理通⽤链接
当APP被UniversalLink调起后,可以在delegate中使⽤如下⽅法进⾏对应处理
-(BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^) (NSArray * _Nullable))restorationHandler{
NSLog(@"userActivity : %@",userActivity.webpageURL.description);
return YES;
}
回调处理
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论