开通Associated Domains

注意:重新设置之后,Profiles文件需要更新

然后通过Xcode更新mobileprovision文件,即更新上述保存的文件,Xcode->Perferances...->Account->AppIds->Team&role->Download Manual Profiles

a)Universal Links必须支持https
b)Universal Links配置的文件(apple-app-site-association文件)paths不能带query参数
c)微信使用Universal Links拉起第三方App时,会在Universal Links末尾拼接路径和参数,因此App配置(apple-app-site-association文件)的paths必须加上通配符
创建apple-app-site-association文件,json格式,文件不含后缀
终端创建:
touch apple-app-site-association
appID 是由TeamId + . + BundleId组成。
{
"applinks": {
"apps": [],
"details": [
{
"appID": "TeamId.BundledId",
"paths": [ "/app/*"]
}
]
}
}
那么 微信后台需要填写配置的通用连接Universal link 为
https://www.test.com/app/
App中调用微信openSDK的+(BOOL)registerApp:(NSString *)appid universalLink:(NSString *)universalLink方法的通用链接参数也一定要带路径即https://www.test.com/app/,保持一致,单纯的域名就会导致二次降级启动。
apps后面的数组为空就好,主要内容配置在details里面
包含:appID和paths
这里着重讲一下paths:
path是设定你的app支持的路径列表,只有访问到域名下对应path的地址才会唤起APP。
其中可以使用通配符*或者/app/*
具体路径地址/app/home
还可以忽略某种规则NOT /help/website/*
如果要支持QQ分享配置如下
{
"applinks": {
"apps": [],
"details": [
{
"appID": "teamid.bundleid",
"paths": [ "*","/qq_conn/appid/*" ]
}
]
}
}
微信支付和分享
{
"applinks": {
"apps": [],
"details": [
{
"appID": "teamid.bundleid",
"paths": [ "*","/app/*" ]
}
]
}
}
1、
apps:是限制只能在这几个app中使用, 基本是不填写,所以是空数组
2、appID:为teamId.bundleidentifier形式,9JA89QQLNQ就是teamId,com.apple.wwdc是项目identifier。
登陆开发者中心,在Account -> Membership里面可以找到Team ID。
3、details:数组中可以配置多个APP的信息,如果公司内有多个APP需要支持Universal link,则可以直接添加多个
4、paths:设定你的app支持的路径列表,只有这些指定路径的链接,才能被app所处理。*的写法代表了可识别域名下所有链接
5、/app/*是自己定义的路径;
/app/*是自己定义的路径;
/qq_conn/22222222/*需要根据QQ互联平台设置,22222222是QQ互联后台对应应用的APPID。
如果上传人员给你的访问路径是:
https://www.baidu.com/.well-known/apple-app-site-association 或
https://www.baidu.com/apple-app-site-association则:
微信开放平台的Universal Link填写是:https://www.baidu.com/app/
QQ互联平台的Universal Link填写是:https://www.baidu.com/qq_conn/22222222/
TeamId查找方法:

建议Universal links 配置path 例如/app/*,避免全域名
使用https://test.com/apple-app-site-association或者https://test.com/.well-known/apple-app-site-association能够访问到(能够下载或者返回文件内容即可)
也可以使用苹果的验证网站https://search.developer.apple.com/appsearch-validation-tool/来验证文件是否能够被访问到。若应用未上线,可能出现如下结果:

Error no apps with domain entitlements 是因为还没有发布

注意点:在 Associated Domains 里面配置的 Universal Links 必须要以 applinks: 开头,后面写上域名,例如:
applinks:www.test.com

微信要求填写格式是https开头,"/"结尾, 所以填写
https://test.com/app/
1)将应用打包或者真机调试安装到手机上,json格式的文件是app第一次安装,它会从https://domain.com/apple-app-site-association下载这个文件。
2)需要测试该功能的时候,只需要在备忘录输入App能识别的链接https://www.test.com/testapp/,然后直接点击或是长按就可以了,直接点的效果是跳转到你的App,长按的效果是弹出的菜单中第二项是“在'XXX应用'中打开”,这也代表着成功。
3)如果未安装应用或者安装了应用由于网络的原因没有正确下载到apple-app-site-association文件则不会出现XXX应用中打开 ,这时候需要安装应用,切换网络重试。
备忘录中复制通用连接https://www.test.com/testapp/ 点击连接 可以正常直接打开APP
附图备忘录中长按可以看到:

Safari浏览器中输入通用连接后下拉应该能看到 APP中打开 点击点开按钮可以打开应用

系统只会在第一次安装/启动APP的时候去拉取Universal Links
https域名:
https://www.test.cn
文件地址:https://www.test.cn/apple-app-site-association
https://www.test.cn/.well-known/apple-app-site-association
Universal Links:https://www.test.cn/app/
Xcode Domains:applinks:test.cn
Safari或者备忘录访问:https://www.test.cn/app/
微信:https://help.wechat.com/app

在对接微信支付的时候,这个问题纠结了我2天,一直以为自己配置的不对,咨询支付对接方,他们也说我的Universal link配置不对,可我已经吧Universal link配置看了好多遍了,没有问题哈。最终是由于微信开发者平台的,我们应用处于审核中,等审核通过就可以调用测试支付了。真是一个大写的尴尬????
https://developer.apple.com/library/archive/documentation/General/Conceptual/AppSearch/UniversalLinks.html#//apple_ref/doc/uid/TP40016308-CH12-SW1
https://www.jianshu.com/p/5aeb5f8e4976
https://blog.csdn.net/survivorsfyh/article/details/121859776
https://www.kancloud.cn/i281151/note/2321693
http://www.360doc.com/content/21/1221/08/65840031_1009637769.shtml
https://www.lbyxlz.com/universal-link-打开app前端部署采坑记/
https://www.jianshu.com/p/e2bbceca48b6
https://www.jianshu.com/p/f1a1e1833eec
我有一个在Linux服务器上运行的ruby脚本。它不使用rails或任何东西。它基本上是一个命令行ruby脚本,可以像这样传递参数:./ruby_script.rbarg1arg2如何将参数抽象到配置文件(例如yaml文件或其他文件)中?您能否举例说明如何做到这一点?提前谢谢你。 最佳答案 首先,您可以运行一个写入YAML配置文件的独立脚本:require"yaml"File.write("path_to_yaml_file",[arg1,arg2].to_yaml)然后,在您的应用中阅读它:require"yaml"arg
我已经在Sinatra上创建了应用程序,它代表了一个简单的API。我想在生产和开发上进行部署。我想在部署时选择,是开发还是生产,一些方法的逻辑应该改变,这取决于部署类型。是否有任何想法,如何完成以及解决此问题的一些示例。例子:我有代码get'/api/test'doreturn"Itisdev"end但是在部署到生产环境之后我想在运行/api/test之后看到ItisPROD如何实现? 最佳答案 根据SinatraDocumentation:EnvironmentscanbesetthroughtheRACK_ENVenvironm
之前在培训新生的时候,windows环境下配置opencv环境一直教的都是网上主流的vsstudio配置属性表,但是这个似乎对新生来说难度略高(虽然个人觉得完全是他们自己的问题),加之暑假之后对cmake实在是爱不释手,且这样配置确实十分简单(其实都不需要配置),故斗胆妄言vscode下配置CV之法。其实极为简单,图比较多所以很长。如果你看此文还配不好,你应该思考一下是不是自己的问题。闲话少说,直接开始。0.CMkae简介有的人到大二了都不知道cmake是什么,我不说是谁。CMake是一个开源免费并且跨平台的构建工具,可以用简单的语句来描述所有平台的编译过程。它能够根据当前所在平台输出对应的m
注意:本文主要掌握DCN自研无线产品的基本配置方法和注意事项,能够进行一般的项目实施、调试与运维AP基本配置命令AP登录用户名和密码均为:adminAP默认IP地址为:192.168.1.10AP默认情况下DHCP开启AP静态地址配置:setmanagementstatic-ip192.168.10.1AP开启/关闭DHCP功能:setmanagementdhcp-statusup/downAP设置默认网关:setstatic-ip-routegeteway192.168.10.254查看AP基本信息:getsystemgetmanagementgetmanaged-apgetrouteAP配
1.1.1 YARN的介绍 为克服Hadoop1.0中HDFS和MapReduce存在的各种问题⽽提出的,针对Hadoop1.0中的MapReduce在扩展性和多框架⽀持⽅⾯的不⾜,提出了全新的资源管理框架YARN. ApacheYARN(YetanotherResourceNegotiator的缩写)是Hadoop集群的资源管理系统,负责为计算程序提供服务器计算资源,相当于⼀个分布式的操作系统平台,⽽MapReduce等计算程序则相当于运⾏于操作系统之上的应⽤程序。 YARN被引⼊Hadoop2,最初是为了改善MapReduce的实现,但是因为具有⾜够的通⽤性,同样可以⽀持其他的分布式计算模
我是ruby的新手,正在配置IRB。我喜欢pretty-print(需要'pp'),但总是输入pp来漂亮地打印它似乎很麻烦。我想做的是默认情况下让它漂亮地打印出来,所以如果我有一个var,比如说,'myvar',然后键入myvar,它会自动调用pretty_inspect而不是常规检查。我从哪里开始?理想情况下,我将能够向我的.irbrc文件添加一个自动调用的方法。有什么想法吗?谢谢! 最佳答案 irb中默认pretty-print对象正是hirb被迫去做。Theseposts解释hirb如何将几乎所有内容转换为ascii表。虽
我想在IRB中浏览文件系统并让提示更改以反射(reflect)当前工作目录,但我不知道如何在每个命令后进行提示更新。最终,我想在日常工作中更多地使用IRB,让bash溜走。我在我的.irbrc中试过这个:require'fileutils'includeFileUtilsIRB.conf[:PROMPT][:CUSTOM]={:PROMPT_N=>"\e[1m:\e[m",:PROMPT_I=>"\e[1m#{pwd}>\e[m",:PROMPT_S=>"FOO",:PROMPT_C=>"\e[1m#{pwd}>\e[m",:RETURN=>""}IRB.conf[:PROMPT_MO
我正在使用Ruby/Mechanize编写一个“自动填写表格”应用程序。它几乎可以工作。我可以使用精彩CharlesWeb代理以查看服务器和我的Firefox浏览器之间的交换。现在我想使用Charles查看服务器和我的应用程序之间的交换。Charles在端口8888上代理。假设服务器位于https://my.host.com。.一件不起作用的事情是:@agent||=Mechanize.newdo|agent|agent.set_proxy("my.host.com",8888)end这会导致Net::HTTP::Persistent::Error:...lib/net/http/pe
如果特定语言环境中缺少翻译,如何配置i18n以使用en语言环境翻译?当前已插入翻译缺失消息。我正在使用RoR3.1。 最佳答案 找到相似的question这里是答案:#application.rb#railswillfallbacktoconfig.i18n.default_localetranslationconfig.i18n.fallbacks=true#railswillfallbacktoen,nomatterwhatissetasconfig.i18n.default_localeconfig.i18n.fallback
对于我正在编写的Rails3应用程序,我正在考虑从本地文件系统上的XML、YAML或JSON文件中读取一些配置数据。重点是:我应该把这些文件放在哪里?Rails应用程序中是否有用于存储此类内容的默认位置?附带说明一下,我的应用程序部署在Heroku上。 最佳答案 我经常做的是:如果文件是通用配置文件:我在目录/config中创建一个YAML文件,每个环境有一个上层key如果我为每个环境(大项目)创建一个文件:我为每个环境创建一个YAML并将它们存储在/config/environments/然后我在加载YAML的地方创建了一个初始化