
iOS进阶
文章平均质量分 84
哎呦喂lly
这个作者很懒,什么都没留下…
展开
-
AWSS3 iOS 认证方法-V4认证
AWSS3 v4 认证原创 2023-01-18 09:55:19 · 3608 阅读 · 0 评论 -
AWSS3 iOS SDK使用教程
iOS AWSS3 SDK使用教程原创 2023-01-17 13:50:36 · 3233 阅读 · 0 评论 -
蓝牙指令解析
蓝牙指令解析本篇从如下三个方面介绍通过data如何与蓝牙进行通讯。字节高低位及运算蓝牙特征的属性及作用CRC16校验常用算法及实现字节高低位及运算1byte的范围为0-255,两个16进制的字符表示的范围(15*16+15)为0~255,故一字节等于两个16进制的字符.字节高低位的概念蓝牙通信规约中,一般会说明一个信息占用多少个字节,同时会说明高位在前还是低位在前。一般,...原创 2019-03-15 15:51:54 · 4862 阅读 · 0 评论 -
iOS 网络层设计
网络层设计iOS项目架构iOS的项目架构一般设计为这几层,即UI层、服务层、数据层,以及第三方依赖层。UI层:主要管理项目中的所有UI界面,根据模块进行划分,如:登录模块,首页模块,搜索模块等等,还包括通用控件模块。服务层:基于各模块创建的服务于各模块的服务类,各模块的服务类之间相互独立,如果存在相互调用的情况,就将此抽象出来,设置到数据层中。UI层只负责UI的渲染和交互,数据之间的逻辑...原创 2019-03-15 14:09:31 · 586 阅读 · 0 评论 -
iOS单例继承
iOS单例创建和继承单例一般来说,在iOS的工程中, 通用的tool一般都会设计成单例,这样能保证在程序运行过程中,程序中只有一个单例对象,方便数据的传输和处理。如果为了扩展此单例类,希望在此基础上增加面向各模块专用的单例方法,该如何处理呢。可以采用的方法有两种:分类:可以针对各个模块创建对应的分类,并添加方法。缺点是不能继承原有单例的属性。继承:也可以针对各个模块创建出对应的子类,...原创 2019-03-15 14:07:05 · 447 阅读 · 0 评论 -
Xcode中的Crash信息获取和定位
Xcode的打包上架工具会自动收集APP发生的crash信息,并详细的说明发生的次数和发生的位置。同时还能够快速的定位到错误的代码位置。步骤如下:1、打开Xcode,选择window->organizer,就能打开打包的工具。2、打开打包工具,会看到选项archives和crashes3、选择crashes,左侧选中要查看的app,再点击release,选择线上的...原创 2017-02-24 20:59:46 · 2866 阅读 · 1 评论 -
键盘基础
键盘键盘处理在iOS开发中经常用到,尤其在经常性输入内容的应用中。 和键盘联系紧密的控件有:UITextfield、UITextView。 键盘的监听通过通知来进行,监听的通知name如下://键盘将要出现UIKIT_EXTERN NSNotificationName const UIKeyboardWillShowNotification;//键盘出现UIKIT_EXTERN NSNot原创 2017-03-16 20:51:41 · 282 阅读 · 0 评论 -
在多个UITextField中监听键盘的弹出和消失
键盘应用一:在多个UITextField中监听键盘的弹出和消失页面中存在多个UITextField的监听难点在于判断当前点击的textField是哪一个。声明全局属性:selectedTextField通过UITextFieldDelegate的方法获取选中的textField: <ul><li>(BOOL)textFieldShouldBeginEditing:(UITextField原创 2017-03-16 21:20:10 · 994 阅读 · 0 评论 -
在tableView中监听cell上textField的点击和键盘通知
在tableView中监听cell上textField的点击: 如下图: * 方案一:如何确定点击的cell在tableView中的frame苹果API中有关于点击cell时获取cell在tableView中的位置的方法: CGRect cellFrame = [tableView rectForRowAtIndexPath:indexPath]; 在tableView的点击方法原创 2017-03-16 22:02:47 · 2774 阅读 · 0 评论 -
textView的编辑页面控制键盘和textView
textView的编辑页面控制键盘和textView这种编辑页面一般存在两个问题: 1. textView的frame为页面的bounds,这样点击编辑的时候,如果输入的字数很多,键盘就会遮挡到文字,用户就看不到这在输入的文字了。 2. 如果textView上有很多文字,点击某一行,键盘弹出,键盘也会遮挡到文字,如何让页面恰好移动到键盘的上面。解决思路: 点击textView,键盘弹出时,改变原创 2017-03-17 16:37:13 · 736 阅读 · 0 评论 -
AVPlayer的用法
AVPlayer的用法基本概念:AVPlayer的组成:AVPlayerAVPlayerItemAVPlayerLayerAVPlayer:控制播放过程,相当于ViewController AVPlayerItem:提供播放的资源,相当于Model AVPlayerLayer: 显示播放的播放器,相当于View创建过程使用AVPlayerItem创建AVPlayer,使用创建好的AVPl原创 2017-07-21 16:57:15 · 2937 阅读 · 0 评论 -
iOS系统加密函数详解
iOS系统加密函数详解加密的种类单向加密通过对数据进行摘要计算生成密文,密文不可逆推还原,如:MD5、SHA、Base64双向加密与单向加密相反,可以把密文逆推还原成明文,双向加密又分为对称加密和非对称加密对称加密数据使用者必须拥有相同的秘钥才可以进行加密解密。如:DES、3DES、AES、IDEA、RC4、RC5非对称加密相对对称加密,无需拥有同一组密钥。非对称...原创 2019-03-15 11:47:48 · 1189 阅读 · 0 评论 -
友盟崩溃信息定位
一般来说,产品上线后或多或少都会一些在测试过程中极难发现的bug存在,而引起程序的崩溃,影响用户的体验。除了苹果自身收集crash信息外,基本上用的最多的就是友盟了。然而友盟的崩溃信息我们如果不借助工具,是很难定位到具体的类和行的。今天就要说说如何定位到具体的类,类中的哪一行出现了crash,并结合友盟的提示,快速的解决bug。1、Xcode设置确定打包的同时生成dSYM文件B原创 2017-02-23 21:17:08 · 1659 阅读 · 0 评论 -
Xcode使用Profile的leaks检测内存泄露
在Xcode中提供了两种工具来优化程序:Analyze和ProfileAnalyze是静态分析工具,通过Product→Analyze进行静态分析,不需要真机,在Xcode中只分析代码逻辑;Profile是动态分析工具,这个工具叫“Instruments”,通过Product→Profile启动。启动Profile需要在真机上进行,模拟器是不能真实的反馈出程序运行的一系列需要优化的地方转载 2017-03-01 16:51:06 · 2576 阅读 · 0 评论 -
使用Analyze静态分析代码
在Xcode的工具栏中,有一个Product,Product里面的工具,可以说是Xcode中比较强大的,工程性能的调优都依赖于这些。这篇就简单说下Analyze,毕竟现在都用ARC开发,如不使用CoreFoundation开发,内存泄露的情况不容易发生。Analyze主要的作用有:内存泄露检查 Memory Error逻辑错误检查 Logic Error声明错误检查 D原创 2017-03-01 14:54:15 · 1394 阅读 · 0 评论