自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(223)
  • 资源 (2)
  • 收藏
  • 关注

转载 欢迎使用CSDN-markdown编辑器

简介:protobuf 即 google protocol buffer 是一种数据封装格式协议;比如其他经常用的xml,json等格式;protobuf的优势是效率高,同样的一份数据使用protobuf存储的时候更小,更加方便;官网:https://developers.google.com/protocol-buffers/https://github.com/google/protobuf在i

2016-12-13 18:00:31 564

原创 iOS开发之制作framework并将模拟器Framework与真机Framework合并

什么是frameworkFramework是资源的集合,将静态库(iOS8以后可以是动态库)和其头文件包含到一个结构中,让Xcode可以方便地把它纳入到你的项目中。分为真机—Debug(调试)版本、真机—Release(发布)版本、模拟器—Debug版本、模拟器—Release版本;开发中一般都打包Release(发布)版本,将真机和模拟器版本合并,提供外界。framework

2016-11-28 10:54:08 3905

转载 Objective-C Associated Objects 的实现原理-Category添加实例变量

我们知道,在 Objective-C 中可以通过 Category 给一个现有的类添加属性,但是却不能添加实例变量,这似乎成为了 Objective-C 的一个明显短板。然而值得庆幸的是,我们可以通过 Associated Objects 来弥补这一不足。本文将结合runtime 源码深入探究 Objective-C 中 Associated Objects 的实现原理。在阅读本文的过程中

2016-11-11 14:35:15 509

转载 39个优秀的Swift UI开源库

