![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ios
文章平均质量分 62
我用py
这个作者很懒,什么都没留下…
展开
-
AppMock 工具设计及原理
目录一、目前现状二、为什么不用Charles三、如何实现1、实现方案:2、实现成本:3、基本流程四、实现结果5、如何使用一、目前现状开发过程中和QA测试过程中遇到下列情况:1、想快速看到当前app api接口请求情况,以及打点请求情况,目标:帮助快速定位和排查问题;2、制造数据和场景比较复杂时,不能够给自己手机或者模拟器上 的app去 mock某个指定接口(1~n个)的数据返回并且不影响其他人;3、对于新业务需求,接口的入参和返回定义完后,客户端会被.原创 2020-07-27 14:51:53 · 2310 阅读 · 5 评论 -
Carthage命令学习笔录
Carthage和Cocoapods都是库的管理工具,属于第三方非苹果官方。具体介绍可以查看传送门查看Carthage help可以看到常见的一级命令有:update —— 更新并重新build项目的依赖build —— build项目的依赖bootstrap —— 直接根据.resolved文件来checkout 并且build项目依赖checkout —— checkout...原创 2020-01-14 14:12:16 · 443 阅读 · 0 评论 -
iOS 垂直方向跑马灯 循环滚动 多处高亮显示
由于业务需求,需要实现一个垂直滚动文本的跑马灯,没有办法只有自己去写一个动画效果,下面直接贴出代码。MTAVerticalLoopView.h文件的代码如下: //// UIVerticalLoopView.h// Jovi//// Created by yuzhuo on 2016/11/23.// Copyright © 2016年 dianping.com. ...原创 2016-11-23 11:31:30 · 12693 阅读 · 6 评论 -
iOS支持富文本Label控件
写在前面都说需求才是技术的最好驱动力,一点也没有错~由于在业务开发的过程中经常碰到一些文案需要高亮显示或者是加粗等需求;android 的TextView源生控件是自动支持的,但是对于iOS却没有,所以非常有必要的写一个自定义控件对此功能进行支持;以便于后续用到此功能,大大可以减少开发时间和重复代码。直接上图,最直观:首先来个简单一点的,只有一处高亮显示:原创 2017-09-14 13:19:00 · 7658 阅读 · 0 评论 -
iOS中录屏库ReplayKit的详尽使用总结
一、ReplayKit库的介绍: 1.1简介 在使用应用或者游戏的过程中录制回放,一直是iOS开发者绞尽脑汁想要实现的功能。但由于移动设备性能的限制,这一功能往往较难实现或者效果难以满足用户的需要。终于,随着iOS9的发布,苹果提供了ReplayKit框架来帮助开发者实现录制回放的功能。 在iOS 9中,ReplayKit 是一款全...原创 2017-11-02 14:21:16 · 24534 阅读 · 9 评论 -
一个用python实现的app 质量保障系统Newton
一、Newton是什么?一个将Cat上抓取到的crash作为数据源,为tapd上创建缺陷、持续提供crash数据分析、监控以及报表生成功能的工具集。系统流程图: newton项目的剖析与说明 > 未命名文件.png" height="250" src="https://wiki.sankuai.com/download/attachments/986225144/%E6%9原创 2018-01-09 16:59:37 · 6389 阅读 · 0 评论 -
iOS中popwind简单例子
首先看下实现效果图:话不多说直接看代码,首先是头文件:////// Created by yuzhuo on 2017/12/15.//#import <UIKit/UIKit.h>@protocol YZPopwindowViewDelegate <NSObject>@optional- (void)popViewClick;@end...原创 2019-06-18 15:20:57 · 458 阅读 · 0 评论 -
iOS图片迁移脚本重构
为什么需要进行重构?之前脚本的不合理之处在哪里? 1、 之前app的项目工程是一个整体,大部分的业务全部在主工程项目中,对于pod的依赖也比较复杂和多样化。其实,这是不太利于项目管理和优化的,而且之前的图片脚本太过于死板,很多地址的配置直接是写死的,这就造成了,如果pods库稍有变动就需要进行与之对应的修改,这样给维护带来很大的麻烦,造成不必要的资源浪费。 2、由于...原创 2017-07-18 11:39:06 · 4182 阅读 · 2 评论 -
如何使用Python递归遍历项目找出重复的图片资源
由于项目越来越庞大,里面的图片资源也越来越多,需要找出项目里面是否存在图片重名的资源,下面采用python脚本找出重复的图片资源并打印出来:import oslist1 = []def scandir(startdir): os.chdir(startdir) for obj in os.listdir(os.curdir): if obj.endsw原创 2017-06-28 15:48:45 · 6976 阅读 · 0 评论 -
iOS中NSDictionary的遍历
法一据说是开发文档中的方法,未考证。NSEnumerator *enumerator = [myDictionary keyEnumerator];id key;while ((key = [enumerator nextObject])) { /* code that uses the returned key */}法二@未解提供,也是最方便用的最多原创 2016-08-23 17:46:50 · 5382 阅读 · 0 评论 -
NSDateFormatter的格式
G: 公元时代,例如AD公元yy: 年的后2位yyyy: 完整年MM: 月,显示为1-12MMM: 月,显示为英文月份简写,如 JanMMMM: 月,显示为英文月份全称,如 Janualydd: 日,2位数表示,如02d: 日,1-2位显示,如 2EEE: 简写星期几,如SunEEEE: 全写星期几,如Sundayaa: 上下午,AM/PMH: 时,24原创 2016-09-14 15:32:01 · 5315 阅读 · 0 评论 -
iOS_正则表达式判断手机型号、邮箱、手机号、身份证、昵称、密码等
//邮箱+ (BOOL) validateEmail:(NSString *)email{ NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"; NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"原创 2016-08-16 14:34:15 · 4423 阅读 · 0 评论 -
Xcode8更新后快捷键不能使用了
打开终端然后输入:sudo /usr/libexec/xpccachectl 再输入开机密码 最后重启电脑后即可生效转载 2016-09-22 12:45:12 · 5358 阅读 · 0 评论 -
如何升级CocoPods和xcodeproj 版本
一、升级CocoPods1、 更新 gem$ sudo gem update --system2、 安装 CocoPods$ sudo gem install cocoapods$ pod setup3、查看 CocoPods版本 pod --version 二、升级xcodeproj1、更新bundle 最新版本b原创 2017-01-09 17:27:26 · 7407 阅读 · 0 评论 -
AppThinning之AppSlicing
App Thinning介绍 iOS9开始,Apple推出了一项新功能称为App Thinning,字面理解就是App瘦身。简单说来就是开发者将整个App包传到App Store,当不同用户设备下载App的时候,App Store通过根据不同设备特性分发经过剪裁的App,从而减少了用户包大小。 关于App Thinning有三种特性:slicing, bitcode, on-d原创 2017-04-11 13:41:23 · 7457 阅读 · 0 评论 -
iOS app瘦身优化之路
缩减iOS安装包大小是很多中大型APP都要做的事,一般首先会对资源文件下手,压缩图片/音频,去除不必要的资源。这些资源优化做完后,我们还可以尝试对可执行文件进行瘦身,项目越大,可执行文件占用的体积越大,又因为AppStore会对可执行文件加密,导致可执行文件的压缩率低,压缩后可执行文件占整个APP安装包的体积比例大约有80%~90%,还是挺值得优化的。瘦身的第一步对于app瘦身之前原创 2016-10-26 16:18:34 · 10728 阅读 · 4 评论 -
iOS中如何用纯代码绘制比较复杂图表UI
首先给出产品需求的视觉效果图,如下:下面是实现的效果图,如下:看了两者的效果图,基本上满足产品的要求。需要再次说明下:档位是不固定的,可能是三档、四档、五档,但超过五档,也可以没有,也可以是一档。如果是固定的档位,其实实现起来还简单些,如果是全动态的布局的话,那考虑的东西和难度是会增加的。所以简单的也不用说,直接上动态布局后实现的代码。头文件如下,里面基原创 2017-06-16 16:59:38 · 5866 阅读 · 0 评论 -
NSMutableString的常见用法
1.给字符串分配容量stringWithCapacity:NSMutableString *String;String = [NSMutableString stringWithCapacity:40];2.在已有字符串后面添加字符appendString: and appendFormat:NSMutableString *String1 = [[NSMuta原创 2016-08-23 17:39:45 · 5406 阅读 · 0 评论