美文网首页iOS学习笔记iOS Developer
开发中遇到的问题以及解决方法

开发中遇到的问题以及解决方法

作者: 2d899c5242bd | 来源:发表于2016-07-04 16:29 被阅读72次

    声明:文章条目旨在帮助想要快速解答问题的同学,虽然答案多是楼主自己用过的,但也只可以将解答作为一个参考。

    开发中遇到的问题以及解决方法
    • 野指针报错。由于没给error 赋值初始值,导致获取到了异常exc_badacces。(该条目没有按数字顺序因简书排版问题)
    NSError *error ;//正确写法NSError *error = nil
    NSDictionary *responseDict = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:&error];
    
    1. 用instruments 真机测试iOS9.2的设备提示,'unable to find service for the device',~> 重启设备,连接设备到MAC,在Xcode点击快捷键 command + i.
    2. 此类常量需放在全局符号表中,以便可以在定义该常量的编译单元之外使用。
    // In the header file
    extern NSString *const EOCStringConstant;
    // In the implementation file 
    NSString *const EOCStringConst = @"Value";
    
    1. NSCalendar component:fromDate: 在华盛顿时区,对形如date 2017-09-03 00:00:00 +0000转换后NSDateComponents day少一天。解决办法
            _curCalendar=[NSCalendar currentCalendar];
            [_curCalendar setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"GMT"]];//添加该代码(原先没加出现的bug)
            [_curCalendar setFirstWeekday:2];
    
    

    原因为

    2017-09-03 00:00:00 +0000 该时区为 +0000,而华盛顿时区晚 4小时,所以为9月2号(其实并不是bug, 9月2号并没有错,时区不同)。如果想要取出day 为3,所以设置NSCalendar timeZone为+0000 即为 "GMT",这是在告诉NSCalendar按+0000时区取 年 月 日。

    1. 仅支持竖屏的iPad app,在横屏状态下打开会先显示横屏,然后自动调整为竖屏。怎么破??? 该现象在iOS 9下很容易复现。
    2. "certificate expired or has been revoked".
      进入目录删除该账号对应的provising file即可。~/Library/MobileDevice/Provisioning\ Profiles
      参考链接stackoverflow
    3. 批量添加 "-fobjc-arc"
    $ sh xproj -n -s 需要添加编译参数的文件所在的文件夹 -t 目标工程文件
    
    # sh xproj -n -s ./ZXingObjC -t test.xcodeproj
    
    

    参考链接 传送门

    1. 禁止单个UIViewController旋转,但是又支持多个方向的需求。(iOS 6以后可按此方法)
    - (BOOL)shouldAutorotate {
        return NO;
    }
    
    - (UIInterfaceOrientationMask)supportedInterfaceOrientations {
        return UIInterfaceOrientationMaskLandscape | UIInterfaceOrientationMaskPortrait;
    }
    
    1. 隐藏状态条
    1.在info.plist 中设置Status bar is initially hidden为YES
    
    2.在info.plist中设置View controller-based status bar appearance 为NO
    
    1. 加急审核填写理由可以用中文吗? A:可以

    iOS 11 update

    1. iOS 11向用户相册保存图片crash. A:iOS 11 新增了key NSPhotoLibraryAddUsageDescription 保护相册隐私。

    文章会持续更新 ; ) 。

    相关文章

      网友评论

        本文标题:开发中遇到的问题以及解决方法

        本文链接:https://www.haomeiwen.com/subject/agacjttx.html