iOS
文章平均质量分 85
Z苗
这个作者很懒,什么都没留下…
展开
-
iOS https证书双向认证的实现机制
文章目录原理单向认证流程双向认证流程证书生成生成自签名根证书生成自签名服务器端证书生成自签名客户端证书AFNetworking对于证书的校验机制原理双向认证,顾名思义,客户端和服务器端都需要验证对方的身份,在建立Https连接的过程中,握手的流程比单向认证多了几步。单向认证的过程,客户端从服务器端下载服务器端公钥证书进行验证,然后建立安全通信通道。双向通信流程,客户端除了需要从服务器端下载...原创 2020-01-19 17:37:51 · 5742 阅读 · 0 评论 -
iOS中常见的几种加密方式总结
前言随着Internet网的广泛应用,信息安全问题日益突出,当今网络应用的数据不仅仅是强调对数据本身的保护,还有是在处理大量的并发请求时对Qos和服务器稳定的考虑。如图加解密常用代名词对称加密简介:他的加密和解密秘钥相同特点:...原创 2020-01-09 23:19:50 · 4533 阅读 · 0 评论 -
接口编程那些事(或者面向协议编程)
关注具体的接口,而不是实现类原创 2019-12-20 19:13:40 · 2276 阅读 · 0 评论 -
Ios Cookie和Session
Cookie的工作原理前言:http是无状态的,这是什么意思呢?就是说,在没有cookie之前,你第一次访问这个页面和第二次访问这个页面,服务器是不知道的,不知道前一次是你。那么问题来了,我怎么登录,登录成功后,刷新下,服务器就不认识我了,不展示我的信息了,这怎么能行,于是cookie就产生了原理:cookie就像服务器给用户贴的标签,用户访问一个web站点时,这个web站点就可以...原创 2019-12-03 14:56:23 · 1151 阅读 · 0 评论 -
使用CFArray保持对象的弱引用
创建CFArray对象NSMutableArray *array = (__bridge_transfer NSMutableArray *)CFArrayCreateMutable(nil, 0, nil);需求有很多类需要加通知,通知更新视图,把所有的通知都添加到一个单利的数组里面,遍历数组去执行视图的更新,用NSArray 管理对象循环引用用NSArray 里面放通知的对...原创 2019-11-27 18:52:48 · 2171 阅读 · 0 评论 -
Ios - 关于ios13 创建WKWebView 打包平台闪退的问题
问题:iOS13 打包闪退了关于WKWebView 创建原创建代码:WKWebView *wkWebView = [[WKWebView alloc] init];更改之后的代码:WKWebViewConfiguration *config = [[WKWebViewConfiguration alloc] init]; WKWebView *wkWebView = [[WKW...原创 2019-11-15 18:43:08 · 3032 阅读 · 0 评论 -
iOS-UIImage imageWithContentsOfFile 和 imageName 对照(图片加载的内存及优化)
1.官方文档的解释imageNamed: 把image缓存到内存里面,此方法在系统缓存中查找具有指定名称的图像对象,并返回最适合主屏幕的图像变体。如果匹配的图像对象尚未在缓存中,此方法将定位并从磁盘或可用资产目录加载图像数据,然后返回结果对象。系统可以在任何时候清除缓存的图像数据以释放内存。仅对缓存中但当前未使用的图像进行清除。imageWithContentsOfFile:或i...原创 2019-03-11 17:20:53 · 2793 阅读 · 0 评论 -
IOS 用组件化映射的关系表维护列表(后台下发不同的字段,创建不同的类的优化)
问题:根据后台下发不同的字段,来创建和跳转不同的类(比如支付宝动态菜单的跳转)**方案:**这里考虑register的形式,维护一份列表原创 2019-03-19 18:55:59 · 942 阅读 · 0 评论 -
iOS开发之静态库—— 图片、界面xib等资源文件封装到.a静态库
公司的一个项目,需要做成一个.a静态库供别人调用,但是静态库中引用到了图片和xib1.打开Xcode,点击File\New\Project,选择iOS\Framework and Library\Cocoa Touch Static Library新建一个静态库工程.2.导入你的项目(包括项目里面所有的功能类和资源文件)1》对于图片,建议不要把存放图片的Assets.xcassets文件直...原创 2019-03-07 17:12:26 · 2377 阅读 · 0 评论 -
ios This application's application-identifier entitlement does not match that of the installe
Xcode编译报错:This application’s application-identifier entitlement does not match that of the installed application. These values must match for an upgrade to be allowed.原因:两次编译的用的证书不一致。解决:把之前装的app卸载...原创 2019-03-07 17:10:45 · 3754 阅读 · 1 评论 -
iOS 如何把图片资源或者xib文本文件,打包成bundle文件及遇到的坑(详解)
1、Bundle 文件Bundle 文件,简单理解,就是资源文件包。我们将许多图片、XIB、文本文件组织在一起,打包成一个 Bundle 文件。方便在其他项目中引用包内的资源。2.Bundle 文件是静态的,也就是说,我们包含到包中的资源文件作为一个资源包是不参加项目编译的。也就意味着,bundle 包中不能包含可执行的文件。它仅仅是作为资源,被解析成为特定的 2 进制数据。2、制作 Bun...原创 2019-03-08 18:41:18 · 2642 阅读 · 0 评论 -
iOS 报错 Undefined symbols for architecture x86_64:解决方法
一,报错详情Undefined symbols for architecture x86_64:“OBJC_CLASS$_Person”, referenced from:OBJC_CLASS$_Dog in Dog.oobjc-class-ref in ViewController.o“OBJC_METACLASS$_Person”, referenced from:OBJC_MET...原创 2019-03-26 14:09:42 · 4896 阅读 · 0 评论 -
【解决方法】ld: warning: directory not found for option
问题及解决方法简单来说,这个问题分两个方面。错误如下,这表示是查询 Library 的时候出现的异常。“directory not found for option '-L/…”解决方法:依次 Project -> targets -> Build Setting -> Library Search Paths删除里面的路径错误如下, 这表示是查询 F...原创 2019-03-26 14:23:24 · 4415 阅读 · 0 评论 -
Ios Keychain《二》的三种使用方法
demo下载上一篇介绍了Keychain的基本内容接下来介绍三种的使用keychain的使用这里总结keychain三个使用方法,分别是苹果官方的KeychainItemWrapper第三方封装sskeychain通过Security.framework框架使用这三个方法我最推崇的是使用sskeychain这个封装的方案,更加简单方便,下载和使用地址在后面,现在开始说下每一个方法...原创 2019-05-30 20:32:58 · 3755 阅读 · 0 评论 -
objective-C管理内存
1.oc 没有垃圾回收机制,而是引用计数模型,使用retain 和 release 控制对象,以避免内存泄漏,如果retain 一个对象,那么它的引用计数增加,这个计数表示有多少对象引用了改对象,如果不在需要一个对象,可以发送一个 release.引用计数为零时这个对象会被销毁当我们init 一个对象,引用计数曾1,当被释放掉,引用计数再次归零,手动retain/release 可能引入...原创 2019-07-01 23:28:34 · 718 阅读 · 0 评论 -
ios 应用安全
一:安全模型1.沙盒机制(1)钥匙串APIIos提供了钥匙串API来储存少量机密信息,开发者可以用来储存密码,加密秘钥以及那些不能被其他应用访问的敏感信息。调用钥匙串API主要通过securityd守护进程来完成,从SQLite数据库中提取数据,我们可以指定应用在什么情况下应用可以读取秘钥,这和数据保护API 类似。(2)数据保护API数据保护API利用文件系统加密,钥匙串和用户密码,提...原创 2019-06-30 16:50:33 · 1435 阅读 · 0 评论 -
JS字符串转换为JSON的四种方法笔记(如何给客户端JSON字符串而不JSON对象)
前提:今天跟web页面调js 它使用了eval方式解析方式的解析给我的是一个JSON对象,而不是JSON字符串代码如下function sendMSGPDF(){ return '{"strContents":"'+varpdfbase64.base64Img+'"}';}但是iOS客户端要的是JSON字符串这样客户端拿到它转化不了字典先来说一说JSON对象和JSON字符串的区别...原创 2019-07-15 15:08:29 · 4110 阅读 · 0 评论 -
iOS事件的传递和响应机制 - 原理
前言按照时间顺序,事件的生命周期是这样的:事件的产生和传递(事件如何从父控件传递到子控件并寻找到最合适的View,寻找最合适的view底层实现,拦截事件的处理)->找到最合适的view后的事件处理(touches方法的重写,事件的响应)重点难点: (1) 如何找到合适的View ...原创 2019-09-10 17:25:35 · 826 阅读 · 0 评论 -
ios 图片资源管理的四种方式(Assets,bundle文件,Resource,沙盒文件目录下)
Assets.xcassets一般是以蓝色的Assets.xcassets的文件夹形式在工程中,以Image Set的形式管理。当一组图片放入的时候同时会生成描述文件Contents.json。且在打包后以Assets.car的形式存在,不能打开(网上有工具ThemeEngine可以打开,感兴趣的可以测试)。以此方式放入的图片并不在mainBundle中iOS 开发中一般在工程内导入两...原创 2019-03-08 17:54:03 · 25131 阅读 · 1 评论 -
iOS 引用外部静态库(.a文件)时或打包.a时,Category方法无法调用。崩溃,静态库所用到的第三方不打到静态库,防止导入工程文件冲突
我的这个是MJRefresh,学习打.a包Terminating app due to uncaught exception ‘NSInvalidArgumentException’, reason: ‘-[UITableView setMj_footer:]: unrecognized selector sent to instance 0x7fa37a871000’结果这个问题如下设置:...原创 2019-03-05 16:26:56 · 2127 阅读 · 0 评论 -
iOS IOS开发中各种型号的分辨率总结
iPhone:iPhone 1G 320x480iPhone 3G 320x480iPhone 3GS 320x480iPhone 4 640x960iPhone 4S 640x960iPhone 5 640x1136iPhone 5S 640x1136iPhone 5C 640x1136iPhone 6 750x1334iPhone 6 Plus 10...原创 2018-09-17 14:39:44 · 4044 阅读 · 0 评论 -
极光推送开发者证书
极光推送的开发者证书,生产者证书,一定要记住开发者证书用于调试,生产者证书用于发布,以及在极光推送中遇到的问题原创 2016-10-17 16:31:21 · 3939 阅读 · 3 评论 -
检测App 更新提示用户是否更新
检测App 更新提示用户是否更新注意: !!!!!苹果规定了app里不能出现更新、版本之类的东西 解决方案: 你可以做个动态控制 就是单独写个接口 让后台给你传个固定的值 你加判断 只要是这个值 就隐藏 不是 就开开 我这边就是这样弄的 审核之后再打开这个接口代码: 通常iOS系统中是默认设置再wifi状态,且网络状况良好下自己更新应用的. 但是如果用户设置了不原创 2017-04-01 11:29:31 · 3768 阅读 · 1 评论 -
更改UITextField的placeholder文字颜色的5种方法
更改UITextField的placeholder文字颜色的5种方法想要达到的目标是:一个页面上有多个UITextField,当用户聚焦某textField时,该文本框的placeholder的文字会灰色变为白色,当文本框失去焦点时,placeholder颜色从白色再变回灰色。1.放置UILabel最简单最笨的方法是在每个textField里放一个UILabel来充当placeholder,当该te原创 2017-04-01 09:47:33 · 1826 阅读 · 1 评论 -
.pch 文件路径的问题
.pch 的问题/Users/apple/Desktop/钱来钱往/钱来钱往APP/qlqw框架/qlqw2/qlqw/AppDelegate.h:10:1: Duplicate interface definition for class ‘AppDelegate’/Users/apple/Desktop/钱来钱往/钱来钱往APP/qlqw框架/qlqw2/qlqw/AppDelegate.h:1原创 2016-10-18 14:41:47 · 1409 阅读 · 0 评论 -
iOS icon 的设置与启动页的设置
iOS icon 的设置与启动页的设置 1.icon的设置步骤1.在Assets.xcassets中创建 AppIcon,并向其中添加图片 步骤2先看苹果的管网图,如果你的Xcode 出现了这样的问题 xCode会给出相应的警告,最近遇到一个问题就是A 76x76 app icon is required for iPad apps targeting iOS 7.0 and lat原创 2016-10-18 14:28:17 · 3495 阅读 · 2 评论 -
极光推送证书
极光推送的开发者证书,生产者证书,一定要记住开发者证书用于调试,生产者证书用于发布原创 2018-09-17 14:44:38 · 1026 阅读 · 0 评论 -
iOS数字金额转化为大写汉字(阿拉巴数字转化为汉字)
+ (NSString *)convertAmount:(NSString *)amountString{ if (!amountString || ([amountString doubleValue] == [@"0.00" doubleValue])) { return @&quo原创 2018-07-30 15:56:41 · 3703 阅读 · 0 评论 -
iOS 获取手机IP 地址
#import <ifaddrs.h>#include <arpa/inet.h>#include <net/if.h>//获取IP地址+(NSDictionary *)getIPAddress{ //无线 NSString *wifilocalIP = @""; //卡原创 2018-07-27 17:10:58 · 2586 阅读 · 0 评论 -
YYLabel 自动布局 HTML字符串转富文本和 富文本文字点击事件
1.HTML字符串转富文本在写一个IOS的APP时,有一部分片段是HTML字符串,这时候我们需要转化为可变的NSMutableAttributedString并且识别里面的超链接,。代码如下#pragma mark - HTML转变String-(NSMutableAttributedString *)p_htmlChangeString:(NSString *)aStr...原创 2018-07-23 17:01:55 · 6589 阅读 · 0 评论 -
改变UITextField的placeholder文字的颜色
更改UITextField的placeholder文字颜色的5种方法想要达到的目标是:一个页面上有多个UITextField,当用户聚焦某textField时,该文本框的placeholder的文字会灰色变为白色,当文本框失去焦点时,placeholder颜色从白色再变回灰色。1.放置UILabel最简单最笨的方法是在每个textField里放一个UILabel来充当pla...原创 2018-09-17 14:48:00 · 1777 阅读 · 0 评论 -
iOS12 iphoneXS iphoneXSMax IphoneXR 已经Xcode10 的适配总结
ios 12正式发布之后,我们也面临着一些兼容的一些问题适配,总结了以下几个方面iOS12 适配相关1.iOS 12系统版本号判断的增加: 2. iOS12新功能将释放Siri潜力 借助Shortcuts ...原创 2018-09-17 16:03:06 · 6898 阅读 · 0 评论 -
iOS12正式版:支持Siri捷径
在整个iOS 12苹果还针对AI智能语音进行了特别优化,主打的正是Siri捷径功能,这一功能基于Workflow应用开发,用户可以通过Siri来语音操控一些第三方的App,目前iPhone用户可以用过升级公测版访问设置Siri,查看和开启一部分Siri捷径,而在后期Siri捷径这个功能将被苹果做成一个单独的App,除了iOS的其他系统也能使用。...原创 2018-09-19 14:55:39 · 5564 阅读 · 0 评论 -
iOS Siri调用自己应用的视频呼叫功能
使用Siri打开自己的应用并触发自己应用的呼叫视频或者语音功能1.使用Siri这个功能,首先要引入SiriKit这个扩展程序(App Extension).1.创建一个应用扩展.在自己的项目下,通过 file->new->target->Intenst Extension. 而在next 后,Product name 设置扩展程序名字,Project选项看是自己的项目...原创 2018-09-14 16:47:11 · 1998 阅读 · 0 评论 -
ios12 siri 语音识别
原理:先用系统的录音器录音,让后让siri识别语音转文字第一步 :在项目plist文件添加授权如图第二步:导入头文件,添加协议#import <Speech/Speech.h>#import <AVFoundation/AVFoundation.h>第三步:UI控件,实现siri识别方法,代码如下:@interface ViewContro...原创 2018-09-20 15:06:36 · 3201 阅读 · 0 评论 -
Xcode 10 官方直接下载地址
Xcode 10https://download.developer.apple.com/Developer_Tools/Xcode_10/Xcode_10.xipXcode 9.4https://download.developer.apple.com/Developer_Tools/Xcode_9.4/Xcode_9.4.xipXcode 9.3http://adcdownload....原创 2018-10-23 18:50:56 · 15405 阅读 · 0 评论 -
iOS闪退的原因和方案总结
1.字典1.通过key值得到安全的value值,字符串(NSString)或数组(NSArray)数据为NUll 崩溃以下收集的崩溃原因,大家会觉得怎么也不会犯这错误,举个例子,我下面所写的 NSDictionary *dic = @{@“key”: nil}; 大部分可能认为他会崩溃,非常小心, 如果是NSDictionary *dic = @{@“key”: str} 这种写法,大家有可能...原创 2019-03-05 14:40:12 · 10198 阅读 · 1 评论 -
iOS 自定义一些安全接口(比如字典取值或者说数组取值)
我们知道有时候后抬给我们的类型,我们iOS语言可能很难识别所以导致崩溃或者说数组越界等等都会导致,我们一般在写项目的时候会自定义一些安全的接口。1.数组取值的安全接口(使用扩展)/** * 在数组中根据索引查找对象 * * @param index 索引 * * @return 查找的数据 */- (id)objectAtIndex_zmm:(NSUInteger)i...原创 2018-07-24 10:50:51 · 3111 阅读 · 0 评论