【发布时间】:2021-10-05 04:15:45
【问题描述】:
我正在构建一个 react-native iOS 应用,它使用 JWPlayer iOS SDK v4 并启用了 chrome cast。
根据 JWPlayer 和 Google Cast 文档,我在 Xcode 中添加了 Access WiFi Information 功能,并将 NSLocalNetworkUsageDescription 和 NSBluetoothAlwaysUsageDescription 添加到 info.plist。
在我的(真实)iPhone 上从 Xcode 运行应用程序时,一切正常。打开应用程序时会出现蓝牙访问提示,然后当在 JWPlayer 中按下 Chrome-cast 按钮时,它会提示网络访问 - 播放器处理程序能够成功发现并连接到投射设备。
但是,当我在 Xcode 中存档应用程序以通过 Ad-hoc、Developer 或 TestFlight 分发方法进行测试时,蓝牙或网络访问提示均未触发,因此 JWPlayer 无法发现任何投射设备。
我检查了位于 /Users/jonathanredford/Library/Developer/Xcode/Archives/2021-09-30/[AppName] 30-9-21, 3.19 pm.xcarchive/Products/Applications/[AppName].app/info.plist 的 info.plist 文件,以确认 NSLocalNetworkUsageDescription 和 NSBluetoothAlwaysUsageDescription 都在其中,它们确实存在。
我已经关注了类似问题的解决方案,但尚未取得任何成功。
其中一个解决方案可以确保在 Xcode 中查看 info.plist 时,确保在右侧的文件检查器中检查/选择了目标应用程序。这样做会导致存档失败并出现以下错误:
1) Target '[AppName]' (project '[AppName]') has copy command from '/Users/jonathanredford/.../Projects/[AppName]/ios/[AppName]/Info.plist' to '/Users/jonathanredford/Library/Developer/Xcode/DerivedData/[AppName]-byufdhksjujqvwfyfegsqgpdvhow/Build/Intermediates.noindex/ArchiveIntermediates/[AppName]/InstallationBuildProductsLocation/Applications/[AppName].app/Info.plist'
2) Target '[AppName]' (project '[AppName]') has process command with output '/Users/jonathanredford/Library/Developer/Xcode/DerivedData/[AppName]-byufdhksjujqvwfyfegsqgpdvhow/Build/Intermediates.noindex/ArchiveIntermediates/[AppName]/InstallationBuildProductsLocation/Applications/[AppName].app/Info.plist'
提前谢谢你!
【问题讨论】:
-
嗨,您是否按照developers.google.com/cast/docs/ios_sender/… 将
NSBonjourServices添加到您的Info.plist中? -
@Shahrukh 是的,我已将
NSBonjourServices添加到Info.plist
标签: ios xcode react-native jwplayer