通用链接universal links中遇到的问题
2017-02-20 10:49
295 查看
Universal Links 现在已经在不少的app中被使用,未来我认为,几乎全部的iOS应用都会使用此功能。在微信中直接呼起app,多稳,毫无违和感。
关于universal links网上教程一篇篇的,大神们写的都很好,我也是参考其中的一些,才实现了这个功能,其中最好的教程当属wwdc上的视频了,由于英语水平有限,我对外语的教程是尽量拒绝的(因为没有字幕),但是看了之后才发现,真的是简单易懂。
而本篇文章是帮助我以后,及大家以后在配置universal links产生问题时,可以用来参考解决一些问题。
首先要确保一下几点:
1.entitlements中已添加associated domain,形如:applinks:你的https域名。
![](http://img.blog.csdn.net/20170220101252318?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcDc3NjcxNTg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
2.上传了apple-app-site-association文件到你的https根域名下,并且文件中details键下,准确的写对了键名:TeamId.AppId,例如:
3.在苹果开发者中心确认,你的项目的App IDs中是否开启了associated domain功能。
![](http://img.blog.csdn.net/20170220101310115?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcDc3NjcxNTg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
4.在上述操作之后,需要更新一下development的provisioning profiles,选择更新后的app id.
5.此时将app运行到测试机后(安装期间会请求根域名下的那个文件(你懂得)),在safari中输入https://你的域名,当然,会是一个404server error,此时下拉你的页面,将会出现:在###应用中打开,的一个悬浮条。
![](http://img.blog.csdn.net/20170220102314107?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcDc3NjcxNTg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
6.此时,可以兴奋一小会了,毕竟已经能再safari中打开我们的应用了。
7.我们的目的是在微信,qq等应用中呼起,可当我们将我们的https域名,输入在微信中,并且点击的时候,我们发现,真的皮,真的就是404server error,如何下拉都没用。我在此时,真的是有点心灰意冷了,不过老板的任务,不能不完成啊,强行google了一波,然后,我看到了:跨域,这个词很炫。
8.然后我也不确定是否可以,硬着头皮让前端同事,写了一个简单的页面,在一个与applinks中添加的域名不同的页面(要跨域),写了一个点击操作,跳转到applinks中所写的域名,然后在微信中,打开我们新搞得页面,点击,嗯,直接跳转到了我们的app中,大功告成!
9.然后我们下一步的完善工作是,呼起指定页面,
就是这个函数了,可以跟前端约定一个规则,解url,然后跳转。
10.那么我们还需要做一些其他的支持,比如未安装app时,跳转到下载页面,ios9一下的用户也要做一些支持,这些地方处理好,我们的app就可以更新上线啦,嗯,完美~
关于universal links网上教程一篇篇的,大神们写的都很好,我也是参考其中的一些,才实现了这个功能,其中最好的教程当属wwdc上的视频了,由于英语水平有限,我对外语的教程是尽量拒绝的(因为没有字幕),但是看了之后才发现,真的是简单易懂。
而本篇文章是帮助我以后,及大家以后在配置universal links产生问题时,可以用来参考解决一些问题。
首先要确保一下几点:
1.entitlements中已添加associated domain,形如:applinks:你的https域名。
2.上传了apple-app-site-association文件到你的https根域名下,并且文件中details键下,准确的写对了键名:TeamId.AppId,例如:
{ "applinks": { "apps": [], "details": { "G53MGMBNGQ.com.hg.testLinks": { "paths":["*"] } } } }
3.在苹果开发者中心确认,你的项目的App IDs中是否开启了associated domain功能。
4.在上述操作之后,需要更新一下development的provisioning profiles,选择更新后的app id.
5.此时将app运行到测试机后(安装期间会请求根域名下的那个文件(你懂得)),在safari中输入https://你的域名,当然,会是一个404server error,此时下拉你的页面,将会出现:在###应用中打开,的一个悬浮条。
6.此时,可以兴奋一小会了,毕竟已经能再safari中打开我们的应用了。
7.我们的目的是在微信,qq等应用中呼起,可当我们将我们的https域名,输入在微信中,并且点击的时候,我们发现,真的皮,真的就是404server error,如何下拉都没用。我在此时,真的是有点心灰意冷了,不过老板的任务,不能不完成啊,强行google了一波,然后,我看到了:跨域,这个词很炫。
8.然后我也不确定是否可以,硬着头皮让前端同事,写了一个简单的页面,在一个与applinks中添加的域名不同的页面(要跨域),写了一个点击操作,跳转到applinks中所写的域名,然后在微信中,打开我们新搞得页面,点击,嗯,直接跳转到了我们的app中,大功告成!
9.然后我们下一步的完善工作是,呼起指定页面,
- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray * _Nullable))restorationHandler
就是这个函数了,可以跟前端约定一个规则,解url,然后跳转。
10.那么我们还需要做一些其他的支持,比如未安装app时,跳转到下载页面,ios9一下的用户也要做一些支持,这些地方处理好,我们的app就可以更新上线啦,嗯,完美~
相关文章推荐
- SOS!!!关于游戏汉化项目中遇到一些不能解决的问题。。。。。
- 从ACCESS转到学习SQL SERVER所遇到的几个问题
- ADO编程中ATL所遇到的定义问题
- 解决在Eclipse中配置JBoss、Tomcat等插件时遇到的问题
- 水晶报表操作中遇到的问题
- 今天使用xloadtree遇到了问题:(
- 刚才遇到了关于C#使用外部DLL函数上的char*的问题。
- 今天开始使用这个blog来记录我的学习中遇到的问题吧
- 解决编写导入dBase存储过程的遇到的问题
- JS版常见问题(一)层遇到select框时?
- WIN XP的内置firewall还真是不太好使,遇到的两个奇怪问题都和它有关.
- 签入VSS中遇到UTF-8问题
- 项目中遇到的问题 - 准备阶段
- 重新搭建"灶具维修管理系统"的VB开发环境遇到的几个问题
- (旧文重贴)对于以前遇到过的ws proxy实例化时间太长的问题,看JNDI受到了些启发
- MSSQL2000的官方JDBC在应用动态代理机制遇到的异常问题解决
- .Net DAO 层设计遇到的问题
- 今天又遇到了一个问题
- Delphi 编程中遇到的怪问题
- [导入]JDBC链接sql server数据库遇到的问题和解决方法