我已经连接了免费的自定义 page.link 子域,并且效果很好并且符合预期。它会打开我的应用程序并将用户重定向到特定页面。但是,我最近从 google 域获得了一个自定义域,并想连接它。域名是https://gifte.app
我将它连接到我的项目associated domains
:applinks:gifte.app
和另一个链接:applinks:gifte.app/applinks
在 Firebase 控制台中,我还添加https://gifte.app
并添加了https://gifte.app/applinks
添加第一个时,它告诉我在我所做的 DNS 设置中添加一些行。当添加这个https://gifte.app/applinks
火力基地告诉我添加
"appAssociation": "自动",
“重写”:[{“来源”:“/applink/**”,“动态链接”:真}]
到我添加并位于我的项目目录中的 firebase.json 。
创建动态链接时。我用了
DynamicLinkComponents.init(link: linkParameter, domainURIPrefix: "https://gifte.app/applinks")
并按照 firebase 教程视频中显示的方式创建了链接。运行项目并尝试创建动态链接。我收到这个错误
错误 Domain=com.firebase.durabledeeplink Code=0 “您的项目不拥有动态链接域:https ://gifte.app
但是,使用时https://gifte.page.link
我没有收到错误,并且工作正常。
当https://gifte.app
用作 domainURIPrefix 时,会生成动态链接。但是,当在便笺应用程序中单击它时。它不会重定向到应用程序。而是将我重定向到 404 错误
该文件不存在,并且在当前目录中找不到 index.html 或根目录中的 404.html。
为什么我会看到这个?您可能为您的应用程序部署了错误的目录。检查您的 firebase.json 并确保 public 目录指向包含 index.html 文件的目录。
您还可以在站点的根目录中添加 404.html 以将此页面替换为自定义错误页面
总结创建链接
- https://gifte.page.link作为 domainURIPrefix 有效
- https://gifte.app as domainURIPrefix 创建 url 但在注释中单击时不会重定向到应用程序。而不是firebase错误屏幕
- https://gifte.app/applinks作为 domainURIPrefix 不起作用并在应用程序中给出错误
所以我的问题是,如何让自定义动态链接与免费 page.link 子域一样工作?我不明白为什么添加自定义域会导致这么多问题,以及为什么 usinghttps://gifte.app/applinks
会出现错误提示我不拥有该域。
我的 firebase.json 文件
{
"functions": {
"predeploy": [
"npm --prefix \"$RESOURCE_DIR\" run lint"
],
"source": "functions"
},
"hosting": {
"public": "public",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"appAssociation": "AUTO",
"rewrites": [ { "source": "/applink/**", "dynamicLinks": true } ]
}
}
有没有人有办法解决吗?谢谢你。