- 博客(238)
- 资源 (25)
- 收藏
- 关注
原创 __typeof(&*self) 这样写法有何意义
问:__typeof、__typeof__、typeof的区别 ?答:没有区别,对于老的LLVM编译器上面 __typeof(self),这句话会编译报错,所以在很早的ARC使用者中流行__typeof(&*self)这种写法。...
2019-03-06 15:29:15
1336
原创 UICollectionView deleteItemsAtIndexPaths 崩溃
问题描述: UICollectionview,调用删除方法:deleteItemsAtIndexPaths ,崩溃,报错:Assertion failure in -[UICollectionViewData validateLayoutInRect:]。 UICollectionView received layout attributes for a cell with an index p...
2019-01-08 11:42:31
3923
转载 iOS UICollectionView 添加headerView分组后滚动到指定的section
方法一:(网上很多都是这样写,但是会有副作用)[_collectionView scrollToItemAtIndexPath:[NSIndexPath indexPathForItem:0 inSection:index] atScrollPosition:UICollectionViewScrollPositionTop animated:YES];点击索引后,效果图:不显...
2018-08-06 19:48:27
6045
转载 Mac终端Shell分类以及配置文件等级区别
打开mac终端,输入:echo $SHELL 如果输出的是:csh或者是tcsh,那么你用的就是C Shell。如果输出的是:bash,sh,zsh,那么你的用的可能就是Bourne Shell的一个变种。 Mac OS X 10.2之前默认的是C Shell。Mac OS X 10.3之后默认的是Bourne Shell。 关于几种常用不同的She...
2018-08-06 14:41:04
3725
原创 iPhone无法加载https链接
问题描述:手机越狱后,请求https请求时,一直失败。显示不信任证书。问题分析:肯定是哪里设置错误,导致证书认证失败。解决方案:1,首先检查是否设置了代理,如charles证书等;在通用->关于本机->证书信任设置 里,选择信任证书;2, 检查手机时间,是否正确;如果手机时间错误,也是会导致https 证书不被信任的。...
2018-07-18 19:06:48
5308
原创 因无法自动找到所依赖的软件包或修复存在冲突的软件包,所要求的更改无法完成
问题描述:iPod touch6 ,10.0.2的系统,使用 yalu102 越狱后,cydia 里无法安装其他插件;报错:因无法自动找到所依赖的软件包或修复存在冲突的软件包,所要求的更改无法完成。 查看信息,大多是缺少 mobile substrate 这个插件,在cydia里搜索,无结果。 百度后得知,该插件已改名为: cydia substrate。在cydia里搜索新名称,无结果。...
2018-07-17 20:15:49
57158
2
原创 cocoapods 添加 WebP 失败解决方案
问题描述: 使用cocoaPods添加webp时,执行 install 会报错:fatal: unable to access 'https://chromium.googlesource.com/webm/libwebp/': Failed to connect to chromium.googlesource.com port 443: Operation timed out原因分析: 看报错...
2018-07-12 14:49:10
1396
转载 You may need to configure your browser or application to trust the Charles Root Certificate. See SSL
SSL的问题: 最近iPhone系统更新到ios 10.3后,用Charles抓包竟然出现了一些问题,https的请求都会失败,提示错误信息为Failure SSLHandshake: Received fatal alert: unknown_ca 和You may need to configure your browser or application to trust the Ch...
2018-05-23 13:55:53
8399
原创 The repo is not clean
问题描述:推送私有库时,报错:[!] The repo `MySpecs` at `../../../.cocoapods/repos/MySpecs` is not clean解决办法: cd ~/.cocoapods/repos/MySpecs,git clean -f
2018-05-09 16:38:20
3923
2
原创 cocoapods更新本地库缓存
问题描述: 本地和远程Git仓库,都删除了 tag 0.0.5,但是执行 pod update 时,依旧可以拉取到 0.0.5 的代码;原因分析: 这是由于Pod缓存造成的,虽然 本地 和 远程 Git 仓库都删除了 tag 0.0.5,但是本地Pod 缓存中,依旧有 tag 0.0.5 的缓存,执行pod update 时,会先从本地缓存读取数据;解决方案:直接帖个百度的吧,我这里采用的是方法二...
2018-04-26 00:18:59
7231
原创 The form contains the following error: Validate branches Cannot Create: This merge request already e
问题描述:创建Git Merge Request 的时候,报错: The form contains the following error: Validate branches Cannot Create: This merge request already exists;此时,无法创建新的 Merge Request ; 在 Merge Request 列表中,可以发现已经存在一个 Merg...
2018-04-25 21:14:32
15996
原创 OC中的继承问题
举个例子,先上代码@interface Person : NSObject@property (nonatomic, copy) NSString *name;- (void)print;@end#import "Person.h"@implementation Person- (void)print { NSLog(@"Person:%@",_name);// ...
2018-04-22 14:20:00
719
原创 执行 pod repo update 报错:Failed to connect to GitHub to update the CocoaPods/Specs specs repo
现象描述: 执行 pod repo update 报错:Failed to connect to GitHub to update the CocoaPods/Specs specs repo问题分析:是Github在不久之前的2018年2月23号移除了一些低加密标准协议,包括TLSv1/TLSv1.1,diffie-hellman-group1-sha1,diffie-hellman-group...
2018-04-04 11:50:16
8280
原创 cocoaPods 制作私有库,导入framework时,报错:unrecognized selector sent to class
现象描述:在使用cocoaPods制作私有库时,在私有库里,需要导入之前自己制作的 framework;导入之后,编译正常;但是运行报错:unrecognized selector sent to class XXX 。原因分析:运行正常,说明头文件导入正确;但是运行报错,结合报错信息可知,是二进制文件没有实际导入;这种情况,需要确认:1,导入的framework,是否正确实现了方法; 2,导入的...
2018-03-29 19:05:51
1774
原创 An unexpected version directory `Assets.xcassets` was encountered
An unexpected version directory Assets.xcassets was encountered问题描述: 在使用cocoaPods制作自己的私有库时,制作完毕,执行 pod search ,也可以搜索到;但是执行 pod install 时,报错:An unexpected version directory Assets.xcassets was e
2018-01-09 20:59:04
3432
原创 'Source code for your Pod was not accessible to CocoaPods Trunk. Is it a private repo or behind a us
问题描述: 在使用cocoapods 上传自己的库时,执行命令:pod trunk push test.podspec 命令报错:'Source code for your Pod was not accessible to CocoaPods Trunk. Is it a private repo or behind a us解决方案:将spec 文件中的 source 地址,使用
2018-01-08 18:07:27
1929
原创 iOS打印当前控制器名称、事件名称
问题背景:接手了一个新项目,项目源文件2000+,突然要修改一个紧急bug;但是对项目不熟悉、对代码更不熟悉;具体的页面是哪个?具体的代码是哪块 ? 一脸懵逼;解决方案:用runtime ,新加三个分类文件;当进入新的页面时,自动打印当前页面所属控制器的名称,打印当前触发的事件方法名称;Demo源码:点击打开链接
2017-01-03 17:47:05
3977
原创 duplicate symbols for architecture arm64 after xCode 8.0 update
背景描述:项目升级到xcode 8 后,遇到了一些问题,做下记录,以供大家参考;问题一:swift 2.3 升级到 swift 3.0 的问题 ?解决方案:1,旧项目,使用xcode8打开时,会自动询问,是否自动将 swift2.3语法,升级到swift3.0;可以选择转换,转换之后,如果还有报错的地方,需要自己手动处理swift语法错误;2,如果不升级swift语法,可以在bu
2016-10-09 14:53:23
3522
4
原创 iOS UITextField 限制只能输入中文
需求: UITextFiled 限制只能输入4个中文;一起一切字符,禁止输入;解决方案:添加监听,在监听中,过滤字符;上干货:1,声明变量:@property (nonatomic, strong) UITextField *textField;2,添加监听: [[NSNotificationCenter defaultCenter]addObserver:self
2016-09-27 18:26:09
8885
转载 GCD 深入理解:第二部分
GCD 深入理解:第二部分本文翻译自 http://www.raywenderlich.com/63338/grand-central-dispatch-in-depth-part-2原作者:Derek Selander译者:Riven、@nixzhu前半部分由 Riven 翻译,但他由于太忙而搁置,后由 NIX 整理校对并翻译后半部分。欢迎来到GCD深入理解系列教
2016-05-13 09:46:03
1029
转载 GCD 深入理解 第一部分
GCD 深入理解:第一部分本文翻译自 http://www.raywenderlich.com/60749/grand-central-dispatch-in-depth-part-1原作者:Derek Selander译者:@nixzhu虽然 GCD 已经出现过一段时间了,但不是每个人都明了其主要内容。这是可以理解的;并发一直很棘手,而 GCD 是基于 C 的 API
2016-05-12 14:47:29
1337
转载 漫谈iOS程序的证书和签名机制
接触iOS开发半年,曾经也被这个主题坑的摸不着头脑,也在淘宝上买过企业证书签名这些服务,有大神都做了一个全自动的发布打包(不过此大神现在不卖企业证书了),甚是羡慕和崇拜。于是,花了一点时间去研究了一下iOS这套证书和签名机制,并撰文分享给需要的朋友。由于本人才疏学浅,多有遗漏或错误之处,还请大神多多指教。非对称加密和摘要非对称加密的特性和用法非对称加密算法可能是世界上最重要的算法,它是
2016-05-10 14:13:45
2337
转载 一步一步实现iOS微信自动抢红包(非越狱)
前言:最近笔者在研究iOS逆向工程,顺便拿微信来练手,在非越狱手机上实现了微信自动抢红包的功能。题外话:此教程是一篇严肃的学术探讨类文章,仅仅用于学习研究,也请读者不要用于商业或其他非法途径上,笔者一概不负责哟~~好了,接下来可以进入正题了!此教程所需要的工具/文件yololibclass-dumpdumpdecryptediOSOpenDeviToolsOpenSSH
2016-05-09 16:04:15
25342
4
原创 class-dump 执行失败
问题描述:1,在ios逆向工程中,用 class-dump 可以导出App头文件;但是,从App Store 下载的App,都是加密过的,直接用 class-dump ,导出结果只会什么都没有,或者只有一个:CDStructures.h 文件;因此,对于这种情况,首先要做的就是:砸壳;2,砸壳工具有:AppCrackr、Clutch、dumpcrypted 等;由于 AppCrackr 、
2016-05-09 15:59:26
4112
转载 猿题库 iOS 客户端架构设计
序猿题库是一个拥有数千万用户的创业公司,从2013年题库项目起步到2015年,团队保持了极高的生产效率,使我们的产品完成了五个大版本和数十个小版本的高速迭代。在如此快速的开发过程中,如何保证代码的质量,降低后期维护的成本,以及为项目越来越快的版本迭代速度提供支持,成为了我们关注的重要问题。这篇文章将阐明我们在猿题库 iOS 客户端的架构设计。MVCMVC,Model-Vie
2016-05-05 19:16:12
1424
原创 UIView 莫名其妙的调整高度 _applyAutoresizingMaskWithOldSuperviewSize
问题描述:UICollectionView ,布局方式为手写frame;其中的cell ,用的是自动布局;在加载中,第一次cell 的高度正确,第二次加载时,cell 高度莫名其妙的增加了 116 个点;原因分析:手写frame 和自动布局交叉使用造成的布局问题;重写cell frame 的set 方法,发现是 [UIView(Geometry) _applyAutoresizingMask
2016-04-12 11:07:21
2565
1
转载 使用Theos做一个简单的Mobile Substrate Tweak
Mobile Substrate和TheosMobile Substrate是Cydia的作者Jay Freeman (@saurik)的另外一个牛X的作品,也叫Cydia Substrate,它的主要功能是hook某个App,修改代码比如替换其中方法的实现,Cydia上的tweak都是基于Mobile Substrate实现的。目前支持iOS和Android平台。根据github上的
2016-03-28 17:43:32
6681
转载 iOS越狱程序开发框架
开发越狱程序和日常开发的iOS程序很相似,不过,越狱程序能做更强大的事情。你的设备越狱之后,你就能够hook进Apple提供的几乎所有的class,来控制iPhone/iPad的功能。@DHowett的Theos大幅简化了编写越狱程序的流程。DHowett介绍了如何再Mac和Linux上开发iOS越狱程序,本文将只介绍如何在Mac上开发。本文将一步步介绍写越狱程序需要的工具,在这个
2016-03-15 10:03:09
3619
转载 了解iOS上的可执行文件和Mach-O格式
很多朋友都知道,在Windows上exe是可直接执行的文件扩展名,而在Linux(以及很多版本的Unix)系统上ELF是可直接执行的文件格式,那么在苹果的操作系统上又是怎样的呢?在iOS(和Mac OS X)上,主要的可执行文件格式是Mach-O格式。本文就关于iOS上的可执行文件和Mach-O格式做一个简要整理。Mach-O格式是iOS系统上应用程序运行的基础,了解Mach-O的格式,对
2016-03-11 14:21:09
3363
转载 Apple:如何在iphone、ipad上安装一些常用命令行命令
Apple:如何在iphone、ipad上安装一些常用命令行命令 相信对Linux、Unix比较熟悉的朋友,在iphone或 ipad越狱后发现通过Cydia可以安装OpenSSH,一定都想安装上并且通过ssh登录上去看看,但是登录后却发现几乎没几个命令可用,也就只有ls、cd等一些常用的命令,至于ifconfig、ping、netstat等都没有。。。 下面就来介绍一下如何让ipho
2016-03-11 14:03:23
12875
1
转载 GCD 之串行、并行
GCD为我们提供了三种类型的调度队列(dispatch queue),分别为串行,并行和主调度队列。 串行(Serial) 你可以创建任意个数的串行队列,每个队列依次执行添加的任务,一个队列同一时刻只能执行一个任务(串行),但是各个队列之间不影响,可以并发执行。每个队列中的任务运行在一个由各自串行队列维护的独立线程上,一个队列中只有一个线程。 下面,我将创建一
2016-02-24 09:52:21
2219
原创 __weak 和 __block 关键字的区别
问题描述:在使用block 时,为避免亲戚循环引用问题,我们一般常将外部变量用 __weak 或者 __block 关键字进行修饰。那么二者的区别在哪呢?下面引自官方的说明:From the docs about __block__block variables live in storage that is shared between the lexical scope o
2016-02-17 21:41:11
3743
原创 UILayoutGuide maker Crash
问题描述:Xcode 升级到了7.2,IOS 9.2. App运行正常;当在 IOS 8.2 上运行时,程序Crash,并报错:Objective: {objective 0x174620240: + _UILayoutGuide maker > .......原因分析:IOS 系统bug,一般报此错误,都是由于使用了自动布局,里面控件宽度、高度使用了约束比例,由于约束比例计算出现无限小数
2016-01-12 14:44:21
1197
转载 CocoaPods详解之----制作篇
CocoaPods详解之----制作篇原文地址:http://blog.csdn.net/wzzvictory/article/details/20067595学会使用别人的Pods依赖库以后,你一定对创建自己的依赖库跃跃欲试,今天就来揭开Pods依赖库创建过程的神秘面纱。整个创建过程都以我实现的一个名称为WZMarqueeView跑马灯效果的view为例,步骤如下:一
2015-12-08 19:12:19
1976
转载 播放系统声音&震动&系统声音对照表
如题#import //播放系统提示音- (void)playSystem { AudioServicesPlaySystemSound(SystemSoundID); }当参数为:kSystemSoundID_Vibrate 时就是震动;ps(只有iphone才能震动而且还得在设置里开启震动才行,其他的如touch就没有震动功能,别忘了导
2015-12-08 12:40:01
1773
原创 insertRowsAtIndexPaths errors
问题描述: 当向UITableView 插入cell 时,报错 : Assertion failure in -[UITableView _endCellAnimationsWithContext:], /SourceCache/UIKit_Sim/UIKit-1912.3/UITableView.m:1046问题分析:无论是插入insert,还是删除 delete ,或者是重新加载 relo
2015-11-30 16:43:21
2330
转载 函数式编程扫盲篇
原文地址:http://www.cnblogs.com/kym/archive/2011/03/07/1976519.html1. 概论在过去的近十年的时间里,面向对象编程大行其道。以至于在大学的教育里,老师也只会教给我们两种编程模型,面向过程和面向对象。孰不知,在面向对象产生之前,在面向对象思想产生之前,函数式编程已经有了数十年的历史。那么,接下来,就让我们回顾这
2015-11-22 23:47:37
30851
11
转载 mac os x 添加 用户 所属 组
常规的linux下的 用户和组 命令在mac os x 下不太灵,下面是网上找的http://lmgtfy.com/?q=mac+os+x+add+users+to+group 在命令行: dscl localhost进入组目录cd /Local/Default/Groups使用ls 你就可以看到所有的group, /Local/Default/U
2015-11-11 11:05:25
10337
原创 Xcode 如何删除过期的Provisioning Profile文件
问题:Xcode 6,账号多了,就会产生很多过期的PP文件,Xcode 没有自带删除功能;解决:Xcode 中所有的PP文件,都在 ~/Library/MobileDevice/Provisioning Profiles 这个文件夹下;进入该文件夹,按照文件日期来手工删除即可。
2015-06-29 20:03:36
20583
1
iOS and macOS Performance Tuning.zip
2020-04-01
IPhone 按键音素材(43个)
2015-12-09
xmpp_ios_demo
2015-03-31
ChartDemoMVC
2013-08-13
蓝屏程序 自己写着玩的
2011-08-15
正则表达式实例 (包含各种验证)
2011-08-15
公司管理软件(进销存)
2011-08-15
贪吃蛇C#(算法简单)
2011-03-30
五子棋增强版(内含定时关机等)
2011-03-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人