虽然我已经添加了
NSLocationWhenInUseUsageDescription
我一直收到这个警告
此应用尝试在没有使用说明的情况下访问隐私敏感数据。应用程序的Info.plist必须包含一个NSLocationWhenInUseUsageDescription键,其字符串值向用户解释应用程序如何使用此数据
仅供参考:我在应用程序中有多个info.Plist。不知道该怎么办?
答案 0 :(得分:17)
同时添加
NSLocationAlwaysAndWhenInUseUsageDescription
和
pist中的NSLocationWhenInUseUsageDescription
键解决了我的问题。
<key>NSLocationAlwaysUsageDescription</key>
<string>Your location is required for xyz benefits for you</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>Your location is required for xyz benefits for you</string>
答案 1 :(得分:8)
有很多结构不良的框架(即FirebaseMessaging) 使用摄像头和位置信息对用户无益。 您应该警告最终用户,您的应用程序不需要此功能,并且用户不得授予应用程序对该内部寄生虫的访问权限。 我们生活在多么悲伤,悲伤的时代。
<key>NSLocationAlwaysUsageDescription</key>
<string>Your location is not needed. This request has popped up due to a 3rd party framework used by the app in a context that does NOT need you to reveal you location</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>You will get zero benefit allowing this app accessing your location. You should never see this alert. If you do alert technical support at foo@bar.baz</string>
答案 2 :(得分:5)
好吧,实际上,在我的情况下,我需要将所有这三样放置如下:
<key>NSLocationAlwaysAndWhenInUseUsageDescription</key>
<string>...</string>
<key>NSLocationAlwaysUsageDescription</key>
<string>...</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>...</string>
注意:我是在Flutter开发的,我不知道在这种情况下它是否有影响...
答案 3 :(得分:2)
我在
中请求授权viewDidLoad
如下:
self.locationManager.requestWhenInUseAuthorization()
当我删除此行时,错误消失了。
答案 4 :(得分:0)
从plist中删除NSLocationWhenInUseUsageDescription并运行该应用程序,然后再次添加并再次运行该应用程序