![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
iOS开发
williamzhang_zz
这个作者很懒,什么都没留下…
展开
-
Mac下如何切片HLS流
用Mac的自带工具切片HLS所需的流原创 2015-09-14 11:11:43 · 5074 阅读 · 1 评论 -
iOS的单例模式(singleton)
单例模式的实现方式原创 2014-06-26 22:51:29 · 13209 阅读 · 3 评论 -
iOS类实现里面怎么用属性
在类的实现里面属性的使用原创 2014-05-23 10:47:32 · 5853 阅读 · 0 评论 -
iOS6和iOS7代码的适配(6) —— NSLocalizedString
NSLocalizedString在iOS6和iOS7下地表现是不同的。原创 2014-05-10 17:47:18 · 3729 阅读 · 0 评论 -
iOS的动态库
iOS是不支持动态库的原创 2014-04-09 22:02:00 · 7578 阅读 · 0 评论 -
Storyboard、Nib文件和代码来实现UI的利与弊
很清楚,这就是iOS里面两种可视化UI的方法。加上全部用代码来实现UI,总共有三种方法可以来实现。原创 2014-03-26 13:29:20 · 6371 阅读 · 2 评论 -
iOS设备是否越狱的判断代码
苹果是非常看重产品的安全性的,所以给用户设计了一套复杂的安全机制。这让喜爱自由,崇尚一切开放的程序员们极度不爽,于是越狱就成了苹果和黑客们反复斗法的场所。总体来说,越狱可以让我们随意安装、共享应用,但确实也降低了设备的安全性,会给一些恶意应用提供方便之门。 有时我们的应用希望知道安装的设备是否已经越狱了,显然,苹果官方不会给出解决方案来的,那么我们怎么办呢?因为越狱后会自动安装cyd原创 2014-03-13 12:33:13 · 30277 阅读 · 0 评论 -
杂谈iOS7.1
苹果推出了iOS7.1,当然是第一时间升级。原创 2014-03-12 14:53:51 · 1962 阅读 · 0 评论 -
iOS的category和protocol
很多时候我们需要扩展一下现有的类,增加一点功能。如果有源码,修改一下即可,如果是第三方的库,就要麻烦一些。在C++中我们使用类继承的方法来实现,在ObjectiveC中当然也可以这么做,不过ObjectiveC还提供的一种简单实用的方法,就是category,对于一些很微小的功能增加,或者就是增加一个方法方便使用,用category是最轻量级的。原创 2014-02-22 10:46:58 · 3831 阅读 · 0 评论 -
iOS中如何呼出另一个应用
我们经常会遇到在一个应用里面呼出另一个应用的需求,比如在文档里面点击地址,调用safari来打开网页;比如在文件浏览器里面点击某种文件,自动激活一个应用来打开文件。 iOS里面对于这样的需求使用URL来实现,把其他的应用看成一种资源,本质上就是调用系统资源。 我们有两个应用App1和App2,在App2里面呼出App1,那么首先要配置App1,让系统认识App1原创 2014-02-07 17:48:39 · 11709 阅读 · 2 评论 -
iOS多线程系列(3)
在2011的WWDC上,苹果推出了GCD,从此多线程增加了一种新的方法。GCD要求运行在iOS4.0版本以上或者OS X10.6版本以上。GCD是Grand Central Dispatch的缩写,是一组用于实现并发编程的C接口。GCD是基于Objective-C的Block的特性开发的,基本的业务逻辑和NSOperation很像。都是添加一个任务到一个队列,由系统来负责线程的生成和调度。因为直接原创 2014-02-03 23:23:03 · 7590 阅读 · 0 评论 -
iOS多线程系列(2)
前面了iOS的NSThread方法来实现多线程,这篇就简单的讲讲NSOperation和NSOperationQueue。 NSOperation是一个抽象类,定义一个要执行的任务。NSOperationQueue是一个任务队列,帮助对NSOperation所定义的任务进行管理。当任务加入到任务队列后,会自动按照优先级和依赖关系自动运行。原创 2014-01-29 21:33:04 · 1717 阅读 · 0 评论 -
iOS多线程系列(1)
多线程这个概念的接触是蛮早的时候了,当时还是单核单CPU的时候,Thread这个概念已经出现了,记得较多的是时间片轮流,线程可以优先级抢占,但一次只能运行一个线程,实际上多线程是不能真正并行处理的,只是宏观上表现的多线程在齐头并进。现在硬件进步了很多,多核的CPU时代来临了,于是线程开始了真正意义上的并行处理,多线程也作为越来越重要的一个部分需要掌握。原创 2014-01-28 11:44:09 · 2858 阅读 · 0 评论 -
iOS6和iOS7代码的适配(5)——popOver
popOver这个空间本身是iPad only的,所以iPhone上见不到,我记得微信上有个这样的弹出框,有扫一扫等几个菜单项,估计这是腾讯自己实现的,用于菜单的扩展。 popOver从iOS6到iOS7最大的变化还是扁平化,除此之外是背景改成了白色。如果你的popOver里面是一个tableView的话,那么自动会是一个半透明的显示,如果是自定义的一些内容,推荐也采用半透明的显原创 2014-01-26 10:38:35 · 4057 阅读 · 0 评论 -
iOS事件拦截处理
前面分析了一通iOS事件的分发,主要介绍了事件如何找到处理的view,又是如何按照responder chain逐级传递的。这篇文章主要介绍iOS事件的拦截以及特殊处理。原创 2014-01-26 13:24:37 · 14238 阅读 · 1 评论 -
iOS的事件分发
移动平台原创 2014-01-25 20:29:47 · 10948 阅读 · 0 评论 -
iOS运行时工具-cycript
cycript是大神saurik开发的一个非常强大的工具,可以让开发者在命令行下和应用交互,在运行时查看和修改应用。原创 2014-06-11 22:30:56 · 18518 阅读 · 1 评论 -
iOS运行时与method swizzling
iOS中method swizzling的介绍原创 2014-05-29 22:36:15 · 8917 阅读 · 3 评论 -
iOS中数组遍历的方法及比较
数组遍历是编码中很常见的一种需求,我们来扒一拔iOS里面都有什么样的方法来实现,有什么特点。原创 2014-06-17 15:51:04 · 57752 阅读 · 1 评论 -
iOS提交遇到的新问题
iOS提交说没有支持64位的一种新情况原创 2015-09-01 14:28:31 · 1300 阅读 · 1 评论 -
Mac下删除安装的pkg
在Mac下删除pkg安装的文件原创 2015-08-13 22:55:20 · 29339 阅读 · 3 评论 -
xCode中如何保存自己的代码块
xCode中保存自己常用的代码块原创 2015-06-07 22:37:46 · 12211 阅读 · 5 评论 -
iOS中如何添加自定义的字体
苹果对于开发,确实在细节方面下了很大的功夫,不过无论一个平台下多大的功夫,仍然会有些需求是无法涵盖的,比如字体吧。我们的应用为了能更加个性化,会需要不同的字体,有时候有些字体是非常特殊的,甚至是购买的,那么这些字体如何加到项目中去呢?原创 2015-06-06 10:19:22 · 9547 阅读 · 0 评论 -
实战iOS应用从32位升级到64位
应用进行arm64升级时的一些注意项原创 2015-01-08 16:41:27 · 11860 阅读 · 2 评论 -
IOS_月薪10k以上知识大总结
1获取系统语言设置 NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults]; NSArray *languages = [userDefault objectForKey:@"AppleLanguages"]; NSString *preferredLang = [languages转载 2014-11-07 09:29:49 · 11231 阅读 · 0 评论 -
Xcode的Architecture参数的意思
Xcode中Architectures、Valid Architectures和Build Active Architecture Only的意思原创 2014-11-14 23:02:09 · 7965 阅读 · 1 评论 -
iOS上应用如何兼容32位系统和64位系统
应用如何兼容32位系统和64位系统原创 2014-11-13 22:56:29 · 33664 阅读 · 1 评论 -
iOS下Symbol not found: ___sincosf_stret错误
Symbol not found: ___sincosf_stret错误原创 2014-10-21 21:53:44 · 3112 阅读 · 0 评论 -
iOS历史回顾(iOS1~iOS8)
历史对比原创 2014-09-27 23:37:07 · 18528 阅读 · 0 评论 -
如何使用TestFlight进行Beta测试
TestFlight的服务以及如何使用苹果提供的TestFlight服务。原创 2014-09-23 17:42:54 · 48297 阅读 · 1 评论 -
从iOS证书申请到签名文件生成
这里简单的描述一下在苹果后台Provisioning入口如何申请证书,注册设备,生成AppID到最终生成签名文件的。原创 2014-09-21 22:20:57 · 26224 阅读 · 1 评论 -
iPhone 6 屏幕揭秘
几天前,Apple发布了iPhone 6 Plus. 新的iPhone大幅改变了图像在屏幕上渲染的方式。我们做了一个图表进行详细分析。转载 2014-09-21 17:11:33 · 1567 阅读 · 0 评论 -
iOS应用截屏
iPhone自从推出后就自带了截屏功能,简单而易用,所以应用就没什么截屏的需求了,不过有些时候我们还是会遇到这个需求。比如,我们开发了一个播放器,用openGL进行video render,此时直接截屏有可能有OSD叠加内容,所以希望能截完全是视频的帧,这时就需要应用自己来实现了。原创 2014-08-11 14:52:02 · 7272 阅读 · 3 评论 -
iPhone配置实用工具介绍
苹果提供了iTunes工具给我们操作iOS设备上的内容,可以安装应用、同步照片、音乐等等。不过iTunes使用比较麻烦,不太方便,第三方的iTools等工具是我们比较常用的。不过对iOS应用开发者来说,我们常常需要发布Adhoc版本,这些版本只能装在指定的一些设备里面,和通过AppStore发布的应用是不一样的,有时会发生iTunes/iTools死活安装不上应用的情况。 这里要介绍原创 2014-09-20 23:31:30 · 39909 阅读 · 1 评论 -
iOS中的retainCount
我们都知道iOS中采用引用计数的技术来管理内存,当一个对象没有任何一个地方引用的时候会自动释放,此时的retainCount为0,而且提供了一个-(NSInteger)retainCount的方法来获得对象当前的持有数。 这个概念清楚而明确,不过,让我们看两段代码: NSNumber *number = [NSNumber numberWithInt:1]; NSLo原创 2014-01-13 22:21:34 · 13594 阅读 · 1 评论 -
GStreamer iOS教程5——一个完整的播放器
1. 目标 本次教程主要是演示一下在iOS平台上GStreamer都能实现什么样的功能,具体的知识和iOS教程4相比没太多增加。 这个应用仅仅是演示了播放器的一些功能,并不是一个完整的应用,不能用于上传AppStore。2. 介绍 前一个教程已经实现了基本的播放器,这里只是简单的增加了一些周边功能。最主要的是增加了播放媒体的选择和在播放时不允许屏幕保护翻译 2013-12-27 10:04:38 · 2833 阅读 · 1 评论 -
iOS下的unit test——概述
这2周来花了点时间看了一下iOS下的Unit Test的工具和使用。Unit Test这个东西应该说都不陌生了,无数的大牛语重心长的告诫大家要尽早做Unit Test,它能保证你产品的质量以及节约你开发的时间。 iOS下有现成的已经集成在xCode中的OCUnit,也有第三方的GHUnit。为了使用好Unit Test工具,还需要OCHamcrest/Mockito等一些工具的支持。原创 2013-10-22 22:46:50 · 4566 阅读 · 0 评论 -
NSPredicate类的使用
NSPredicate这个类有点类似于数据库中的查询,是用于在一批内容中查询符合条件的子集,中文翻译成“谓词”。这个翻译实在让我感觉很别扭,虽然明知道和谓语这个词语没什么关系,但确实总让我感觉这是一个句子里面的成分。 我们有些时候会有一个对象的数组或者集合,然后希望从里面找出符合条件的集合,类似于做一次过滤操作。比如我有一批照片,希望能找出所有某一天里面拍摄的内容。原创 2013-10-29 22:41:35 · 4420 阅读 · 0 评论 -
NSNumber,NSValue和NSData
我们在编码中,很多时候需要将C里面原生的数据封装成对象,这样可以用NSDictionary或者NSArray来存取访问。尤其是一些做适配的情况下,这种封装是不可避免的。Objective-C提供了不少类可以帮助我们,比较常见的是NSNumber,NSValue和NSData。NSNumber主要是用来封装ANSI C内置的数据,比如char,float,int等等。这个类提供了一批原创 2013-10-28 14:17:29 · 8054 阅读 · 0 评论 -
iOS下的unit test——GHUnit
GHUnit是一个开源的objective-c的unit test框架,他比起OCUnit来说,配置简单一些,没有Logic Tests和Application Tests的分别,但使用起来需要第三方库GHUnitIOS.framework的支持。 GHUnit有GUI的界面,并非仅仅能看到log文件,比较直观,编写test case和OCUnit没有太多的区别,个人觉得比OCUni原创 2013-10-26 20:33:20 · 3666 阅读 · 1 评论