iOS

几个常用的 Xcode 插件

== 注:此文章介绍的插件暂不支持 Xcode 8,请勿安装 == Alcatraz 首先介绍的 Alcatraz 是一个 Xcode 插件管理工具,下面介绍的插件都可以通过它来统一管理安装、卸载等,所以下面就不做链接了,字母顺序排序 BBUDebuggerTuckAway 编写代码时自动收缩底部的调试栏 CocoaPods 大名鼎鼎的依赖管理工具 CocoaPods 的插件,不想输入命令行的话鼠标点几下就行了 HOStringSense 字符串里面转义字符什么的最讨厌了,这个插件完美的解决了这个问题 KSImageNamed 为智能提示补充上图片名提示的功能 OMColorSense 输入颜色代码的时候可以预览颜色,同时也可以调用出颜色选择面板进行颜色选择 RTImageAssets 通过 @3x

iOS

iOS 开发入门(2013年冬版)

第一款 App 上架距今已有两年有余,之前写的 iOS 开发初探 也随着 iOS 版本的升级有些陈旧,加上最近又有朋友咨询 iOS 开发的事情,于是尘封的博客再次开启,虽然现在很多人转到了微信公众平台,但我依旧觉得博客更有魅力(AD: 大家需要博客空间的,可以到 庙 这里看看),微信里面是 light app,而博客是更加开放的 web(什么?你竟然在这里鬼扯更封闭的 iOS?) 搞清楚你的目标 是纯粹为了兴趣,还是为了换一份更好的工作而努力成为技术达人,抑或通过出售 app

iOS

iOS 开发批量保存图片到相册时丢图片的解决方法

同一个问题(前一次是一年多前,写完就忘了)栽了两次,纪录一下。 症状 在循环语句中批量保存图片到相册时在低配置的设备中会有丢失的情况,代码一般是这个样子 for (int i = 0; i < n; i++) { UIImageWriteToSavedPhotosAlbum(image, nil, nil, nil); } debug了一下,错误是 write busy 原因 iOS 往系统相册写照片的时候是单线程,一张存完才会存下一张,可能是因为要经过这几个过程:压缩图片、生成缩略图、SQLite保存数据,

iOS

Stroyboard 项目中出现 Applications are expected to have a root view controller at the end of application launch 的解决方法

此警告出现的场景有可能是: 更改了 Stroyboard 的名称 项目中删除了 Storyboard,之后从其他项目拖进来一个 Storyboard,这两个 Storyboard 的文件名不一样,比如删掉的是 MainStoryboard.storyboard,新加进来的是 MainStoryboard_iPhone.storyboard 原因是由于项目的 -Info.plist文件未自动更新引起的,解决方法就是到 Supporting Files 目录中找到 项目名-Info.plist,找到开头为 Main storyboard file base name

iOS

MKStoreKit 小记

之前某个应用尝试了 In-App Purchases 的 Non-Consumable 这种购买方式,为了图省事,使用了 MKStoreKit 来实现,走完整个流程跌跌撞撞,查了不少资料,稀里糊涂的成功上架。 最近,资本家贪婪的本性发作,需要添加更多 Non-Consumable 的购买选项,由于无法测试(需要和 binary 一起提交审核),随便弄一下就提交了,没想到平时十分负责的苹果审核人员居然没测出问题,上架后收到不少用户的邮件才发现出了大事,又折腾半天才搞定,记录一下。 1, 在应用中添加 MKStoreKit,略 2, 编辑

iOS

四谈iOS抓包:Mac下好用的HTTP/HTTPS抓包工具Charles

在Mac下做开发,用Fiddler抓包由于离不开Windows比较痛苦,还好有Charles,到官网http://www.charlesproxy.com/可下载到最新版本(若不支持rMBP可拖到Retinizer中把文字变清晰) HTTP抓包 打开Charles程序 查看Mac电脑的IP地址,如192.168.1.7 打开iOS设置,进入当前wifi连接,设置HTTP代理Group,将服务器填为上一步中获得的IP,即192.168.1.7,端口填8888 iOS设备打开你要抓包的app进行网络操作 Charles弹出确认框,点击Allow按钮即可 HTTPS抓包 在 iOS 设备上打开这个网址 http:

iOS

重建iOS开发配置证书

MAC重装系统,开发证书没有备份,加上iDP即将过期,在重新导入证书的过程中遇到了一些小麻烦,比如 Xcode 4.4.1 中的证书出现 Valid Signing Identity not found,现记录一下(仅适用于重新生成证书者,不适用首次配置证书联机调试及发布,有此需要请自行搜索) 生成私有证书,打开钥匙串,钥匙串访问 – 证书助理 – 从证书颁发机构请求证书…,填入iDP邮箱及常用名称(在 iOS Dev Center 页面的 Hi, XXX 处查找,

iOS

App Store 被拒经历

链接堆砌,苹果建议用HTML5来做 UIWebView 嵌页面片,苹果建议让用户通过浏览器访问,比如爱知乎,开始几个版本通过了,后面的更新一直没提交上去 屏幕坏点检测应用,苹果说会误导用户,未上架 登陆账号有两个字母写反了,改正后通过 因远程服务器反应慢,苹果的人估计没耐心等,就说有bug给拒了,重新提交一份通过 应用标题加了几个描述语句,苹果让在描述中写明达到此目的的操作流程,改正后通过 一个第三方的应用,描述文字中有该网站的链接,进去网站后能找到付费链接,苹果说该网站有自己的支付方式,去除网址后通过

iOS

再谈iOS抓包,使用Fiddler

之前介绍过iOS抓包的方法,缺点有: 要插网线 要有MBP Wireshark用起来不太习惯 今天碰巧看到Secret iOS business; what you don’t know about your apps里面熟悉的Fiddler截图,恍然大悟,上面的问题就都解决了 下面以VirtualBox为例 VirtualBox 工具栏 – 设备 – 更改网络连接 – 在网络选项卡中将连接方式改为 Bridged Adapter(默认为NAT) Fiddler 工具栏 Tools – Fiddler Options – Connections

iOS

iOS 抓包

一个方法是越狱后通过Cydia安装network-cmds、sudo、tcpdump、mobileterminal进行抓包,将抓包后的文件拷出来到电脑里用Wireshark等进行分析,不过没实操过 bz的方法是把Macbook Pro作为wifi热点来抓包的,没什么新意,仅作记录: MBP插上网线 进入设置-共享,将Internet 共享开启(通过以下方式将:以太网 连接共享给其他电脑:AirPort) iOS通过MBP共享的wifi接入点联网 运行MBP上的Wireshark开始捕捉 运行iOS上要抓包的app