在通用链接 iOS 中排除 url
exclude a url in universal links iOS
我已经实现了通用链接并且工作正常,但现在我需要从打开的应用程序中排除一些 url 类型,所以我尝试了以下方法与 apple-app-site-association 文件。
{
"applinks": {
"apps": [],
"details": [{
"appID": "abc",
"paths": ["NOT /test_url_1/", "NOT /test_url_2/"]
}]
}
}
"paths":["NOT /test_url_1/", "NOT /test_url_2/"]
- 将忽略所有 url,不会重定向到移动应用程序
{
"applinks": {
"apps": [],
"details": [{
"appID": "abc",
"paths": ["NOT /test_url_1/", "/test_url_2/"]
}]
}
}
"paths":["NOT /test_url_1/", "/test_url_2/"]
- 将忽略 /test_url_1/ url,允许 /test_url_2/ 并忽略其他 urls
{
"applinks": {
"apps": [],
"details": [{
"appID": "abc",
"paths": ["NOT /test_url_1/", "NOT /test_url_2/", "*"]
}]
}
}
"paths":["NOT /test_url_1/", "NOT /test_url_2/", "*"]
- 将在移动应用程序中打开所有 urls
我只需要忽略 test_url_1 和 test_url_2 并为其他 url 打开移动应用程序。有没有办法做到这一点?我在这里遗漏了什么吗?
你必须通过将你的每个 url 转换为字符串来检查它,并寻找你不想在你的新 url 路径中的你
let url = URL(string: "/test_url_1/somepoints/")!
let urlString = url.absoluteString
var newURL:URL!
if !urlString.contains("test_url") {
newURL = URL(string: urlString)
// use the new url now
}
对于 url 的大列表,您必须在 for 循环中进行此测试并生成您想要的 url
你的第三个例子应该是正确的,并且符合我之前在工作实践中看到的规范和例子。我们可能需要查看非匿名数据和实际链接才能进一步调试。
你也可以试试这个:
{
"applinks": {
"apps": [],
"details": [{
"appID": "abc",
"paths": ["NOT /test_url_1/*", "NOT /test_url_2/*", "*", "/"]
}]
}
}
我已经实现了通用链接并且工作正常,但现在我需要从打开的应用程序中排除一些 url 类型,所以我尝试了以下方法与 apple-app-site-association 文件。
{
"applinks": {
"apps": [],
"details": [{
"appID": "abc",
"paths": ["NOT /test_url_1/", "NOT /test_url_2/"]
}]
}
}
"paths":["NOT /test_url_1/", "NOT /test_url_2/"]
- 将忽略所有 url,不会重定向到移动应用程序
{
"applinks": {
"apps": [],
"details": [{
"appID": "abc",
"paths": ["NOT /test_url_1/", "/test_url_2/"]
}]
}
}
"paths":["NOT /test_url_1/", "/test_url_2/"]
- 将忽略 /test_url_1/ url,允许 /test_url_2/ 并忽略其他 urls
{
"applinks": {
"apps": [],
"details": [{
"appID": "abc",
"paths": ["NOT /test_url_1/", "NOT /test_url_2/", "*"]
}]
}
}
"paths":["NOT /test_url_1/", "NOT /test_url_2/", "*"]
- 将在移动应用程序中打开所有 urls
我只需要忽略 test_url_1 和 test_url_2 并为其他 url 打开移动应用程序。有没有办法做到这一点?我在这里遗漏了什么吗?
你必须通过将你的每个 url 转换为字符串来检查它,并寻找你不想在你的新 url 路径中的你
let url = URL(string: "/test_url_1/somepoints/")!
let urlString = url.absoluteString
var newURL:URL!
if !urlString.contains("test_url") {
newURL = URL(string: urlString)
// use the new url now
}
对于 url 的大列表,您必须在 for 循环中进行此测试并生成您想要的 url
你的第三个例子应该是正确的,并且符合我之前在工作实践中看到的规范和例子。我们可能需要查看非匿名数据和实际链接才能进一步调试。
你也可以试试这个:
{
"applinks": {
"apps": [],
"details": [{
"appID": "abc",
"paths": ["NOT /test_url_1/*", "NOT /test_url_2/*", "*", "/"]
}]
}
}