我一直在努力使动态链接整天无法正常工作。
我已经使用Firebase网站和Google提供的链接创建了动态链接。我已按照说明添加了相关域(应用链接:https://myapp.page.link/sZZL),并且还设置了Firebase托管。
在firebase上,我检查了Team ID和App Store ID(它们尚未发布到App Store,但已上传到Apple开发者帐户,因此具有ID)是正确的。
已正确设置url类型,并设置了包ID。
如果我在chrome中打开链接,它将重定向到该应用。
我尝试发送带有链接的电子邮件,并将其添加到笔记中并从那里打开。全部打开应用预览页面,然后重定向到应用商店。
您的应用尚未在应用商店中,因为它正在开发中-这会对其产生影响吗?
我只是希望它重定向到应用程序(在相关电话上),而不是应用程序商店
答案 0 :(得分:1)
要使动态链接在iOS上正常工作,您需要进行以下设置:
<key>com.apple.developer.associated-domains</key>
<array>
<string>applinks:myapp.page.link</string>
</array>
<key>CFBundleURLTypes</key>
<array>
.... Some others url schemes
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleURLName</key>
<string>Bundle ID</string>
<key>CFBundleURLSchemes</key>
<array>
<string>your.bundle.id</string>
</array>
</dict>
....
</array>
此外,您还应该添加团队ID(必填)和App Store ID(如果您的应用未发布,则可以使用任何其他应用的App Store ID作为临时解决方案,但也是必需的)
有关更多信息,请参见firecast
要处理应用程序中的链接,请使用this
答案 1 :(得分:0)
请检查关联域中的链接设置。它不应包含https或www。
例如:
应该是这样的:“ applinks:appname.page.link”
但是不应类似于:“ applinks:https://appname.page.link”或“ applinks:www.appname.page.link”
答案 2 :(得分:0)
我使用@Mark Iliev 的回答帮助解决了这个问题,但我的情况有点不同。
最初我在 Associated Domains
中指定了一个 Firebase 域,例如 applinks:myproject.page.link
。
然后我配置了要使用的自定义域,当我更新关联域部分时,XCode 告诉我将创建一个新的权利文件,因此它向项目添加了一个文件 MyProjectRelease.entitlements
自定义域。
但是,原始 MyProject.entitlements
文件中仍然包含旧的 Firebase 域名。将新 MyProject.entitlements
中的域更新为我的自定义域解决了这个问题。
<dict>
<key>aps-environment</key>
<string>development</string>
<key>com.apple.developer.associated-domains</key>
<array>
<string>applinks:mycustomdomain.com</string>
</array>
</dict>