IOS中 自定义访问用户Location时的提示信息

本文介绍在iOS应用中如何正确请求用户的位置权限,并说明了不同iOS版本间实现方式的变化。从iOS 3.2到iOS 6.0,申请地理位置访问权限的方式有所调整,包括废弃了CLLocationManager的purpose属性,转而在Info.plist文件中添加NSLocationUsageDescription。

IOS中,必须经过用户同意才能访问用户的地理位置(CLLocationManager),这一过程是由系统控制的,在第一次请求时为自动询问用户,如果能够向用户展示自己使用坐标的原因,而非恶意访问,用户体验会好很多。

CLLocationManager有一个purpose的属性,通过它就可以在请求中加上自己的信息,这个属性从ios 3.2开始就有了。

    CLLocationManager *_locmanager = [[CLLocationManager alloc] init];
    _locmanager.delegate = self;
    _locmanager.purpose = @"请允许访问你的位置,不然,没法干了。";
    [_locmanager startUpdatingLocation];

不过,purpose这个属性在ios 6.0中已经被deprecated了。更好的办法是在info.plist中添加NSLocationUsageDescription这个键,在XCode里显示的是“Privacy - Location Usage Description”。ios 6中会读这个值,而不需要添加purpose了。

与些类似的还有NSCalendarsUsageDescription 用于访问Calendar, NSContactsUsageDescription 用于访问Contacts,NSPhotoLibraryUsageDescription 用于访问相册,NSRemindersUsageDescription用于访问Reminder。

 

转载于:https://www.cnblogs.com/E7868A/archive/2013/01/10/2850886.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值