
IOS开发技巧
文章平均质量分 65
iOS_developer_zhong
iOS开发工程师
展开
-
Xcode11 未找到应用程序的“aps-environment”的授权字符串
/** 远程通知注册失败委托 */ func application(_ application: UIApplication, didFailToRegisterForRemoteNotificationsWithError error: Error) { print("远程通知注册失败委托")// Error Error Domain=NSCocoaErrorDo...原创 2019-10-23 18:08:23 · 9778 阅读 · 1 评论 -
59条搞笑但却真实无比的编程语录
2016-06-08 10:30 编辑: cocopeng 分类:程序人生 来源:野狗 公众号我收集了很多编程语录,这些语录涉及软件开发,代码维护,调试纠错,软件bug,系统设计、文档,代码质量,测试和软件开发团队管理等方面。下面的这59条语录虽然很搞笑,但却真实无比。只有牛逼的程序员才能理解这些编程语句里的真正内涵。程序员编程语录1. 一个好的程序员是那种过单行线转载 2016-06-12 11:47:20 · 780 阅读 · 0 评论 -
iOS开发学习之NSTimer失效、NSTimer与runloop之间的关系、解密NSTimer
1. 今天在开发的时候,遇到NSTimer无效、所以也到网上找了一些资料,看看究竟怎么回事儿、 再次也做一次分享、方便有需要的朋友。 1. NSTimer是做什么的?1.简单的理解就是一个定时器,在开发过程中,特定时间或者周期性去执行一个任务。 一次性 [NSTimer scheduledTimerWithTimeInterval:5 target:self原创 2016-06-07 11:10:32 · 3271 阅读 · 0 评论 -
iOS开发之日志框架CocoaLumberjack的配置与使用详解
源码地址: 点击打开链接1. CocoaLumberjack这个框架是做什么的? CocoaLumberjack是Mac和iOS上一个集快捷、简单、强大和灵活于一身的日志框架。CocoaLumberjack类似于流行 的日志框架(如log4j),但它是专为Objective-C设计的,利用了多线程、GCD(如果可用)、无锁原子操作Objective-C运行时的 动态特性。2.原创 2016-06-13 14:00:06 · 16025 阅读 · 0 评论 -
iOS开发之静态库的生成、静态库的合并、静态库使用
静态库的生成与使用如何利用Xcode生成静态库呢?下面一起来学习吧。首先是如何新建.a类型的静态库。首先新建一个工程,如下图,选中生成.a静态库,Snip20151226_2.png比如说叫mathTool,在然后里面封装一个两个数相加的方法。#import "mathTool.h"+(NSInteger)num1:(NSInteger)num转载 2016-07-11 10:09:17 · 7164 阅读 · 0 评论 -
iOS开发之调试技巧Xcode7中你一定要知道的炸裂调试神技、Address Sanitizer EXC_BAD_ACCESS
Xcode7中苹果为我们增加了两个重要的debug相关功能。了解之后觉得非常实用,介绍给大家。1.Address Sanitizer: 妈妈再也不用担心 EXC_BAD_ACCESS EXC_BAD_ACCESS一直是很多开发者的噩梦,因为这个错误很不直观,出现后往往要花很长时间才能定位到错误。苹果这次带来了革命性的提升。在项目的Scheme中Diagnostics下,选中enab转载 2016-07-25 11:56:17 · 2025 阅读 · 0 评论 -
聊聊iOS中的网络加密
介绍下公司的接口一般会两种协议的,一种HTTP,一种HTTPS的,HTTP 只要请求,服务器就会响应,如果我们不对请求和响应做出加密处理,所有信息都是会被检测劫持到的,是很不安全的,客户端加密可以使用我这套工具类进行处理:文章地址但是不论在任何时候,都应该将服务置于HTTPS上,因为它可以避免中间人攻击的问题,还自带了基于非对称密钥的加密通道!现实是这些年涌现了大量速成的移动端开发人员转载 2016-06-16 22:47:05 · 1935 阅读 · 0 评论 -
iOS开发之缓存框架、内存缓存、磁盘缓存、NSCache、TMMemoryCache、PINMemoryCache、YYMemoryCache、TMDiskCache、PINDiskCache
1.在项目中我们难免会用到一些缓存方式来保存服务器传过来的数据,以减少服务器的压力。 缓存的方式分为两种分别为内存缓存和磁盘缓存,内存缓存速度快容量小,磁盘缓存容量大速度慢可持久化。常见的内存缓存有NSCache、TMMemoryCache、PINMemoryCache、YYMemoryCache。常见的磁盘缓存有TMDiskCache、PINDiskCache、YYCache.1.本文章原创 2016-06-15 15:08:28 · 7089 阅读 · 0 评论 -
iOS开发之pod 安装 Realm1.0.2 失败的解决办法
报错信息如下:[!] /bin/bash -cset -esh build.sh cocoapods-setupcore is not a symlink. Deleting...Downloading dependency: core 1.3.1Downloading core failed:curl: (56) SSLRead() return error -9806原创 2016-08-03 15:54:49 · 5304 阅读 · 0 评论 -
iOS开发之安装Homebrew-OS X 不可或缺的套件管理器
1. 安装方法: 1.1 打开终端 1.2 输入: 粘贴以下脚本 /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"2. HomeBrew更多知识了解 工作方式和macport类似,也是下载sou原创 2016-08-04 13:30:21 · 875 阅读 · 0 评论 -
iOS开发之-收集的不常用却实用的小方法和技巧
1.颜色转变成图片- (UIImage *)createImageWithColor:(UIColor *)color{ CGRect rect = CGRectMake(0.0f, 0.0f, 1.0f, 1.0f); UIGraphicsBeginImageContext(rect.size); CGContextRef context = UIGraphicsG转载 2016-08-11 11:21:33 · 1003 阅读 · 0 评论 -
iOS 开发之 KVC - setValuesForKeysWithDictionary 解析神器
从字典映射到一个对象,这是KVC中的一个方法所提供的,这个方法就是 setValuesForKeysWithDictionary: ,非常好用,不需要你来一一的给对象赋值而直接从字典初始化即可,但用的不好会经常崩溃,本教程就来讨论这些使用的细节.首先,先初始化一个字典,如下所示:----------------------------------------------------转载 2016-04-25 18:36:45 · 3589 阅读 · 2 评论 -
iOS学习之数据加密
AES加密aes(The Advanced Encryption Standard)是美国国家标准与技术研究所用于加密电子数据的规范。它被预期能成为人们公认的加密包括金融、电信和政府数字信息的方法。本文展示了AES的概貌并解析了它使用的算法。包括一个完整的C#实现和加密.NET数据的举例。在读完本文后你将能用AES加密、测试 基于AES的软件并能在你的系统中使用AES加密。美国转载 2017-08-18 14:07:24 · 593 阅读 · 0 评论 -
iOS开发之如何通过路由方式进行页面间的跳转
在你的开发过程中,是否遇到过如下的需求:在tableView类型的展示列表中,点击每个cell中人物头像都可以跳转到人物详情,可参见微博中的头像,同理包括转发、评论按钮、各种链接及linkcard。跳转到任意页面产品要求,某个页面的不同banner图,点击可以跳转到任何一个页面,可能是原生的页面A、页面B,或者是web页C。在web页面,可以跳转到任何一个原生页面。在远程推送中跳转转载 2017-09-18 10:54:34 · 5404 阅读 · 0 评论 -
iOS开发之常用知识储备与开发技巧总结篇
在iOS开发中经常需要使用的或不常用的知识点的总结,几年的收藏和积累(踩过的坑)。一、 iPhone Size手机型号屏幕尺寸iPhone 4 4s320 * 480iPhone 5 5s320 * 568iPhone 6 6s375 * 667iphone 6 plus 6s plus414 *转载 2016-05-19 13:35:08 · 1953 阅读 · 0 评论 -
iOS开发之微信自动抢红包功能
最近在学习 iOS 逆向开发的时候,为了练手,开发了一个 iOS 版的微信抢红包 tweak,并且已经发布到了 Github 上面。微信抢红包 Tweak 的 Github 地址 点击打开链接但是,很多小伙伴表示不会安装,特此写了这篇iOS tweak 安装教程。说明:本篇文章只是为了说明如何在 iOS 当中安装 tweak,并不会涉及完整的逆向环境的搭建,也不会涉转载 2016-04-23 09:45:46 · 7922 阅读 · 1 评论 -
自定义UINavigationBar,出现坐标下移,UINavitionBar半透明效果
大家肯定在 自定义UInavigationBar是继承与UINavigationController,也许有的页面会出现这种半透明的效果,也许没有,尝试了太多方法,今天终于解决了,所以再次,写一点点心得。 首先我遇到这种问题,我肯定立马百度了。 然后确实也是发现了,很多答案,都是iOS7及以上系统的解决方案,当然咯,现在ios9都出来了,自然最低系统都是Ios7以上啦。所以直接吧方法拧过来,就开始原创 2015-10-08 16:17:19 · 2639 阅读 · 0 评论 -
iOS 大牛博客大全 ,iOS常用源码下载 网站大全
以下是从网上各个地方搜集到的大牛的博客网站。 OneV's Denhttp://onevcat.com破船之家http://beyondvincent.comNSHipsterhttp://nshipster.cnLimboy 无网不剩http://feeds.feedburner.com唐巧的技术博客http:/原创 2015-10-09 10:40:39 · 2422 阅读 · 0 评论 -
iOS开发 - 处理不等高TableViewCell的招术
课题一:如何计算Cell高度方案一:直接法(面向对象)嗯!Cell也是一样的,想知道cell到底有多高?直接问Cell本人就好了。直接法,就是把数据布局到Cell上,然后拿到Cell最底部控件的MaxY值。第一步:创建Cell并正确设置约束,使文字区域高度能够根据文字内容多少自动调整第一步 - 添加好约束.gif第二步:再给这转载 2015-11-27 17:55:00 · 522 阅读 · 0 评论 -
每次Xcode升级后,所有的插件都使用不鸟的解决方案Xcode7.2 Xcode7.1
本篇博客,主要是为了方便以后解决插件失效后,迅速让插件又活过来。1. 先关闭当前Xcode.2. 查看当前 Xcode 的 UUID,在终端执行defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID会得到一串 UUID 码,把这个UUID码记录下来,后面要原创 2016-03-02 09:56:57 · 736 阅读 · 2 评论 -
正则表达式简单语法以及正则表达式在iOS中的常用方式
正则表达式简单语法总结一、什么是正则表达式 从概念上来说,正则表达式也是一门小巧而精炼的语言,它可以用来简化检索特定的字符串,替换特定字符等功能,有许多开发语言工具,都内嵌支持正则表达式。那么一个正则表达式,究竟是什么?其实它就是一个字符串,但这个字符串具有特定含义。二、正则表达式的基础语法1、字面值所谓字面值,就是原创 2016-03-31 14:45:29 · 620 阅读 · 0 评论 -
IOS属性(@property)的修饰词assign、weak、strong、retain、copy、nonatomic、atomic、readonly、readwrite解释、以及一部分内存优化方法
修饰词:assign、weak、strong、retain、copy、nonatomic、atomic、readonly、readwrite其中ARC:assign、weak、strong、copyMRC:assign、retain、copy、nonatomic、atomicassign ( ARC/MRC )1.这个修饰词是直接赋值的意思 , 整型/浮点型等数据类型都原创 2016-03-23 10:26:45 · 2617 阅读 · 0 评论 -
iOS 字符串长度计算boundingRectWithSize遇到 " \r\n"的时候,后面的字符串长度返回0 在swift中使用pod导入第三方库时,注意事项
iOS 字符串长度计算boundingRectWithSize遇到 " \r\n"的时候,后面的字符串长度返回0。 在字符串显示的过程中,发现如果服务器传过来的字符串中包含了 “\r\n”就会发现这个字符串后面的字符全部看不见了,debug后发现原来是计算字符串长度时出现错误,用户输入的换行符在string中为\r\n,而iOS中无论是7.0被放弃的sizeWithFont方法还是新原创 2016-03-14 11:28:38 · 3995 阅读 · 0 评论 -
iOS开发之使用CocoaPods开发并打包静态库
这是一篇很赞的文章,特转载过来,方便以后查阅Cocoapods作为OS X和iOS开发平台的类库管理工具,已经非常完善和强大。通常我们用pod来管理第三方开源类库,但我们也极有可能会开发一个用pod管理依赖关系的静态类库给其他人使用,而又不愿意公开源代码,比如一些SDK,那么就需要打包成.a文件。本文将以一个依赖于ASIHTTPRequest的静态类库,来演示如何创建使用了CocoaP转载 2016-05-12 09:49:47 · 4032 阅读 · 0 评论 -
iOS开发之在客服开发之QQ, 在APP中打开指定qq聊天界面的方法
1. 电商,最害怕的事情就是与用户失联了。 所以即时通讯是非常重要的。 2. 微信, 现在微信已经把外部打开微信的方式全部禁用了,所以 打开是不可能的,微信只能通过加好友,才能与你的客服进行聊天3. QQ, 从外部打开指定QQ的聊天界面,是可以的,通过网页的方式。详细代码如下UIWebView *webView = [[UIWebView alloc] initWithFr原创 2016-05-27 10:33:01 · 8519 阅读 · 13 评论 -
KVC 与 KVO 全面总结
KVC, KVO作为一种魔法贯穿日常Cocoa开发,笔者原先是准备写一篇对其的全面总结,可网络上对其的表面介绍已经够多了,除去基本层面的使用,笔者跟大家谈下平常在网络上没有提及的KVC, KVO进阶知识。旨在分享交流。KVC的消息传递valueForKey: 的使用并不仅仅用来取值那么简单,还有很多特殊的用法,集合类也覆盖了这个方法,通过调用 valueForKey: 给容转载 2016-04-20 14:36:57 · 533 阅读 · 0 评论 -
OC最实用的runtime总结.
前言runtime的资料网上有很多了,部分有些晦涩难懂,我通过自己的学习方法总结一遍,主要讲一些常用的方法功能,以实用为主,我觉得用到印象才是最深刻的,并且最后两个demo也是MJExtension的实现原理,面试的时候也可以多扯点。另外runtime的知识还有很多,想要了解更多可以看我翻译的官方文档(有点枯燥),本文的demo下载地址什么是runtime?runtime 是 OC转载 2016-04-21 22:27:23 · 2654 阅读 · 1 评论 -
在iOS应用中从竖屏模式强制转换为横屏模式
在 iPhone 应用里,有时我们想强行把显示模式从纵屏改为横屏(反之亦然),有两种思路:第一种:通过人为的办法改变view.transform的属性。 具体办法: view.transform一般是View的旋转,拉伸移动等属性,类似view.layer.transform,区别在于View.transform是二维的,也就是使用仿射的办法通常就是带有前缀转载 2016-04-22 11:02:44 · 2819 阅读 · 1 评论 -
iOS开发内存优化之自动检测内存泄露,检查是否有循环引用,检查内存为何如此大,Block循环引用的检查
原文链接: https://code.facebook.com/posts/583946315094347/automatic-memory-leak-detection-on-ios/手机设备的内存是一个共享资源。应用程序可能会不当的耗尽内存、崩溃,或者遭遇大幅度的性能降低。Facebook iOS客户端有很多功能,并且它们共享同一块内存空间。如果任何特定的功能消耗过多的内存,就翻译 2016-05-18 14:20:51 · 6021 阅读 · 0 评论 -
iOS从工程中移除storyBoard,以swift为例子
我不想在超过4-5屏的项目中使用storyboards,当我新建一个项目时,我通常按照下面的步骤操作。我不想谈论storyboards本身的问题,如果你对这个话题感兴趣,推荐读这篇文章。在本文中我们将从Single View Application模板中移除storyboard,并使用导航栈来储存不限数量的视图控制器,然后模态化的显示视图页面。创建新项目创建一个新项转载 2015-11-04 15:44:24 · 725 阅读 · 0 评论