iOS端如何从亚马逊App分享内容至Flutter应用
解决iOS上亚马逊App无法分享到Flutter应用的问题
问题根源
你仅在Info.plist中配置了NSExtensionActivationSupportsWebURLWithMaxCount,但亚马逊App分享商品时,传递的内容大概率不是标准Web URL格式——更可能是带链接的纯文本、富文本,甚至是亚马逊自定义的UTI类型,导致你的应用不符合分享触发条件。
解决步骤
需要在Info.plist的分享扩展配置里,补充支持更多内容类型:
添加纯文本支持(最可能解决问题)
在NSExtensionActivationRule节点下新增:<key>NSExtensionActivationSupportsText</key> <true/>添加富文本支持(可选)
如果亚马逊传递的是富文本格式,可追加:<key>NSExtensionActivationSupportsWebPageWithMaxCount</key> <integer>1</integer>添加通用数据支持(兜底)
若上述配置仍不生效,尝试添加更宽泛的类型:<key>NSExtensionActivationSupportsItemsWithMaxCount</key> <integer>1</integer>
验证与调试
- 修改
Info.plist后,重新编译并部署应用到iOS设备 - 打开亚马逊App尝试分享商品,检查你的应用是否出现在分享选项中
- 若仍未出现,用Xcode查看日志:运行应用后触发亚马逊分享,在控制台查看传递的内容类型,再针对性添加对应支持项
额外提醒
使用receive-sharing-intent插件时,要确保Flutter代码中同时处理文本、URL等多种分享数据类型,避免只解析URL导致接收失败。
内容的提问来源于stack exchange,提问作者Nickthegoatboy
相关产品推荐
相关产品推荐

