为Flutter应用程序添加关联域名权限

10

我需要在我的Flutter应用中添加相关域名权限,以便我可以实现应用链接。 我使用uni_links插件,在Android上运行良好。我已经按照说明添加了ios/Runner/Runner.entitlements文件,但它没有起作用。苹果官方文档暗示我需要通过xcode向应用程序添加一些内容。问题是,我不使用xcode,而是使用Android Studio。我认为我需要手动向info.plistproject.pbxproj添加条目,这就是我认为xcode所做的。然而,我不确定该添加什么内容。

2个回答

18

从此路径打开Runner.entitlements文件:

ios/Runner/Runner.entitlements

并添加您想要的应用链接

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <!-- ... other keys -->
  <key>com.apple.developer.associated-domains</key>
  <array>
    <string>applinks:[YOUR_HOST]</string>
  </array>
  <!-- ... other keys -->
</dict>
</plist>

阅读苹果公司的通用链接指南,以获得更多信息。


我已经尝试了这个,但在模拟器上无法运行。我的问题是是否需要在Xcode中做一些额外的工作。 - shaharsol
在Xcode中,转到“功能”选项卡,在该部分中有一个添加关联域的选项。首先打开它,然后将链接添加为applinks。Applinks和webcredentials是不同的:applinks用于通用链接webcredentials用于Web凭据共享。这回答了你的问题吗@shaharsol - Sumeet.Jain
我认为这个东西在模拟器上根本无法工作,需要在真实设备上进行测试。另外,由于没有明确提到,您还需要在您的网域上创建匹配的设置以供苹果抓取。 - Martin Westin
@MartinWestin 是的,它在模拟器中无法工作,而且在通用链接或应用链接生效之前,必须将aasa文件上传到网络域。 - Sumeet.Jain

1

登录Apple开发者账户。检查您的Bundle Id。编辑您的App ID。从那里添加关联域名授权。更新您的配置文件并在Flutter项目中使用它。


这意味着您需要从中选择您的应用程序ID和编辑功能。 - Jitendra

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接