- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是我的代码,显示 map 上当前位置的警报和蓝点:
MapName.h
#import <UIKit/UIKit.h>
#import <MapKit/MapKit.h>
#import <CoreLocation/CoreLocation.h>
@interface MapName : UIViewController <MKMapViewDelegate, CLLocationManagerDelegate>
@property (strong, nonatomic) IBOutlet MKMapView *MapName;
@property (strong, nonatomic) CLLocationManager *locationManager;
@end
map 名称.m
- (void)viewDidLoad
{
[super viewDidLoad];
self.locationManager = [[CLLocationManager alloc]init];
self.locationManager.delegate = self;
if ([self.locationManager respondsToSelector:@selector(requestWhenInUseAuthorization)]) {
[self.locationManager requestWhenInUseAuthorization];
}
[self.locationManager startUpdatingLocation];
//Center the map
[self gotoLocation];
//Show current position
_MapName.showsUserLocation = YES;
}
我已将键 NSLocationWhenIsUseUsageDescription
作为字符串添加到 Info.plist 中。我在 Xcode 上仍然遇到同样的错误。
最佳答案
这是由于:
[self.locationManager startUpdatingLocation];
和
_MapName.showsUserLocation = YES;
在调用这些之前,您需要检查用户是否已授予权限。还要确保关闭 Storyboard 上 MKMapKit 中的用户位置(这花了我几天时间才找到)。
做类似的事情:
CLAuthorizationStatus authorizationStatus= [CLLocationManager authorizationStatus];
if (authorizationStatus == kCLAuthorizationStatusAuthorized ||
authorizationStatus == kCLAuthorizationStatusAuthorizedAlways ||
authorizationStatus == kCLAuthorizationStatusAuthorizedWhenInUse) {
[self.locationManager startUpdatingLocation];
_MapName.showsUserLocation = YES;
}
根据您的应用,您可能不想在启动时请求用户的许可,因为不建议这样做。
关于iphone - -[CLLocationManager requestWhenInUseAuthorization] 或 -[CLLocationManager requestAlwaysAuthorization] 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25950363/
我的代码包含在下面。它是一个旨在返回当前位置坐标的类。我得到的唯一输出是“之前之后之前之后” - 围绕 requestAlwaysAuthorization 的打印行。然后应用程序崩溃。请求对话框有时
我一直在尝试使用一些花哨的 iBeacons 但没有成功,kCLAuthorizationStatusNotDetermined。根据其他问题,需要将这些键添加到 info.plist (有些问题说一
CLLocationManager requestAlwaysAuthorization 弹出窗口立即显示和隐藏,让用户没有时间按下允许按钮。这是我为位置管理编写的类: import UIKit cl
在用户第一次选择“不允许”选项后,调用 [CLLocationManager requestAlwaysAuthorization] 不会显示警报。有没有办法强制应用程序在需要时再次显示警报? 最佳答
我在 plist 上有这段代码: NSLocationUsageDescription Usage NSLocationWhenInUsageDescription WhenIn NSLocation
当请求用户的 iOS 位置权限时,我如何知道 locationManager.requestAlwaysAuthorization() 是否已经被请求给用户? 如果用户有 .AuthorizedWhe
我有一个关于 CLLocationManager 的问题。在请求许可后,我想立即使用 locationServices。我在 viewDidLoad: 中的代码如下所示: if (![CLLocati
我正在尝试使用多步骤过程请求用户的位置;但是,当调用 requestAlwaysAuthorization 时,如果未执行,我想移动以显示消息。 让我通过展示我的流程来更好地解释 这是我目前的流程 请
我的应用曾经使用 requestAlwaysAuthorization 和 NSLocationAlwaysUsageDescription 的 Info.plist 条目。 我将其更改为使用 req
我正在尝试对用户的位置状态进行验证。我实例化了 CLLocationManager,每当我尝试调用 requestAlwaysAuthorization 或 requestWhenInUse 时,我都
在 iOS13 上请求 Always 权限期间,用户可以点击“允许一次”,这将调用状态为 kCLAuthorizationStatusAuthorizedWhenInUse 的适当委托(delegat
didEnterRegion 和 didExitRegion 仅在我请求并允许始终授权 CoreLocation 后调用 即使我请求 WhenInUseAuthorization didExit 和
我有 requestAlwaysAuthorization,如果用户不接受 requestAlwaysAuthorization 我想在应用程序中退出? How can I do it ? 我的代码在
这是我的代码,显示 map 上当前位置的警报和蓝点: MapName.h #import #import #import @interface MapName : UIViewControlle
我在 IOS Ask Request Permission for Location Usage in Always 上遇到了问题。 IOS 8.0 Swift 请求位置权限 requestAlway
当我的应用程序在后台运行时,我真的很想看到显示“____ 正在使用您的位置”的蓝色条,因为这有利于用户体验。我只能在使用 requestWhenInUseAuthorization 并在 plist
当应用在 iOS 13 中使用 requestAlwaysAuthorization 在 CLLocationManager 中请求地理定位时,用户似乎无法获得 Always Allow 选项。它显示
我正在快速开发一个简单的 ios 应用程序,它获取用户的位置并显示位置。我需要将此应用程序设置为针对 ios 7.0 及更高版本,以便 iPhone 4 用户可以使用此应用程序。但是,当我设置Depl
我是一名优秀的程序员,十分优秀!