LuisX

iOS开发工程师


  • 首页

  • 分类

  • 标签

  • 归档

  • 关于

Jenkins配置节点(解决Linux上iOS打包)

发表于 2016-08-30   |   分类于 iOS技巧   |  

iOS打包无法在Linux上进行,因为Jenkins的Xcode插件需要调用Xcode,Xcode只能在OSX系统下安装。

1.登录Jenkins,添加MacOSX节点
1
系统管理☞管理节点☞新建节点

当前master为Linux系统

新建节点

2.输入节点名称,勾选PermanentAgent

输入节点名称

3.开启要绑定OSX系统电脑的远程登录
1
系统偏好设置☞共享☞勾选☞远程登录
阅读全文 »

Jenkins使用

发表于 2016-08-30   |   分类于 iOS技巧   |  

JDK官方地址
JenKins官方地址
注意:先安装JDK,再安装Jenkins!

安装完成之后,就会启动浏览器,默认地址是:

1
http://localhost:8080

安装等待

创建Admin用户
创建Admin用户

阅读全文 »

iOS缓存策略

发表于 2016-08-25   |   分类于 iOS技巧   |  

一、思维脑图

思维脑图

思维脑图详情

二、缓存思想

  • 数据库底层基于Sqlite。
  • 每个数据库表只有Key, Value两个字段。
  • 直接将JSON数据存储到Value中,并设置Key。
  • 通过Key查找对应Value数据,来进行数据增删改查操作,并更新视图。

1.使用SDWebImage缓存图片。
2.使用YTKKeyValueStore更方便使用FMDB。
3.使用FMDB操作数据库。

SDWebImage官方地址: https://github.com/rs/SDWebImage
YTKKeyValueStore官方地址: https://github.com/yuantiku/YTKKeyValueStore
FMDB官方地址: https://github.com/ccgus/fmdb

阅读全文 »

Fastlane自动化构建工具(完整解决测试和发布流程)

发表于 2016-08-25   |   分类于 iOS技巧   |  

Fastlane自动化构建工具(完整解决测试和发布流程)

fastlane

控制整体流程和实现的框架容器
支持平台:iOS、Android
官方地址:https://github.com/fastlane/fastlane

fastlane流程

阅读全文 »

玩转iOS设计模式

发表于 2016-06-30   |   分类于 玩转iOS   |  

###(一)代理模式(委托)

应用场景:
当一个类的某些功能需要由别的类来实现,但是又不确定具体会是哪个类实现。
优势:
解耦合
实例:
tableview的数据源delegate,通过和protocol的配合,完成委托诉求。
列表row个数delegate
自定义的delegate

阅读全文 »

Objective-C-「类目、延展、协议」

发表于 2016-06-27   |   分类于 Objective-C   |  

类目(Category)

(1).为已知的类添加新的方法,无论是否知道类的源代码,这些类包括自己定义的类和系统已有的类。
(2).将类的实现分散到多个不同的文件中,将多个类目的声明放入同一个.h文件中,将实现放入多个.m方法中。
(3).使用类目创建对私有方法的前向引用,就是为类创建私有方法。
(4).向对象添加非正式协议,现在逐渐被正式协议做替代。
注意:类目里面只能写方法,不能写声明和属性,所以,类目不能作为接口来用

注意:

1、类目无法向已有类中添加实例变量。
2、如果类目中的方法和已有类中的方法名称冲突时,类目中的方法优先级高,如果方法名冲突,已有类中的原始方法便无法使用。
3、在使用类目的时候,最好是将自己扩展的方法和原始方法区分开来。

阅读全文 »

玩转iOS版本特性

发表于 2016-06-23   |   分类于 玩转iOS   |  

开发者所需要知道的iOS6 SDK新特性
开发者所需要知道的iOS7 SDK新特性
开发者所需要知道的 iOS8 SDK 新特性
开发者所需要知道的 iOS 9 SDK 新特性
开发者所需要知道的 iOS 10 SDK 新特性

阅读全文 »

Objective-C-「RunTime运行时」

发表于 2016-06-23   |   分类于 Objective-C   |  

RunTime简称运行时。就是系统在运行的时候的一些机制,其中最主要的是消息机制。
RunTime是一套比较底层的纯C语言API,属于1个C语言库,包含了很多底层的C语言API。
在我们平时编写的OC代码中,程序运行过程时,其实最终都是转成了runtime的C语言代码。

XCode7使用Runtime:
objc_msgSend()报错Too many arguments to function call ,expected 0,have3

解决方案: 关闭msg检查机制

关闭msg检查机制

阅读全文 »

Objective-C-「KVO键值观察」

发表于 2016-06-21   |   分类于 Objective-C   |  
  • Key Value Observing(键-值-观察)
  • 被观察者和观察者同时实现一个协议: NSKeyValueObserving
  • 源于设计模式中的观察者模式。
  • 指定被观察对象的属性被修改后,KVO就会自动通知相应的观察者。
    注意:不要忘记解除注册,否则会导致资源泄露
    阅读全文 »

Objective-C-「KVC键值编码」

发表于 2016-06-21   |   分类于 Objective-C   |  
  • Key Value Coding(键-值-编码)
    -NSKeyValueCoding一个非正式的协议,提供一种机制来间接访问对象的属性。
  • KVO 就是基于 KVC 实现的关键技术之一。
  • 它是一种使用字符串标识符,间接访问对象属性的机制,而不是直接调用getter 和 setter方法。
  • 通常我们使用valueForKey 来替代getter 方法,setValue:forKey来代替setter方法
    注意: 使用KVC赋值和取值,key和属性名要保持一致,否侧会导致崩溃。
    阅读全文 »
123
LuisX

LuisX

总有一天我会拥有属于我的一片天

21 日志
4 分类
4 标签
gitHub weibo
© 2015 - 2016 LuisX