Swift(iOS 8)-未提示用户使用位置的权限
我已经在Swift(iOS 8)-未提示用户使用位置的权限,ios,xcode,swift,cllocationmanager,cllocation,Ios,Xcode,Swift,Cllocationmanager,Cllocation,我已经在Info.plist 我还请求了授权,但是,应用程序不会提示获得许可,隐私设置中的位置设置在应用程序名称下使用时没有选项。我有一种感觉,Info.plist文件在构建时没有在应用程序中更新,但是我无法确定问题的真正原因。有什么建议吗?感谢所有的帮助 NSLocationAlwaysUsageDescription键已添加到Info.plist,生成已清理,项目已重建,但仍然没有成功。这是我在使用location manager时使用的代码 func viewDidLoad(){ supe
Info.plist
我还请求了授权,但是,应用程序不会提示获得许可,隐私设置中的位置设置在应用程序名称下使用时没有选项。我有一种感觉,Info.plist
文件在构建时没有在应用程序中更新,但是我无法确定问题的真正原因。有什么建议吗?感谢所有的帮助
NSLocationAlwaysUsageDescription
键已添加到Info.plist
,生成已清理,项目已重建,但仍然没有成功。这是我在使用location manager时使用的代码
func viewDidLoad(){
super.viewDidLoad()
if ( ios8() ) {
locationManager.requestAlwaysAuthorization()
locationManager.requestWhenInUseAuthorization()
}
}
locationManager.startUpdatingLocation()
/*
iOS 8 Utility
*/
func ios8() -> Bool {
if ( NSFoundationVersionNumber <= NSFoundationVersionNumber_iOS_7_1 ) {
return false
} else {
return true
}
}
设置always plist键并将构建清理为Start您的代码是错误的。
requestwhenUseAuthorization()
和requestAlwaysAuthorization()
仅在ios 8上可用。如果您想支持ios7,请使用startUpdatingLocation()
我的plist中有相同的键,但我认为由于某种原因,plist在应用程序构建时不会更新。是否存在可以防止这种情况发生的设置?我记得我在Objective-C中也做过同样的事情,我没有任何问题。在你的目标和构建设置中,关于打包的部分是什么样子的?一切都是原样的,我没有改变任何东西,有什么我应该注意的吗?你从零开始项目,没有移动info.plist?您是否从设备或模拟器中删除应用程序,然后再次尝试运行?
Privacy - Location Usage Description
NSLocationAlwaysUsageDescription
NSLocationWhenInUseUsageDescription