毫无疑问,Swift已经成为github上最受欢迎的语言之一,对于iOS开发者来说,学习开源库可以帮你快速学习和掌握这门语言。Mybridge AI从将近2700个开源Swift UI库中筛选了39个项目推荐给开发者,这些项目被选中的几率只有1.4%,在GitHub上的star平均数是2527。Animation UINo 1  Spring [9164 stars o

2016-11-10 13:24:32 1422

转载 iOS开发:深入理解GCD 第二篇(dispatch_group、dispatch_barrier、基于线程安全的多读单写)

Dispatch Group在追加到Dispatch Queue中的多个任务处理完毕之后想执行结束处理,这种需求会经常出现。如果只是使用一个Serial Dispatch Queue(串行队列)时,只要将想执行的处理全部追加到该串行队列中并在最后追加结束处理即可,但是在使用Concurrent Queue 时,可能会同时使用多个Dispatch Queue时,源代码就会变得很复杂。在这

2016-09-02 16:58:03 936 1

转载 Airbnb 資深工程師分享:怎樣才是正確、有效的 code review

之前写过一篇《写代码的四个境界》,那个时候,大部分时候我还是愉快地写着自己的代码。Code review 也是每天工作的一部分,但是相对而言花的时间还是有限的。最近一是因为角色转换,二是突然来了很多新人。花在 code review 上的时间比写代码多出了好多,也有一些心得和感触,随便写写吧。总的说来,硅谷稍具规模的公司 code review 的流程都是比较规范的。模式也差不多。一来所有

2016-09-02 14:59:58 622

转载 JSPatch技术文档

一、背景需求介绍为什么我们需要一个热修复(hot-fix)技术?工作中容易犯错、bug难以避免。开发和测试人力有限。苹果Appstore审核周期太长,一旦出现严重bug难以快速上线新版本。作为生产力工具,用户有对稳定性和可靠性的需求。二、JSPatch简介JSPatch诞生于2015年5月,最初是腾讯广研高级iOS开发@bang的个人项目。它能够使用JavaScript调用

2016-08-04 16:56:19 343

转载 饿了么移动APP的架构演进

原文:https://mp.weixin.qq.com/s?__biz=MzAxNDUwMzU3Mw==&mid=401044540&idx=1&sn=24b7d8fb655ae6dd5d989d0cb3c08e90随着移动互联网时代的到来,移动技术也随之飞速发展。如今,APP已然成为绝大多数互联网企业用来获取用户的核心渠道。与此同时,伴随着业务量的增长,愈来愈多的APP也在不

2016-08-04 16:05:25 627

转载 nodejs基础: 如何升级Noejs版本

文章来源: http://theholmesoffice.com/node-js-fundamentals-how-to-upgrade-the-node-js-version/   Node.js的开发非常活跃,它的最新稳定版本也频繁变化,你不时会发现,一个模块不能在你当前的Node版本上使用,此时你需要升级Node幸运的是,可以用一种非常简单的方法来管理你的Node版本

2016-07-13 15:21:15 790

转载 细讲UIImage加载方式

原文:http://www.henishuo.com/image-loaded-method/前言关于本地图片UIImage的加载问题,还是需要注意的。不同的加载处理方式,在效率和性能上还是有差异的。今天,我们来讲讲UIImage的加载应该选择什么样的API来加载!两种API这两种API分别是:-imageNamed: 默认加载图片成功后会内存中缓存

2016-05-30 16:46:26 405

转载 仿猎豹垃圾清理(实现原理+源码)

仿猎豹垃圾清理(实现原理+源码)转载请注明出处: 仿猎豹垃圾清理(实现原理+源码)前几天无意打开猎豹内存大师, 发现它的垃圾清理很强大, 效果也不错, 闲着就研究了下。 不过.. 结果貌似和我想象的不太一样。怎么说呢, 听我下文一一分析。效果图: 从效果图, 我们可以看出它有以下几个功能:获取设备上已安装的所有App获取App的信息, 包括图

2016-05-30 16:42:07 1166

原创 iOS 应用将适应新的的IPv6-only网络 -解决方案

苹果公司还称“在WWDC 2015上,我们宣布iOS 9开始向IPv6-only网络服务过渡。自2016年6月1日起,开发者所有提交至App Store的应用必须支持IPv6-only网络。由于大部分现有应用程序已经通过NSURLSession和CFNetwork APIs兼容该协议,因此这些应用无需做出调整。但如果你依然使用IPv4 API的或者硬件编码IP地址,那么你需要手动调整应用代码来

2016-05-26 15:06:29 2319 2

转载 全站 HTTPS 来了

原文链接:http://bugly.qq.com/bbs/forum.php?mod=viewthread&tid=417&fromuid=6各位使用百度、谷歌或淘宝的时候,有没有注意浏览器左上角已经全部出现了一把绿色锁,这把锁表明该网站已经使用了 HTTPS 进行保护。仔细观察,会发现这些网站已经全站使用 HTTPS。同时,iOS 9 系统默认把所有的 http 请求都改为 HTTPS

2015-12-29 12:25:23 504

原创 APP请求超时问题-ios超时-android超时

最近发现公司的app在高峰期超时严重.用wifi网络一直超时,但qq等却正常.换成手机卡网络正常.起初以为是DNS解析问题.后来抓包,发现DNS解析正常,可以得到正确的A记录.但tcp retransmission严重.因为app内使用了友盟等第三方库,他们的DNS,tcp握手均正常.而我们的app却tcp retransmission严重.后来找到一篇文章

2015-12-23 16:03:15 19127 2

转载 iOS开发-检测用户截屏, 并获取所截图片

http://blog.csdn.net/hitwhylz/article/details/38386979?utm_source=tuicool微信可以检测到用户截屏行为(Home + Power),并在稍后点击附加功能按钮时询问用户是否要发送刚才截屏的图片,这个用户体验非常好。于是乎, 我也想着实现这个功能。在iOS7之前, 如果用户截屏,系统会自动取消屏幕上的所有

2015-06-11 10:47:25 791

转载 知名应用背后的第三方开源项目

http://www.cocoachina.com/ios/20141017/9955.html知名应用程序的设计和技术一直都是开发者需要学习的,同样这些应用所使用的开源框架也是不可忽视的一部分。此前《iOS第三方开源库的吐槽和备忘》中作者ibireme列举了国内多款知名应用所使用的开源框架,并对其中一些框架进行了分析,同样国外开发者@iOSCowboy也在博客中给我们列出了国外多款知名应

2015-06-05 10:43:15 760

转载 ios身份证号码判断

+ (BOOL)chk18PaperId:(NSString *)sPaperId{    //判断位数    if ([sPaperId length] !=15 && [sPaperId length] != 18) {        return NO;    }    NSString *carid = sPaperId; 

2015-01-19 20:32:15 632

转载 在iOS设备上进行抓包(补充)

之前我一般是通过wifi连入我的iMac,然后使用HttpScoop或者Charles来进行数据抓取及分析。前者非常好用,在调协议时我的必备工具,就是更新太慢,2.0版本老不出来。后者没用过,听说是java的。而且价格也太贵,前者15美刀,后者50美刀。Wireshark有装,但是界面实在让人提不起来胃口使用,所以装了就删除了。 HttpScoop虽然好用,但是只适用于http协议,对于soc

2015-01-04 20:13:20 4453

原创 ios端支付宝问题一二备注

ios使用支付宝支付,很简单,看支付宝的demo便可.不便的是支付回调后的处理,支付宝没给出类似其他第三方集成平台的分类处理demo.说说使用ios端支付遇到的问题;1,旧版本的支付宝,一直验证不通过.  有部测试机,ios6系统,安装了很旧的支付宝版本,支付时,一直提示密钥验证不过.后来对比使用ios8上和最新的支付宝客户端加密的固定明文的串,发现两者加密后完全一样(ios6上的旧版

2015-01-04 11:45:19 1100

转载 Objective C中数组排序几种情况的总结

大体上,OC中常用的数组排序有以下几种方法:sortedArrayUsingSelector:;sortedArrayUsingComparator:;sortedArrayUsingDescriptors:。1、简单排序(sortedArrayUsingSelector:) 如果只是对字符串的排序,可以利用sortedArrayUsingSelector:方法就可以了,代码如下

2014-08-13 11:53:08 566

转载 利用.dSYM和.app文件准确定位Crash位置

首先,确保在release(Ad Hoc或者App Store)一个版本时,保存了对应的xxx.app和xxx.dSYM文件。其次,验证xxx.crash、xxx.app和xxx.dSYM三者的uuid是否一致。验证方法:1)查看xxx.app的uuid。[plain] view plaincopyprint?$ dwarfdump --uuid mobil

2014-07-04 10:57:02 794

原创 APNS问题总结

做过几个app的apns,从一知半解,但现在熟练掌握,经历了好几次失败之旅.现在抽空整理下apns遇到的一些问题.1,两套apns流程:以下东东都是两套,切莫弄错.   开发:开发证书,debug版token,gateway.sandbox.apple.com(feedback.sandbox.apple.com) 2195   发布:发布证书,ad hoc版t

2014-06-30 15:12:46 2387

转载 APNS导致消息丢失和发送效率原因

首先说明一下,本文只是介绍一些容易被开发者忽视,而导致性能低下问题。并不是介绍如何向苹果设备成功发送一条消息,这里假设所有阅读者已经能够向苹果服务器发送消息,并且成功接收,只是发送效率比较低,并且丢失率很高。如果你不是此类情况,那么绕道吧。PS:伸手党可以直接看标红部分(结论)    最近参与并且完成了公司1000W级的消息推送服务平台重建。此次重构级别解决了消息丢失,并且大幅度提升了推送效率

2014-06-30 12:03:22 7176

转载 改善Objective-C的日志输出

我该如何在日志输出信息中添加上下文信息,例如当前方法或者行号。 C预处理器提供了一些标准宏,可以提供当前文件,行号,或者函数的信息。另外,Objective-C有_cmd隐式参数,可以提供当前函数的选择器,以及将选择器和类转换为字符串的功能。你可以在调试或者错误处理时在NSLog语句中提供这些上下文信息。 下面是打印当前方法和行号的例子。NSMutableArray *so

2014-05-26 13:02:51 633

转载 CocoaPods安装和使用教程

Code4App 原创文章。转载请注明出处:http://code4app.com/article/cocoapods-install-usage目录CocoaPods是什么?如何下载和安装CocoaPods?如何使用CocoaPods?场景1:利用CocoaPods,在项目中导入AFNetworking类库场景2:如何正确编译运行一个包含CocoPods类库的项目Co

2014-05-05 14:54:59 466

转载 如何快速正确的安装 Ruby, Rails 运行环境

z对于新入门的开发者,如何安装 Ruby, Ruby Gems 和 Rails 的运行环境可能会是个问题,本页主要介绍如何用一条靠谱的路子快速安装 Ruby 开发环境。次安装方法同样适用于产品环境!系统需求首先确定操作系统环境,不建议在 Windows 上面搞,所以你需要用:Mac OS X 任意 Linux 发行版本(Ubuntu,CentOS, Redhat, Ar

2014-05-05 14:25:45 502

转载 Gesture Recognizers与触摸事件分发

一.Gesture RecognizersGesture Recognizers是在iOS3.2引入的,可以用来识别手势、简化定制视图事件处理的对象。Gesture Recognizers的基类为UIGestureRecognizer,这一个抽象基类,定义了实现底层手势识别行为的编程接口。在UIKit框架中提供了6个具体的手势识别类,用来识别常见的手势。这6个手势识别器类为:U

2014-04-30 17:39:14 487

转载 IOS解析JSON

JSON建构有两种结构:json简单说就是javascript中的对象和数组,所以这两种结构就是对象和数组2种结构,通过这两种结构可以表示各种复杂的结构1、对象:对象在js中表示为“{}”扩起来的内容,数据结构为 {key:value,key:value,...}的键值对的结构,在面向对象的语言中,key为对象的属性,value为对应的属性值,所以很容易理解,取值方法为对象.key 获取属

2014-04-30 12:40:12 794

转载 JavaScriptCore框架在iOS7中的对象交互和管理

JavaScriptCore框架在iOS7中的对象交互和管理Nov 04, 2013~ 1 Comment ~ Written by Ider之前一篇的文章中已经简单入门了iOS7中新加的JavaScriptCore框架的基本用法,十分的简单方便而且高效,不过也仅限于数值型、布尔型、字符串、数组等这些基础类型。本文将扩展到更复杂的类型,介绍一下该强大的框架是如何让Objecti

2014-04-30 12:34:42 710

转载 Apple iOS安全分析

今天就介绍一下IOS的安全机制。先来一张系统安全架构,后续逐渐解释: IOS内核来源于OS X,很多安全特性也由此借鉴。1、安全启动苹果的系统完整性校验主要包括:bootloaders, kernel, kernel extensions, and baseband firmware. Boot ROM先启动,里面内置了Root CA public key,然后验证  Low-

2014-04-30 10:54:19 2013

转载 如何使用KeyChain保存和获取UDID-advertisingIdentifier

本文是iOS7系列文章第一篇文章,主要介绍使用KeyChain保存和获取APP数据,解决iOS7上获取不变UDID的问题。并给出一个获取UDID的工具类,使用方便,只需要替换两个地方即可。 一、iOS不用版本获取UDID的方法比较    1)iOS 5.0  iOS 2.0版本以后UIDevice提供一个获取设备唯一标识符的方法uniqueIdentifier,通过该方法我们可

2014-04-29 15:59:31 702

转载 iOS唯一标示符引导

在2013年3月21日苹果已经通知开发者,从2013年5月1日起,访问UIDID的应用将不再能通过审核,替代的方案是开发者应该使用“在iOS 6中介绍的Vendor或Advertising标示符”。unique Identifier即将退出,苹果给了我们Vendor和Advertising identifier两个选择,但应该用哪一个?文档并没有给出确切答案,具体使用哪个完全由你根据自己a

2014-04-29 09:31:52 466

转载 手把手教你做iOS推送

最近在研究iOS的推送问题,遇到了一些问题,最终整理了一下,放在这里和大家分享。 APNS的推送机制首先我们看一下苹果官方给出的对iOS推送机制的解释。如下图Provider就是我们自己程序的后台服务器,APNS是Apple Push Notification Service的缩写,也就是苹果的推送服务器。 上图可以分为三个阶段:第一阶段:应用程序的服务器端把要发送

2014-04-25 10:04:33 606

原创 UIImage的扩展方法——裁剪图片和等比列缩放图片-翻转-圆形等

首先创建一个UIImage类别,如下:@interface UIImage(UIImageScale)  -(UIImage*)getSubImage:(CGRect)rect;  -(UIImage*)scaleToSize:(CGSize)size;  @end     @implementation UIImage(UIImageScale)     //

2014-04-16 11:09:25 5597

转载 Objective C运行时(runtime)技术总结,好强大的runtime

前言:         Objective C的runtime技术功能非常强大,能够在运行时获取并修改类的各种信息,包括获取方法列表、属性列表、变量列表,修改方法、属性,增加方法,属性等等,本文对相关的几个要点做了一个小结。目录:(1)使用class_replaceMethod/class_addMethod函数在运行时对函数进行动态替换或增加新函数(2)重载f

2014-04-15 16:50:03 597

原创 runtime-class_addMethod\objc_msgSend\NSInvocation

TestClass *instance = [[TestClass alloc]init]; class_addMethod([TestClass class],@selector(ocMethodA::), (IMP)cfunctionA,"@@:@@"); if ([instance respondsToSelecto

2014-04-15 16:25:31 814

转载 IOS高级开发~Runtime

一些公用类:@interface CustomClass : NSObject- (void) fun1;@end@implementation CustomClass- (void) fun1{    NSLog(@"fun1");}@end@interface TestClass : NSObject@end@implementa

2014-04-04 16:32:07 744

转载 NSPredicate predicateWithFormat方法支持的格式

NSPredicate predicateWithFormat函数功能强大,写法也挺多的,总结一下。NSPredicate创建谓词使用类方法predicateWithFormat: (NSString*) format,format 里的东西和SQL 的where 条件差不多。另外,参数format 与NSLog 的格式化模版差不多,例如:1 和188.0 是传递过来的参数,你可以写成如下

2014-04-03 15:35:48 3396

转载 iOS下的RSA加密方法

iOS上并没有直接的RSA加密API。但是iOS提供了x509的API,而x509是支持RSA加密的。因此,我们可以通过制作自签名的x509证书(由于对安全性要求不高,我们并不需要使用CA认证的证书),再调用x509的相关API来进行加密。接下来记录一下整个流程。第一步,制作自签名的证书1.最简单快捷的方法,打开Terminal,使用openssl(Mac OS X自带)生成私钥和自签名的

2014-04-03 14:04:04 881

转载 iOS 如何进行逆向工程

Android 的源码是开放的, 开发者很容易了解系统机制, 但是 iOS 的代码是封闭的, 单从文档上还是不足以深入的了解系统机制, 有没有方法能够对 iOS 进行逆向工程, 让开发者能够更深入了解系统?按照意图和深度的话,大概有这么几种途径与资源:为了学习框架,提升开发水平,可以看看私有API列表。iOS (Cocoa Touch)的各私有API都可以通过runtime查看

2014-04-02 10:06:24 627

demo~ios-md5等

转,备份自用~ 内含ios的 iOS常用加密方法(aes、md5、base64)

2013-03-27

mobile\ce 输入法demo

mobile wince 输入法 类型 demo 很简单

2010-04-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除