- 博客(33)
- 资源 (10)
- 收藏
- 关注
原创 cocoapods使用
cocoapods是用ruby编写的,所以,在gem仓库中可以找到cocoapods,然后通过gem来安装cocoapods。1.直接 先安装 rvm,然后使用rvm安装ruby(自带gem),然后使用gem安装cocoapods。cocoapods是用ruby写的,ruby是脚本语言,所以使用cocoapds需要安装ruby解释器。ruby安装完毕后,一般每个版本的ruby自带对应的gem工具,gem就是ruby的包管理工具。1.可以通过ruby的版本管理工具rvm/rbenv等安装ruby的不同版本。
2023-11-21 20:56:57
1023
原创 最近复习 知识点
有点杂乱,但是知识点还是值得学习的。2021-01-22Intel CISC complex instruction set computer 复杂指令集计算机 x86(32位 内存最大2的32次方 为4G),x64(64位,理论内存容量为2的64次方) Intel追求高性能ARM RISC Reduced Instruction-Set Computer 精简指令集计算机 ARM(32位)、ARM64(64位) x86 ARM追求低功耗lipo 命令 查看可执行文件 支持的CPU...
2021-03-15 19:39:56
347
原创 iOS 上接入Lottie动画 接入Json动画
iOS设备上的动画借助官方SDK:CoreAnimation那一套已经比较强大了,基本上的动效都能实现,就是1、开发这边比较累;2、安卓那边也比较累况且 俩平台最后展示的可能有些细节还不一样。借助Gif文件、视频文件等方式也有几个弊端:1文件体积比较大。2都没有官方支持。第三方库都有的。好像安卓那边接Gif不方便。那怎么办?早几年出了个动效引擎库Lottie,比较强大,好几个平台都能使用:web(h5)、iOS、Android上都有,接入简单,使用方便。吃入同一个json文件,展示相同的动画效果。满
2020-12-16 17:20:12
2498
原创 苹果内购 IAP内购 遇到的坑
首先明确 苹果商店IAP与苹果支付ApplePay不是一回事。怎么开启App的IAP功能,就不赘述了,网上一大堆。我现在这个开发已经接近尾声,但是,开发过程中对这个模块越来越熟悉,也就发现越来越多的问题。最头疼的就是在商品类型为non-renewable subscription(非自动更新订阅)类型时in_app[] 里面返回的记录太多,而类型为consumable (消耗型)的时 in_app[]里的记录可以做到只有一条,但都是没有App内的对应关系。比方场景如下1、A设备上的App..
2020-11-13 11:22:29
884
原创 Mac上搭建虚拟机 安装windows系列
MacBookPro的SSD终于坏掉了,我用了6年的电脑,里面的东西都没了。也没什么非常重要的不得了的,就算了,不花钱恢复了。维修的真是宰人,西数的SSD-512G的价格在500左右,给我要1400.要1400就算了,还tm要等了1周。我开始以为是公司跟他合作的,想着合作的就让他折腾,反正我也不急。早知道是个野鸡维修店,我TM自己动手了。Nvme协议的SSD,就跟内存条一样:插拔的,换上就好了。简单的很。总之,对这个园区的野鸡办公设备维修店没一点好感:你也就是仗着在园区吧,公司企业多,你要是在商业街,你
2020-08-28 18:38:59
2489
原创 Mac上Flutter开发 环境搭建
这里需要明确两个概念 Flutter SDK 、Dart SDK这是两个东西 我看网上也没几个人搞明白,估计搞明白了也没舍得说清楚,我反正是碰了钉子。如果只是简单的学习Dart语言,console打印,那么安装Dart SDK就够了,包含了运行时以及编译器等工具。如果想开发界面(android,iOS)那么只安装Flutter SDK也就够了,它包含了Dart SDK的功能,并且有自己的一些组建库和渲染引擎Skia。另外 IDE的话也有好几种,VSCode :Visual Studio
2020-07-30 11:37:20
601
原创 对Flutter、Dart的理解
先来个简单介绍吧,都是我网上找的,自己理解的,我需要关注的地方。什么是Flutter?一个开源的、跨平台的UI界面库,也叫框架(可以写界面也可以写简单逻辑),主要面向的移动设备,跨android、iOS两大平台,以及将来的Google的Fusia系统。也就是说界面一次编写,跨平台可用,不用维护两套代码。主要的是性能高,之前有些跨平台的移动应用框架reactnative等等吧,听说性能低下,动不动就需要调用原生平台的东西,代码也是比较混乱(猜测的,之前没把这些框架当回事,幸好没学,听说RN要完蛋了,Flu
2020-07-30 09:17:55
1123
原创 iOS LaunchImage 转LaunchScreen 2020.5.7
到2020年4月,上架APP的启动图必须使用launchscreen.storyboard,听说没有这个的不给通过审核了。赶紧更改一下,5月份要提交个新版本,这个不改其他新功能也提交不了。各种查找,尝试。最终算是弄好了,就等提交审核了。具体办法如下:1、添加LaunchScreen.storyboard文件:就是添加文件的流程。2、准备几个全屏图片:就是之前的LaunchImage,可...
2020-05-07 15:02:13
1230
原创 mac 系统 钥匙串 中看不到对应证书的私钥
前几天因为推送证书到期了,又重新折腾了一边。这个东西,一年动一次,很容易就忘记了,而且,苹果开发者中心也在不断的改变界面和流程。每次都会折腾一次。前几天这次我开始没弄好,后面有点乱七八糟的,我干脆把钥匙串里的东西全部删除清空了。好干净啊。 后来怎么好的,也不记得了。就是当时那个App弄好了,但是另外一个App的推送证书马上也到期了,今天就弄了另外一个App的推送证书,可视我在开发者中...
2020-04-07 17:45:00
3719
1
原创 UITableView 遇到大量变高 cell时,如何提高加载速度
这个其实是老生常谈了。这里不涉及cell重用机制,以及渲染(layer等)优化技巧。只是针对变高,这一个变量来说,怎么能提高页面的加载速度。当然,针对几十个cell的情况,根本无需考虑怎么优化,或者上百的定高cell也不用考虑他的速度,原来的机制肯定是感觉上可以接受的。那么在遇到大量cell的时候,它的高度计算,到底是在什么时候计算是最合适的,对于使用体验是最好的,由于iOS的...
2020-02-29 14:34:05
384
1
原创 iOS adhoc 版本App 如何制作安装
这个其实很早之前,大概在2010年的时候就搞了,后面经过xcode的n次升级,形式不断变化,并且呢,itunes后来不支持app store了,我也不需要大批量,高频次的给别人测试,后来我就没搞了。需要看demo就直接拿设备连xcode 然后 debug --run--ok了。今天心血来潮,想弄个adhoc的app装装。结果不知道如何弄了。各种查资料。最后,总结了这么几个方法。注意,这个方法只...
2020-02-22 16:46:48
3477
1
原创 坑爹的 Apple开发者种子计划
上周提交App审核,提交了几次都是几分钟就被拒。非常郁闷。我Xcode打包后,Validate也是OK的,上传也是OK的,上传后配置好等审核也是OK,就是过了几分钟立刻给来一个reject。说我是什么beta版本的东西打包的,我检查了一下 Xcode是正式的,SDK也都是正式的,不存在使用Beta版的事情,究竟是为啥?然后网上各种查:什么Archive的sechma未配置为release,什么插着...
2019-07-01 11:50:19
5213
1
原创 iOS推送
iOS的推送功能包括:远程推送以及本地推送,从iOS4到目前的iOS10,推送功能经历了多个版本的修改。现在做一个总结:基本已iOS8以及iOS10作为分界点,目前分为3个阶段,[iOS4,iOS8.0),[iOS8.0-iOS10.0),[iOS10.0-x],至于最早是不是iOS4.0开始有推送的,我不得而知,接触的最早的iOS系统就是4.0开始的。暂且这么认为吧。在第一个阶段的时候,
2017-03-14 10:05:31
644
原创 iOS上 makeObjectsPerformSelector 背后的机制
这个API本意是:让数组中的每个元素都自动执行某个方法,思路很好,代码简单,功能强大。但是,背后的机制到底是什么?怎么个执行方式?微观上到底是线性阻塞式还是定时器并发式还是轮询式?CPU的任务调度序列到底是怎么样的?最近就遇到这个事情了在某个view中,执行 [self.layer.sublayers makeObjectsPerformSelector:@selector(r
2016-08-24 14:58:11
1785
原创 iOS 开启常驻线程
iOS上开启常驻线程,有几个方式,我做了几个测试。(关于什么是常驻线程,不熟悉的同学自己脑补一下吧)1 iOS系统支持POSIX线程模型,当然就可以使用POSIX那一套线程api来开启常驻线程。void thread_fucn(void* arg){ while (1) { // doing work here ...
2016-04-13 18:39:23
4645
原创 闲聊:项目延期,怎么回事?
所有的软件项目从立项到结项,几乎都是有延期交付的情况出现,不论你在项目的实施过程多么严密的把控,几乎无一幸免。看到这里的,都是同行,你可以结合自己经历的项目回顾一下。导致这一现象的具体原因,我作为一个老鸟,以亲身经历总结大概这么几个:1需求不明确。这个是非常重要的一个原因,因为项目里所有的人,所有的工作都是围绕这个东西来推进的,所以,这个是根本,如果这个都不明确,那么其他的工作推进都会
2016-02-04 20:50:15
878
转载 Base64 编码 学习
Base64是一种用64个字符来表示任意二进制数据的方法。用记事本打开exe、jpg、pdf这些文件时,我们都会看到一大堆乱码,因为二进制文件包含很多无法显示和打印的字符,所以,如果要让记事本这样的文本处理软件能处理二进制数据,就需要一个二进制到字符串的转换方法。Base64是一种最常见的二进制编码方法。Base64的原理很简单,首先,准备一个包含64个字符的数组:['A',
2016-01-28 17:23:08
1220
原创 路由器 网关 IP 局域网组网
最近公司上网经常出问题,简单分析了一下,网络拓扑图。绘制了一个比较简单的组网图,请看。上图中,需要设置一样的地方,我都给标注了一样的颜色。可以做参考。也可能不是这样的,对于网络管理这块儿来说,我不熟悉,没当过网管。
2015-12-31 14:38:07
915
原创 iOS 语音类App播放自己的录音完毕后,如何重新继续播放音乐
前一篇文章讲述了,iOS平台如何录音,以及如何播放录音,也就是回放录音。那么,如果在你播放你的录音之前,已经有音乐类的App在后台正在播放音乐,这个时候一般的做法是先暂停音乐播放---->播放你自己的录音---->继续播放后台的音乐。其实,方法也比较简单,就几行代码如下播放之前 [[AVAudioSession sharedInstance] setActive:YES err
2015-12-30 14:05:19
9124
原创 iOS AVAudioPlayer AVAudioRecorder 录音和播放
iOS AVAudioPlayer AVAudioRecorder 录音和播放
2015-12-30 13:12:15
2999
原创 网关 是什么
网关就是网络关口设备的简称,比方一个路由器,一个交换机等都可以是网关,连接到上面的其他设备的网关就是这个路由器或者这个交换机。网关地址:其实说的是 网关设备,也就是路由器/交换机 在局域网的IP地址,他设置为哪个网段,那么连接到他上面的局域网内的其他设备的网关就是这个IP地址,并且连接的设备的IP地址必须与网关地址在同一个网段。每一个路由器/交换机,一般都会有两个设置部分:局域
2015-12-29 16:39:11
1957
原创 Mac 系统使用Git进行版本管理
关于Git的介绍,网上一大堆,基本上来就是撕逼SVN的。我想说SVN你都用过它的几个命令啊?被喷的一文不值似的。近几年几乎一直是 一个人开发,所以,神马冲突之类的几本没遇到,SVN用的挺好,很有可能就是因为我几乎只用几个命令就完成我的需求了:更新,提交,做分支,就完事儿了。但是,挡不住逼格诱惑,都说Git如何如何。。好吧,我也来武装一下自己的逼格。一般安装了Xcode就自带
2015-12-25 15:26:40
8359
原创 iOS 页面组织 显示规则
画了一个简单的组织结构 示意图,看图说话1 每个App必须有一个window用于展示页面。2 每个App的这个window必须有一个rootViewController,用于直接/非直接管理后续的ViewController。3 显示规则:系统将正在显示的页面 挂载到window上,用于展示。而不展示的页面,则会从window上暂时移除(其window为nil,而他
2015-12-17 18:13:59
663
原创 iOS NSURLSession 学习(2)
到底NSURLSession是怎么工作的?我做了个实验,如下图,感兴趣的同学可以自己查看分析组织自然语言是程序员的弱点,我就罗列几个结论吧1 瞬间给NSURLSession添加5个下载任务,那么他会启动几个任务呢,从log看,大概是4个,我让程序跑了几分钟,任务都没完成的时候,始终没有 task 5出现。2 同一个Task,接收到数据-->写入缓存-->回调(注意顺序)
2015-12-11 18:28:49
579
原创 iOS GCD 学习
iOS开发中,多线程应用方式一般有如下几种1 比较高层的,封装好的API:NSThread。用来创建非常驻线程以及常驻线程,默认支持NSRunLoop机制。2 比较高层的,封装好的API:NSOperation。用来管理他的是NSOperationQueue。每一个NSOperation都是一个独立的线程。同样你可以设置其为常住线程比方while(1)这种恶心的代码。3 比较底层的,简
2015-12-11 16:34:37
896
原创 iOS NSURLSession 学习(1)
如果服务器是Web服务器,上传下载文件的时候一般用HTTP协议来做。iOS7.0以后,官方建议使用NSURLSession来做。一直没有时间仔细学习,看了下这个模块的一些类,开始觉得有些复杂,先画个类图,从图形上直观的感受这个模块中类之间的关系,类图工具使用的是 http://uml.riaoo.com/ 感谢作者。
2015-12-11 11:49:24
463
原创 iOS 中 objectForKey与valueForKey 的区别
今天看到了这个东西,一直以来也不清楚,所以valueForKey基本不用。但是,又比较好奇,想搞清楚,就查了一些资料,算是理解了。objectForKey:是NSDictonary的API,用于获取这个HASH表中的某个key对应的对象,从NSDictionary的定义来看,这个Key可以是任何NSObject,不一定非得是NSString对象。这一点,大家可以验证,从而引发另
2015-12-10 09:37:25
6217
转载 IOS中如何Hook消息
转载 http://www.cnblogs.com/smileEvday/archive/2013/02/28/Hook.html我们都知道在windows下可以通过API轻松的hook很多消息,IOS里面貌似还没有现成的API(可能是我还没发现吧),前段时间碰巧看到Objective-C运行时的一些东西,于是心想着是不是可以尝试一下实现hook的功能。 为什么要ho
2015-06-26 16:28:06
598
VCGDI+图像+文字模拟图层
2010-10-09
VC++动态链接库(DLL)编程深入浅出(汇总+全部源码)
2008-02-19
MFC技术内幕系列完整版
2008-01-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人