- 博客(37)
- 资源 (6)
- 收藏
- 关注
原创 iOS 开发常用的开源组件
GitHub里面有大量优秀的第三方框架,而且License对商业很友好。1.MantleMantle能简化Cocoa和CocoaTouch应用的model层。简单点说,程序中经常要进行网络请求,请求到得一般是json字符串,一般会建一个Model类来存放这些数据。这就要求编写一系列的序列化代码,来把json转换为Model。这很费时间,容易错,不容易修改。Mantle很好的解决了这个问题,
2016-01-15 09:46:06
646
原创 git 终端命令
使用终端的命令行时,首先我们要有一定的linux命令行知识。实际使用中经常用到的比较少,这里只介绍一些必要的。参考链接;http://www.renfei.org/blog/mac-os-x-terminal-101.htmllinux基础命令;sudo -s 获取绝对用户权限cd xxx 进入xxx目录ls (-a/-A) 显示当前路径下所有文件(隐藏的)
2016-01-05 19:29:48
1600
原创 Cocoapods安装及使用
1、CocoaPods安装是基于ruby环境的,所以要安装CocoaPods先要安装Ruby环境,国内不能直接安装,只能通过VPN或淘宝的Ruby镜像来访问。 通过Ruby镜像来访问在终端输入以下命令: gem sources --remove https://rubygems.org/ 等有反应后,然后输入 gem
2015-12-15 10:01:05
577
原创 Xcode升级之后一些插件不能用的解决办法
1.打开xcode插件所在的目录:~/{当前用户名}/library/Application\ Support/Developer/Shared/Xcode/Plug-ins2.选择已经安装的插件例如VVDocument,右键点击show package contents,3.找到info.plist 文件,找到DVTPlugInCompatibilityUUIDs的项目,4.
2015-12-15 09:37:29
389
原创 ASCII、Unicode、GBK和UTF-8字符编码的区别联系
前言:这篇文章绝对值得推荐,之前一直对字符编码很模糊,看完这篇风趣的文章,并稍加总结,该明白的都基本明白了,感谢作者的分享DenGo:http://dengo.org/archives/901很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物。他们看到8个开关状态是好的,于是他们把这称为”字节“。再后来,他们又做了一些可以处理这些字节的
2015-12-04 14:33:42
361
原创 邮箱开发(二) - 各大主流邮箱服务器信息和端口号
网易163免费邮箱相关服务器信息:服务器名称服务器地址SSL协议端口号非SSL协议端口号IMAPimap.163.com993143SMTPsmtp.163.com465/99425POP3pop.163.com995110
2015-12-04 11:00:30
16884
原创 邮箱开发(三) - MailCore2 详细使用
简介MailCore是一个第三方的邮件SDK,支持POP和IMAP 方式接收邮件,以及smtp邮件发送。安装1、从github上拉取代码git clone https://github.com/MailCore/mailcore2/2、添加到项目中把build-mac/mailcore2.xcodeproj拖进工程3、在项目中添加静态库链接选中工程--TARGETS
2015-12-02 16:55:40
16634
5
原创 邮箱开发(一) - 邮箱收发协议
一、什么是POP3、SMTP和IMAP协议POP3POP3是Post Office Protocol 3的简称,即邮局协议的第3个版本,它规定怎样将个人计算机连接到Internet的邮件服务器和下载电子邮件的电子协议。它是因特网电子邮件的第一个离线协议标准,POP3允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时删除保存在邮件服务器上的邮件,而POP3服务器则是
2015-11-25 17:13:54
3495
原创 iOS开发-证书配置
一款App在别人的机器上开发和发布,现在迭代更新和开发需要在一台新mac机上开发和发布。(使用同一个开发者账号)问题:1.在新mac机器上开发并导入真机测试,是不是需要从别人的机器上面导处开发者证书、开发者授权文件和开发密钥导入到新mac机器上才能开发?2.程序迭代开发完成,App上传苹果应用商店的时候是不是还需要用老机器发布才可以才能保证App更新?能不能从老机器上面把发布证书导入到
2015-11-04 09:33:46
373
原创 Model定义
前言:一般我们会将服务器返回的数据model化一个类,用于承载数据1、变量统一写成属性变量,字符串非空处理(重写get方法)2、一般需要提供初始化方法和类方法(多功能实例化)3、每个类都有description方法,用于打印一个对象信息(重写desription方法)默认情况下如果我们不重写description方法,输出内容是类名和地址,例如Person则输出“”。
2015-10-27 17:20:28
689
原创 iOS 第三方开源库的吐槽和备忘
做iOS开发总会接触到一些第三方库,这里整理一下,做一些吐槽。目前比较活跃的社区仍旧是Github,除此以外也有一些不错的库散落在Google Code、SourceForge等地方。由于Github社区太过主流,这里主要介绍一下Github里面流行的iOS库。参考文献:http://blog.ibireme.com/2013/09/23/ios-third-party-libs/
2015-10-27 11:09:41
407
原创 iOS应用程序的生命周期
对于iOS应用程序,关键是要知道你的应用程序是否正在前台或后台运行。由于系统资源在iOS设备上较为有限,一个应用程序必须在后台与前台有不同的行为。
2015-10-27 10:44:30
386
原创 iOS开发-文件管理(一)
一、iOS沙盒机制每个app都有自己的沙盒目录,iOS应用程序只能对自己创建的文件进行读写操作,包括图片、音视频、plist文件、sqlite等资源文件。每个应用程序都有自己独立的存储空间(沙盒目录)一般程序之间不可象湖访问模拟器沙盒位置/Users/lihuaguang/Library/Developer/CoreSimulator/Devices/3DAC7
2015-10-23 10:32:06
1670
转载 iOS时间那点事
此文出自:http://my.oschina.net/yongbin45/blog/150114NSDateNSDate对象用来表示一个具体的时间点。NSDate是一个类簇,我们所使用的NSDate对象,都是NSDate的私有子类的实体。NSDate存储的是GMT时间,使用的时候会根据 当前应用 指定的 时区 进行时间上的增减,以供计算或显示。可以快速地获取
2015-09-15 17:35:27
356
原创 iOS 设置App版本号
普通情况下,我们只使用version即可,设置为"1.0", "1.1", "2.0" , etc,但如果你要使用两个版本号时候,需要将build设置为1,2,3...等递增的整数,有什么用呢? version我们可以通过App Store、itunes或其它软件看到,是给用户看的,而build是我们在团队开发中内部只用的,只有我们自己可以看到。比如团队打算发布1.0版本的时候,会发布很多
2015-08-20 10:39:37
1086
原创 iOS开发ARC下内存管理
ARC的修饰符ARC主要提供了4种修饰符,他们分别是:__strong,__weak,__autoreleasing,__unsafe_unretained。1、__strong表示引用为强引用。对应在定义property时的"strong"。所有对象只有当没有任何一个强引用指向时,才会被释放。注意:如果在声明引用时不加修饰符,那么引用将默认是强引用。当需要释放强引用指
2015-06-23 17:25:03
552
原创 IOS开发笔记(2)页面之间传递数据几种方式比较
今天分享一下页面之间传值的几种方式1、@property属性这个不用多说了吧,当页面A 跳转到页面B,在class B中声明属性@property (nonatomic, copy) NSString *name; 初始化BFirstViewController *firstVC = [FirstViewController new];firstVC.name = @"
2015-06-05 18:03:44
739
转载 iOS UDP 广播
感谢作者: 清澈Saup1.前言 什么是UDP协议广播机制? 举一个例, 例如在一群人群中,一个人要找张三,于是你向人群里大喊一声(广播):“谁是张三” 如果它是张三,它就会回应你,在网络中也是一样的。 UDP广播机制的应用场景: 若干个客户端,在局域网内(不知道IP的情况下) 需要在很多设备里需找特有的设备,比如服务器,抑或
2015-04-17 18:53:51
572
转载 IOS中的多核并发编程GCD
Grand Central Dispatch (GCD)是Apple开发的一个多核编程的解决方法。dispatch queue分成以下三种:1)运行在主线程的Main queue,通过dispatch_get_main_queue获取。/*!* @function dispatch_get_main_queue** @abstract* Returns the
2015-03-06 18:02:39
441
转载 iOS常用动画
//// CoreAnimationEffect.h// CoreAnimationEffect//// Created by VincentXue on 13-1-19.// Copyright (c) 2013年 VincentXue. All rights reserved.// #import
2015-03-03 14:43:10
375
原创 优秀程序员必备素质
程序员(英文Programmer)是从事程序开发、维护的专业人员。一般我们将程序员分为程序设计人员和程序编码员,但两者的界限并不非常清楚,特别是在中国。作一个真正合格的程序员,应该具有的素质。 1:团队精神和协作能力 团队精神和协作能力是作为一个程序员应具备的最基本的素质。软件工程已经提了将近三十年了,当今的软件开发已经不是编程了,而是工程。独行侠可以写一些程序也能赚钱发财,但是进入研发团队
2015-02-26 17:39:47
829
原创 MAC下使用GitHub建立属于自己的代码仓库
看到很多牛人都有自己的博客专栏,有写博客的习惯,分享他们的经验,很是钦佩!于是,自己也想有空时写写博客,向大虾们靠近,本人才疏学浅,经验浅陋,写的不好或不对的地方,欢迎大家指点,大虾勿喷,哈哈!
2015-01-16 10:16:26
1480
2
转载 读书
读书要有一个目标。休闲、学业、打发时间等等都可以作为读书的目标。但是,不同的目标决定了读不同的书,有不同的读书方法。我是一个学生,这里我只说为学业读书。不能漫无目的的读书,也不能什么书都读,也不能想怎么读就怎么读。如果像无头的苍蝇那样读再多本书也会有一无所获的感觉。我以前读书就是这样,在大学本科四年的时间里,我在修完所有的课程之外,又不分你我的读了一百多本的课外书,但是到现在我没感觉自己有什么大的
2014-07-07 13:02:20
577
原创 iOS中js与objective-c的交互
1、首先是objective-c调用js中的代码,可以用UIWebview中的一个方法 stringByEvaluatingJavaScriptFromString:后面接的是js中的方法名。这个函数的返回值就是所调用js方法 的返回值。
2014-06-25 10:48:46
9331
1
转载 armv6, armv7, armv7s和i386
出现这类问题一般与静态库有关。i386是代表模拟器,显示i386错误说明静态库不支持模拟器,只支持真机。armv6, armv7, armv7s是ARM CPU的不同指令集,原则上是向下兼容的。如iPhone4S CPU支持armv7, 但它同时兼容armv6,只是使用armv6指令可能无法充分发挥它的特性。同理iPhone5 CPU支持armv7s,它虽然也兼容armv7,但是却
2014-06-23 09:27:08
2165
转载 利用 itms-services 协议,通过网站来发布ipa应用
苹果允许用itms-services协议来直接在iphone/ipad上安装应用程序,我们可以直接生成该协议需要的相关文件,这样产品经理和测试都可以直接在设备上安装新版的应用:需要两个文件,一个是html,另一个是plist。文件html:Install TU/e App
2014-04-14 12:40:13
1082
转载 一些有关图像处理的代码片段(抓图、倒影、圆角)
捕捉屏幕截图CALayer实例使用Core Graphics的renderInContext方法可以将视图绘制到图像上下文中以便转化为其他UIImage实例。前提先#import + (UIImage *) imageFromView: (UIView *)theView { // draw a view's contents into an image context
2013-11-25 14:01:51
610
原创 IOS开发笔记(1)手机断网的情况下可以从本地读取数据
方法一:一般将服务器第一次返回的数据保存在沙盒里面。这样在手机断网的情况下可以从本地读取数据了。1.保存到沙盒的代码:[plain] view plaincopy+ (void)saveCache:(int)type andID:(int)_id andString:(NSString *)str; { NSUse
2013-03-26 10:35:11
1044
原创 企业账号申请
企业账号申请 一、申请DUNS码(华夏邓白氏码)申请地址:https://developer.apple.com/ios/enroll/dunsLookupForm.action 1、填写申请的资料手机号要填写对了,人家要打电话来跟你核实的。这些填写的信息最好备份好,以后可能会用到的,填完提交后很快收到邮件。剩下就等着电话核实了。 2、电话确认基本上第二天就能接到电话,客服是中国人,和你核对确认信
2013-03-26 09:19:30
2480
转载 iOS学习之sqlite的创建数据库,表,插入查看数据
iOS sqlite数据库操作。步骤是:先加入sqlite开发库libsqlite3.dylib,新建或打开数据库,创建数据表,插入数据,查询数据并打印1、新建项目sqliteDemo,添加使用sqlite的库libsqlite3.dylib2、sqlite 的方法sqlite3 *db, 数据库句柄,跟
2013-03-25 15:14:26
653
转载 UITabBarController使用详解
UITabBarController是IOS中很常用的一个viewController,例如系统的闹钟程序,ipod程序等。UITabBarController通常作为整个程序的rootViewController,而且不能添加到别的container viewController中。 首先我们看一下它的view层级图:一、手动创建UITabBarController
2013-03-20 16:13:06
573
转载 IOS-闪光灯操作
AVCaptureDevice.h主要用来获取iphone一些关于相机设备的属性。前置和后置摄像头enum {AVCaptureDevicePositionBack = 1,AVCaptureDevicePositionFront = 2};typedef NSInteger AVCaptureD
2013-03-05 13:50:57
670
转载 ffmpeg开发指南
FFmpeg是一个集录制、转换、音/视频编码解码功能为一体的完整的开源解决方案。FFmpeg的开发是基于Linux操作系统,但是可以在大多数操作系统中编译和使用。FFmpeg支持MPEG、DivX、MPEG4、AC3、DV、FLV等40多种编码,AVI、MPEG、OGG、Matroska、ASF等90多种解码.TCPMP, VLC, MPlayer等开源播放器都用到了FFmpeg。 一、
2013-02-21 15:04:15
543
转载 视频编码与封装格式解析
先简单说一下,mkv和avi的格式只是封装容器,里面封装的是视频流+音频流。容器不会影响画面质量,影响质量的是容器里面封装的什么东西。所以你换换容器,而里面的东西不换的话,对清晰度字幕音频等是没有影响的。补充一下视频基础知识吧,可能有不对的地方。一,首先说,视频格式并不能决定清晰度。影片的清晰度一要看分辨率,二要看片源,三要看码率。当然有些特定的格式决定了自身的清晰度。但是有一点是
2013-02-21 08:52:49
880
转载 音视频文件的容器格式和编码格式
视频和音频以视频文件格式的形式放在一个文件中,方便同时回放。实际上是一个容器里面包裹着不同的轨道。容器是用来区分不同文件的数据类型的,而编码格式则由音视频的压缩算法决定,一般所说的文件格式或者后缀名指的就是文件的容器。对于一种容器,可以包含不同编码格式的一种视频和音频。以下是一些常见的文件格式(容器): AVI (*.avi):其含义是Audio Video Intera
2013-02-20 14:27:58
4821
微信支付Demo
2014-08-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人