iOS 综合专辑
文章平均质量分 90
酒茶白开水
这个作者很懒,什么都没留下…
展开
-
iOS APP上架问题总结
最近公司的活比较少,空闲时间十分多,遍寻思着写一款APP。由于最近几年工作内容都是写SDK,很久没有上架APP了,很多东西都忘记和生疏。我这次上架APPStore遇到的问题做了一个记录总结目前写的这个是本地阅读软件,后续会把在写这个APP用到的技术以及遇到的问题都整理出来,通过博客的形式分享给大家。奇迹读书地址第一次提交给我来了个2.1:由于我是在阅读页面默认隐藏导航栏、禁用返回手势的。需要点击屏幕中心区域才显示导航栏、激活返回手势。可能对新用户的确是有点不友好。回复消息告知审核人员返回方式。原创 2023-03-17 01:28:34 · 680 阅读 · 0 评论 -
iOS 加解密
示例代码 MD5加密 MD5加密的特点: 不可逆运算 对不同的数据加密的结果是定长的32位字符(不管文件多大都一样) 对相同的数据加密,得到的结果是一样的(也就是复制)。 抗修改性 : 信息“指纹”,对原数据进行任何改动,哪怕只修改一个字节,所得到的 MD5 值都有很大区别. 弱抗碰撞 : 已知原数据和其 MD5 值,想找到一个具有相同 MD5 值的数据(即伪造数据)是非常困难的. 强抗碰撞: ...原创 2019-08-14 15:50:33 · 805 阅读 · 0 评论 -
Objective-C高级编程笔记三(GCD)
示例代码下载 概要 CGD是异步执行任务的技术之一,一般将引用程序中记述的线程管理用的代码在系统级中实现。开发者只需要定义想执行的任务并追加到Dispatch Queue中,GCD就能生成线程并计划执行。由于线程管理是作为系统的一部分实现的,因此可统一管理,也可执行任务,这样比直接使用线程更有效率。 多线程程序可以在某个线程和其他线程之间反复多次进行上下文切换,因此看上去好像一个CPU能够并列的执...原创 2019-04-04 15:36:42 · 284 阅读 · 0 评论 -
Objective-C高级编程笔记二(Blocks)
示例代码下载 Blocks概要 Blocks是c语言的扩充功能:带有自动变量(局部变量)值的匿名函数。 语法 完整的语法形式: ^ 返回值类型 (参数列表) {表达式} 省略返回值的语法形式: ^ (参数列表) {表达式} 省略参数的语法形式: ^ 返回值类型 {表达式} ^ int (int a, int b) { return a + b; }; ^ (int a, int b) { pri...原创 2019-04-04 15:34:11 · 257 阅读 · 1 评论 -
Objective-C高级编程笔记一(自动引用计数)
示例代码下载 手动引用计数 MRC内存管理的思考方式 自己生成的对象自己持有 不是自己生成的对象,自己也能持有 不在需要自己持有的对象时释放 不是自己持有的对象无法释放 对象操作与Objective-C方法的对应 对象操作 Objective-C方法 生成并持有对象 alloc/new/copy/mutableCopy等方法 持有对象 retain方法 释放对象 rel...原创 2019-04-04 15:31:19 · 225 阅读 · 0 评论 -
发布一个支持CocoaPods的github库
制作一个github项目库 新建github代码仓库 登录github,点击右上角+号,接着点击创建代码仓库,如下图: 填写仓库名称、描述,选择公私有、README初始化,添加忽略文件、license文件。如下图: 说明: - 忽略文件是用来说明此仓库那些文件是不需要管理的,通常是忽略一些中间文件、临时文件。 - license文件,CocoaPods强制要求所有的...原创 2018-06-28 20:37:43 · 344 阅读 · 0 评论 -
iOS 网络层架构
前言 在此所说的网络层架构,无非就是针对iOS网络请求的现状与问题,做出相应的解决方案。 iOS网络请求的现状与问题 网络接口规范化:所谓的规范、没有什么一定的规范,每个人都有每个人的规范,无破不立,也总会有不在规范之类的。虽然网络接口规范化能带来很多好处,可是开发中往往会遇到特例。很多时候,我们无法要求别人要怎样配合自己。那么唯有灵活多变,而又方便易用的网络框架被提到日程上来了。 网...原创 2018-06-28 20:34:38 · 1312 阅读 · 0 评论 -
iOS MVVM之从理论到实践
iOS UI设计模式 MVC 模式 MVC 概念 Modal 模型对象:模型对象封装了应用程序的数据,并定义操控和处理该数据的逻辑和运算。模型(Model)实际上考虑的是“什么”的问题,即你的程序是什么?以纸牌匹配游戏为例子,模型就是设计这个游戏怎么玩,花色匹配,数值匹配得多少分,等逻辑问题。以及这个游戏里的类,如:纸牌,牌堆等类都属于模型里面的东西。以上都是独立于UI且在模型...原创 2018-05-23 18:06:33 · 9215 阅读 · 1 评论 -
iOS MVVM之ReactiveCocoa
概述 ReactiveCocoa:函数响应编程(Functional Reactive Programming, FRP)框架,目的就是定义一个统一的事件处理接口,这样它们可以非常简单地进行链接、过滤和组合。 函数式编程:利用高阶函数,即将函数作为其它函数的参数。 响应式编程:关注于数据流及变化的传播。 添加ReactiveCocoa框架 ReactiveCocoa框架的添加最方便是使原创 2018-01-25 16:06:30 · 362 阅读 · 0 评论 -
iOS socket网络编程
代码下载服务端代码下载地址 客户端代码下载地址相关概念 socket是一个针对TCP和UDP编程的接口,你可以借助它建立TCP连接等。socket是对TCP/IP协议的封装,Socket本身并不是协议,而是一个调用接口(API),通过Socket,我们才能使用TCP/IP协议。Socket的出现只是使得程序员更方便地使用TCP/IP协议栈而已,是对TCP/IP协议的抽象,从而形成了我们知道的一些最原创 2017-03-16 16:16:26 · 2044 阅读 · 1 评论 -
iOS 多任务下载(支持离线)
代码下载代码下载地址效果展示分析说到iOS中的下载,有很多方式可以实现,NSURLConnection(已经弃用)就不说了,AFNetworking也不说了。我使用的是NSURLSession,常用的有3个任务类,NSURLSessionDataTask、NSURLSessionDownloadTask、NSURLSessionUploadTask,它们都继承自NSURLSessionTask。很明原创 2017-03-30 13:13:12 · 5828 阅读 · 3 评论 -
MapKit 地图使用
代码下载地址:这里写链接内容 github地址:这里写链接内容一.MKMapView基本使用MapKit 地图开发需要依赖位置信息,所以需要允许访问用户位置信息,具体设置见前面博客。 MKMapView的其他设置如下: //设置用户的跟踪模式-即用户的位置(默认不跟踪) [self.mapView setUserTrackingMode:MKUserTrackingModeFoll原创 2016-05-27 13:13:03 · 642 阅读 · 0 评论 -
定位、地理编码、逆地理编码
先看效果代码下载代码下载请猛戳这里!再看代码 - (CLLocationManager *)locationManager { //是否允许定位 /** * [CLLocationManager locationServicesEnabled] 确定用户是否已启用位置服务。 * [CLLocationManager authorizationStatus] 返原创 2016-05-03 14:21:02 · 2799 阅读 · 0 评论 -
tableViewCell自适应高度(QQ聊天室模拟)
先看一看效果吧! 废话不多说直接上代码代码下载请猛戳这里先看一看代码结构图: MessageModel代码:#import "MessageModel.h"@implementation MessageModel /** * 类方法创建一个消息模型实例 * * @param dic 描述模型的字典 * * @return 消息模型实例 */ + (instancet原创 2015-08-26 17:56:02 · 1151 阅读 · 0 评论 -
IOS中UILabel排版
#import "ViewController.h" @interface ViewController () @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; //1.普通 UILabel *label = [[UILabe原创 2015-01-16 11:16:13 · 1714 阅读 · 0 评论 -
ios相机和图片
iOS原创 2014-12-26 18:15:44 · 447 阅读 · 0 评论 -
iOS8本地通知(详细分析)
文件一:ViewController.m /* iOS8的本地通知: 1.本地通知的类型: Alert or Banner:通知可以用alert或者banner来显示,这取决于用户在设置中得选择。他们都应当包含通知的消息(当然是可以本地化的)。 声音(Sound):当一个通知被送达时,你可以‘告诉’iOS播放一段自定义或者系统默认的声音原创 2015-01-14 15:29:18 · 709 阅读 · 0 评论 -
MJRefresh实例练习
#pragma mark - 获取随机数 #define RandomData [NSString stringWithFormat:@"随机数据---%d",arc4random_uniform(10000)] #import "MyViewController.h" #import "MJRefresh.h" @interface MyViewController ()原创 2014-12-16 21:13:20 · 838 阅读 · 0 评论