使用Xcode6和IOS8SDK以后遇到的问题

使用Xcode6和IOS8SDK以后遇到的问题

转载:http://www.cnblogs.com/dagehaoshuang/p/4040618.html
  1. 定位。苹果在IOS8里面修改了定位授权协议,也就意味着你原来的app在ios8上很可能无法定位。目前最好的办法就是在app启动的时候调用IOS8的定位授权API来获取用户的授权,这样就不要在其他地方做修改了。
     if (OSVersion>=8.0) {
            CLLocationManager *clloc = [[CLLocationManager alloc] init];
            [clloc requestAlwaysAuthorization];
     }

     除了以上的代码,还需要在app的plist文件里面添加两个属性NSLocationAlwaysUsageDescription,NSLocationWhenInUseDescription。这两个属性的value你可以自定义也可以不填。

  2. 消息推送API的修改。原来我们只需要调用registerForRemoteNotificationTypes这个方法就可以了,但是在IOS8中需要先配置然后再注册,也就是先调用registerUserNotificationSettings然后在调用registerForRemoteNotificationTypes方法。
    复制代码
    if(OSVersion>=8.0){//8.0以后使用这种方法来注册推送通知
            UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeBadge|UIUserNotificationTypeSound|UIUserNotificationTypeAlert categories:nil];
            [[UIApplication sharedApplication] registerUserNotificationSettings:settings];
            
            UIRemoteNotificationType myTypes = UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeSound;
            [[UIApplication sharedApplication] registerForRemoteNotificationTypes:myTypes];
        }else{
            [[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeBadge)];
    }
    复制代码

     

  3. 在IOS8以前苹果允许我们为某个自定义的类添加description属性,但是在IOS8以后就不可以了。只能通过重写description的get方法来达到原来的目的了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值