`
修博龙泉
  • 浏览: 317035 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

ios:升级到Xcode4.5.1的警告处理

 
阅读更多
Xcode升级到4.5后,出现了一堆的Warning.网上搜了一些办法,总结一下。
#if __has_feature(objc_arc) && __clang_major__ >= 3
#define PP_ARC_ENABLED 1
#endif // __has_feature(objc_arc)

#if PP_ARC_ENABLED
#define PP_RETAIN(xx) (xx)
#define PP_RELEASE(xx)  xx = nil
#define PP_AUTORELEASE(xx)  (xx)
#else
#define PP_RETAIN(xx)           [xx retain]
#define PP_RELEASE(xx)          [xx release], xx = nil
#define PP_AUTORELEASE(xx)      [xx autorelease]
#endif

1:Jsonkit中的
Direct access to objective-c's isa is deprecated in favor of object_setClass() and object_getClass()
object->isa 替换为 object_getClass(object)
keyObject->isa 替换为 object_getClass(keyObject)
(id)keys[idx]->isa 替换为 object_getClass((id)keys[idx])
format specifies type 'unsigned long' but the argument has type 'nsuinteger' (aka 'unsigned int')
给变量增加(unsigned long)进行类型转换

2:md5加密(iOS SDK中自带了CommonCrypto)
Implicit declaration of function 'CC_MD5' is invalid in C99
[plain] view plaincopy
#define CC_MD5_DIGEST_LENGTH 16 
+(NSString *)MD5HashForString:(NSString *)input { 
    const char *cStr = [input UTF8String]; 
    unsigned char result[CC_MD5_DIGEST_LENGTH]; 
    CC_MD5(cStr, strlen(cStr), result); 
    return [NSString stringWithFormat: @"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x", 
            result[0], result[1], result[2], result[3], 
            result[4], result[5], result[6], result[7], 
            result[8], result[9], result[10], result[11], 
            result[12], result[13], result[14], result[15]]; 

引入函数定义的头文件
#import <CommonCrypto/CommonDigest.h>

3:ASIDataDecompressor中的警告
format specifies type  'short' but the  argument has type 'int'
在+ (NSError *)deflateErrorWithCode:(int)code 和 +(NSError *)inflateErrorWithCode:(int)code中
[NSString stringWithFormat:@"Compression of data failed with code %hi",code] 中
将code改为 (short)code,类型转换

4:Reachability中警告
Using 'stringWithString:' with a literal is redundant
statusString = [NSString stringWithString: @"Not Reachable"];
改为:statusString = @"Not Reachable";
5.format specifies type 'id' but the argument has type 'const char *'

NSCAssert(NO, @"Unhandled error encountered during SAX parse. msg is %@", msg);
改为:NSCAssert(NO, @"Unhandled error encountered during SAX parse. msg is %@", [NSString stringWithUTF8String:msg]);

做ios网络开发的肯定会用到苹果的官方库Reachability。ios5发布了,将项目升级到ios5的过程发一个warning:
+ (Reachability*) reachabilityWithAddress: (const struct sockaddr_in*) hostAddress;

Declaration of 'struct sockaddr_in' will not be visible outside of this function
解决办法很简单,Reachability.h中最前面添加头文件:#import <netinet/in.h>
ios5来了,要做的事情真多,尤其是一些在ios4上好使的效果不好使了。。。

转:http://blog.csdn.net/xiaobo16/article/details/8102018
分享到:
评论

相关推荐

    Xcode 4.5.1 Release Notes

    - **修复了偶尔提交应用到iOS App Store时Xcode挂起的问题**(问题编号:12482847):这个问题的修复简化了开发者向App Store提交应用的过程,提高了工作效率。 ### 结论 Xcode 4.5.1 及其后续版本4.5.2通过一系列...

    iOS 编程基础:Swift、Xcode 和 Cocoa 入门指南

    通过阅读本书,你将学习 Swift 面向对象的概念、理解如何使用 Apple 的开发工具,以及探索 Cocoa 是如何提供 iOS 应用所需的底层功能的。

    iOS编程基础:Swift、Xcode和Cocoa入门指南 EPUB

    iOS编程基础:Swift、Xcode和Cocoa入门指南 (O’Reilly精品图书系列) iOS编程基础:Swift、Xcode和Cocoa入门指南 (O’Reilly精品图书系列) iOS编程基础:Swift、Xcode和Cocoa入门指南 (O’Reilly精品图书系列)

    Beginning iOS Storyboarding- Using Xcode 高清pdf

    根据给定的文件信息,可以提炼出以下知识点: ...对于那些对iOS开发感兴趣的人来说,这份文档提供了一个很好的起点,帮助他们理解从设计到实现的整个开发流程,并且意识到遵守知识产权法律的重要性。

    iOS编程基础:Swift、Xcode和Cocoa入门指南

    资源名称:iOS编程基础:Swift、Xcode和Cocoa入门指南资源太大,传百度网盘了,链接在附件中,有需要的同学自取。

    IOS11SDK xcode8调试IOS11

    xcode8调试IOS11 Shift+Command+G进入 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport 把解压后的文件复制进去。

    iOS 11 App Development Essentials Learn to Develop iOS 11 Apps with Xcode 9

    包括创建iOS应用程序的用户界面、修改组件属性、向用户界面添加对象、在Xcode 9中构建和运行iOS 11应用程序、在物理iOS设备上运行应用程序、管理和模拟设备、启用网络测试以及处理构建错误等。 5. Xcode 9游乐场...

    12.1的ios的xcode包

    【标题】"12.1的iOS的Xcode包"主要指的是针对苹果操作系统iOS 12.1版本的开发工具Xcode的一个特定版本。Xcode是Apple官方为开发者设计的一款集成开发环境(IDE),用于创建iOS、macOS、watchOS以及tvOS的应用程序。...

    IOS 10 Programming Fundamentals with Swift: Swift, Xcode, and Cocoa Basic

    IOS 10 Programming Fundamentals with Swift: Swift, Xcode, and Cocoa Basics by Matt Neuburg English | ISBN: 1491970073 | 2016 | PDF | 518 pages | 7 MB Move into iOS development by getting a firm ...

    iOS9.3.2,iOS10(Xcode_8_beta6)SDK支持xocde5、6

    本资源集中的标题和描述提到了iOS9.3.2和iOS10的SDK,以及它们与Xcode 5、6的兼容性,这对于那些希望在旧版本Xcode上开发或调试新版本iOS应用的开发者来说非常有价值。 首先,iOS9.3.2 SDK是Apple为开发针对iOS...

    Xcode iOS11.0 配置包

    总的来说,Xcode iOS 11.0配置包为那些希望在不升级Xcode的前提下调试iOS 11.0设备的开发者提供了便利。然而,这并不意味着可以完全忽视官方更新,因为持续跟进Apple的开发工具和操作系统更新,是确保应用质量和兼容...

    iOS 15.0的安装包,在xcode中添加后,可以支持手机的真机调试

    通常,当你更新Xcode到最新版本时,它会自动包含最新的iOS SDK。但是,如果你正在使用的Xcode版本较旧,或者需要特定版本的SDK,你可以通过以下步骤操作: 1. **下载iOS SDK**:苹果开发者网站提供了不同版本的...

    xcode支持iOS15.2和iOS15.4

    Xcode是Apple官方推出的集成开发环境(IDE),主要用于开发iOS、iPadOS、macOS、watchOS和tvOS等平台的应用程序。在这个特定的情境中,我们关注的是Xcode对iOS 15.2和iOS 15.4版本的支持。 首先,iOS 15.2是苹果...

    iOS 15.1 xcode包

    3. **Live Text**:iOS 15.1支持实时文本识别,可以在照片和相机取景器中直接选取和操作文本,开发者可以集成这一功能,提升应用的文本处理能力。 4. **HealthKit**更新:健康应用的API得到了扩展,增加了对睡眠...

    IOS开发Git在Xcode开发环境下的使用

    ### iOS开发Git在Xcode开发环境下的使用 #### Git简介 Git是一种分布式版本控制系统,它允许开发者们在软件开发过程中追踪代码的变化历史、合并不同版本的更改并管理多个分支。对于iOS开发而言,掌握Git的基本操作...

    IOS APP开发 微博 Xcode

    在iOS应用开发中,微博应用的构建是一个典型的案例,它涉及到多个关键技术点,包括使用Xcode作为集成开发环境(IDE),Objective-C或Swift编程语言,以及Apple的UIKit框架。下面我们将详细探讨这些知识点。 首先,...

    Xcode iOS 16真机调试包 开发调试

    1. **新功能与API**:iOS 16引入了许多新特性,例如改进的通知系统、Live Activities、新的隐私保护措施等。开发者需要学习和理解这些新功能,并根据应用需求选择是否集成或更新相关API。 2. **设计更新**:苹果...

    iOS 11 Programming Fundamentals with Swift Swift, Xcode, and Cocoa Basics azw3

    iOS 11 Programming Fundamentals with Swift Swift, Xcode, and Cocoa Basics 英文azw3 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除

Global site tag (gtag.js) - Google Analytics