-
protobuf-简单使用
本文章只用来记录临时笔记,后续完善protobuf 数据传输协议 同类型的有 XML Json Objective-C的使用 运行环境 使用homebrew安装 ,如果不懂,看完其他文章 homebrew install protobuf OC插件下载地址 protobuf-objectivec-3.4.0.tar.gz , 安装方法:// cd到插件文件夹,我的下载到桌面安装cd ~/Desktop/protobuf-objectivec// 执...…
-
iOS解析json 浮点型数据,精度丢失问题
问题描述服务端传递回来的是 保留小数点两位的浮点型,iOS端解析后,发现 取出字段的doubleValue后 精度丢失,小数点后多了很多位原值 71.20解析后 71.199997原始数据{ "bigDecimalNumber": 71.20, "bigDecimalString":"71.20"}#import "NSNumberTest.h"NSString const * kBigDecimalNumberConst = @"bigDecimalNumber";NSString ...…
-
iOS组件化(基于Cocoapods)-简单使用
注册 trunkpod trunk register xxxx@gmail.com manajay创建本地私有库 创建 pod lib create xxx Class 中添加代码文件 Assets 中添加图片等资源 : 注意获取资源使用 [NSBundle bundleForClass:self], 注意图片要全名, 如果使用了资源,那么 podfile文件中添加描述use_frameworks!更改本次的版本描述 podspec文件 注意 version 一定要对应 git...…
-
OCLint 静态代码分析
环境 Homebrew 终端安装 /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" oclint 安装 brew install oclint xcpretty 安装 gem install xcpretty脚本 关键点 明确项目是否依赖CocoaPods 使用xcodebuild -list, 明确 scheme ...…
-
ngrok
概念用途ngrok是非常流行的反向代理服务,可以进行内网穿透,支持80端口以及自定义tcp端口转发.这样你就可以运行本地的程序,而让别人通过公网访问了.安装1、官网下载地址下载, 解压2、将可执行文件ngrok移到系统的bin文件夹内(或者将快捷链接移动到bin目录下),注意是系统目录,不是用户目录.3、只有这样,才可以在命令行执行ngrok,而不会得到command not found的错误信息.使用说明1、 If you don’t know what port your web se...…
-
iOS 高效编码(一)
在类的头文件中尽量少运入其他头文件1、 除非有必要,否则不要引入头文件. 一般来说,应该在类的头文件中使用向前引用来声明一个类,并在实现文件中,引入那些类的头文件.好处: 减少编译时间,解决互相引用问题,降低类之间的耦合.2、 如果无法使用向前引用,比如声明某个类遵守一项协议.这种情况下,尽量把声明移到”class-continuation分类”中. 如果不行就把协议单独放在一个头文件中,然后将其引入.两者的区别在于: 协议与遵循协议类的关系,是否有强烈的依赖关系.比如委托协议(deleg...…
-
极光推送的使用
苹果的APNS 用户的应用注册了APNS 消息推送功能 用户iOS设备通过SSL长连接到APNS苹果服务器,收到设备应用的注册信息后,下发给设备一个DeviceToken 给 应用 应用收到这个DeviceToken 然后推送给 自己应用的服务器 (应用到推送服务器的流程完毕) 推送服务器 发送消息到一个用户的时候, 会首先查找到 DeviceToken,然后将消息和DeviceToken 发送给 苹果的 APNS 服务器 苹果根据 DeviceToken 找到唯一的那台设备, ...…
-
iOS自动化打包分发
为什么要自动化 节省时间,快速迭代: 减少重复繁琐的过程,本地继续编码,使用工具自动拉取远程库代码后打包 纠错: 打包出错,会自动查找到编译错误 快速分发多个版本: 配置好不同分支的打包策略,可以将打包任务移交测试,分工更明确工具 Jenkins CI Flow CI Travis CI Hudson CI Circle CI本文只关注 Jenkins 的使用Jenkins 的三种安装方式 war pkg homebrew推荐使用 homebrewjenkins 安装...…
-
ApacheBench的 认知与安装
介绍 Web性能压力测试工具之ApacheBench(ab)详解及概念普及 超实用压力测试工具-ab工具 遇到的问题 ab问题解决方案 ab常见问题汇总1. 使用apache 的ab做压力测试时,当压力过大,例如请求1000000次,在没有执行完 就报apr_poll:The timeout specified has expired错误2. apr_pollset_poll: The timeout specified has expired (70007)...…
-
正确安装Mac系统下的Ruby
推荐大家在做这些事情的时候最好配置VPN,被墙的感觉简直糟透了参考我的文章实现网络自由, 随意Google,看 YouTube 视频 Ruby安装方式有两种,一个是 rvm多环境安装, 一种是homebrew安装 1. RVMMAC 安装使用 Ruby 最安全方便的方式就是使用RVM,安装链接点击右侧: rvm-install-link1.1 安装RVM1.1.1 官方推荐安装RVM方式1.gpg --keyserver hkp://keys.gnupg.net...…