Archive

Archive for April, 2014

[iOS]7.1使用OTA部署APP出现Cannot install applications错误

April 28th, 2014 1 comment

iOS升级到7.1之后,之前一直使用正常的OTA部署的网站在安装APP时报出了以下错误

Cannot install applications because the certificate for www.example.com is not valid

而在7.0和之前的版本上没有这类问题,经过调查得知iOS7.1以后强制使用https安全连接方式才能正常部署,OTA部署用plist文件和ipa文件的URI必须以https方式开头,而7.1之前使用http即可,影响范围包括企业内部署使用的Ad-HOC和InHouse方式。
Read more…

Categories: 零敲碎打 Tags:

[iOS]UILabel取消自动Trim空格和换行等空白字符

April 16th, 2014 No comments

iOS7.0以后的UILabel会自动将Text行尾的空白字符全部去除,除了常见的半角空格(\0x20)和制表符(\t)之外,全角空格(\u3000)也被计算在内,甚至连多余的换行符(\r,\n)也被自动去除了。这一点虽然方便直接将控件赋值和无需取值后再trim,但是太过智能化了之后,往往不能满足一些本可以简单实现的需求。

Read more…

Categories: 语言编程 Tags: ,

[Android]使用Emma进行单体测试代码覆盖率分析

April 16th, 2014 3 comments

使用Eclipse或Google的ADT Bundle集成开发环境进行android单体测试时,受开发工具的局限,目前暂时无法直接使用常规的插件(例如:eclemma,Clover Eclipse Plugin等)来获取单体测试代码覆盖率。一般来说使用以下方法来实现代码覆盖率的查看。

方法1:改变测试代码继承父类为TestCase而非AndroidTestCase。这种方法只能解决不依赖于Android SDK源代码的单体测试。
方法2:使用Android SDK中集成的Emma功能,使用ant进行命令行编译与单体测试。通过以下脚本实现。
这里假设Eclipse的项目名称为MyProject,文件路径如下
./ #项目主目录
./src #APP项目主目录
./test #APP测试项目主目录

Read more…

Categories: 语言编程 Tags: , , ,

[iOS]CoreGraph在64位模式下与NSString drawInRect冲突

April 15th, 2014 No comments

iOS SDK支持64bit后,大部分代码可以直接无缝转换并通过编译,但是这些代码在运行时可能会有所差异,所以开发时需要特别注意,Cocoa-Charts在开发过程中就发现了这类问题。
问题现象:
CoreGraph绘图方法与NSString的drawInRect方法在64Bit下存在着冲突,64Bit下调用drawInRect之后会导致CGContext中的path被清空从而使CGContextStrokePath不进行任何绘图操作,而32Bit下没有任何问题。

Read more…

[iOS]iPad和iPhone版本xib文件相互转换

April 15th, 2014 No comments

iPhone版本APP开发完成后需要再开发iPad版本的APP,需要把iPhone版本的xib文件添加到iPad项目中去,但是Xcode中iPhone和iPad使用的xib格式不能完全互换,此时需要转换xib的文件内容。

分析iPad和iPhone的xib文件,可知两者之间的区别,直接使用source方式打开xib文件,检索替换并保存即可。
以下是iPad和iPhone的xib文件之间的区别,请注意区分xib的文件版本。
Read more…

Categories: 语言编程 Tags: