- 博客(34)
- 资源 (1)
- 收藏
- 关注
原创 Jenkins在mac上配置及踩坑实录
由于简书经常打不开,或者打开慢,不靠谱,还是把文章迁移到CSDN吧。最近想在我的mac上搭建个Jenkins,实现自动从svn更新代码,运行打包脚本。踩了很多坑,在这里记录下。Jenkins安装有两种方式第一种是从Jenkins官网下载 .pkg的安装包,我下载的版本是:jenkins-2.190.1.pkg。但是这种方式安装的Jenkins目录是在:/Users/Shared/Jenkin...
2019-11-15 18:00:56 2961 1
原创 Xcode11打包失败IPA processing failed
由于简书经常打不开,或者打开慢,不靠谱,还是把文章迁移到CSDN吧。更新到Xcode11后修改了点bug,一直没有打包,今天打包发现失败了,提示IPA processing failed,查看日志:IDEDistribution.standard.log发现是因为项目中使用的SDK支持i386,x86_86这个架构,猜测是iOS13强制不支持模拟器架构打包。各种架构解释:模拟器32位处...
2019-11-15 17:59:40 1349
原创 两个静态库包含同一个三方库导致报错
lipo命令的使用例如我有个A.framework 和 B.framework,A、B中使用了同样的代码(例如:AFN),现在项目中需要用到A、B两个库,编译的时候会报错。提示重复链接,解决方案就是从A或者B中删除掉一个AFN代码。现在从A中删除,假设A就是TXLiteAVSDK_Professional.framework删除重复的代码1.先查看TXLiteAVSDK_Profession...
2019-11-15 17:57:54 1631
原创 关于Framework的一点看法
最近的工作是制作SDK,而在公司的SDK内部需要用到第三方的SDK,这就出现了Framework内部包含Framework的的情况。就把自己的一点看法记录下来。什么是静态库 (Static Library)所谓静态库,或者说 .a 文件,就是一系列从源码编译的目标文件的集合。它是你的源码的实现所对应的二进制。配合上公共的 .h 文件,我们可以获取到 .a 中暴露的方法或者成员等。在最后编译 a...
2019-11-15 17:56:03 576
转载 深入理解RunLoop
转自http://blog.ibireme.com/2015/05/18/runloop刚才发现原作者的博客打不开了,网上其他人转载的格式特别乱不适合阅读,而自己特别喜欢这篇博客,所有就转载来以备不时之需。RunLoop 是 iOS 和 OSX 开发中非常基础的一个概念,这篇文章将从 CFRunLoop 的源码入手,介绍 RunLoop 的概念以及底层实现原理。之后会介绍一下在 iOS 中,苹...
2019-11-15 17:54:57 167
原创 libyuv NV12裁剪
由于简书经常打不开,或者打开慢,不靠谱,还是把文章迁移到CSDN吧。简书链接:https://www.jianshu.com/p/8c6508cab763有时候想对摄像头采集的视频流进行区域裁剪,可以使用libyuv这个库,原理就是先把NV12转换为i420,对i420做裁剪,然后再把i420转换为NV12,NV12再转换为CVPixelBufferRef,CVPixelBufferRef再转...
2019-11-15 17:40:10 1855
转载 gitlab的使用
原文地址:http://blog.cnbluebox.com/blog/2014/04/15/gitlabde-shi-yong/Gitlab的使用最近成功的在公司部署了gitlab,鉴于同学们还不会使用,这里写篇博客说明下。如果想安装gitlab的话,需要一些linux的基础知识,我在这里记录了我安装的参考《http://www.cnbluebox.com/?p=378》
2015-09-11 14:43:58 419
转载 获取相机、相册的授权状态
原文地址:http://www.aslibra.com/blog/read.php/1781.htm//判断是否禁用了相机AVAuthorizationStatus cameraStatus = [AVCaptureDevice authorizationStatusForMediaType:AVMediaTypeVideo]; //如果明确否认或者家长控制权限,不能打
2015-09-10 13:27:31 2432
原创 此证书是由未知颁发机构签名的解决办法
有一种情况是你删除了钥匙串中的系统文件,只要重新下载,并双击(会自动添加到钥匙串中)就ok了。下载地址:http://developer.apple.com/certificationauthority/AppleWWDRCA.cer
2015-09-08 13:49:11 4301
转载 NSDictionary深copy
原文地址:http://blog.csdn.net/lookyou111/article/details/8811070目标:把NSDictionary对象转换成NSMutableDictionary对象,对象内容是字符串数组,需要实现完全复制(深复制)。如果调用NSDictionary的mutableCopy方法,可以得到一个NSMutableDictionary对象,但这只是浅复制,如
2015-09-07 12:25:12 794
转载 CGContextRef画图
CGContextRef context = UIGraphicsGetCurrentContext(); //设置上下文 //画一条线 CGContextSetStrokeColorWithColor(context, [UIColor redColor].CGColor);//线条颜色 CGContextSetLineWidth(conte
2015-09-01 17:40:04 420
转载 Quartz2d研究笔记
Quartz 2D包含的数据类型:CGPathRef:用于向量图,可创建路径,并进行填充或描画(stroke)CGImageRef:用于表示bitmap图像和基于采样数据的bitmap图像遮罩。CGLayerRef:用于表示可用于重复绘制(如背景)和幕后(offscreen)绘制的绘画层CGPatternRef:用于重绘图CGShadingRef、CGGradientRef:用于绘制渐
2015-09-01 17:13:30 364
原创 中文转换为英文(CoreFoundation框架)
引入CoreFoundation.framework框架,在项目头文件添加:#import 然后执行下面的代码: NSString *str = @"转换为拼音"; CFStringRef aCFStr = (__bridge CFStringRef)str; CFMutableStringRef string = CFStringCreateMutabl
2015-09-01 15:43:22 496
转载 IOS获取文件路径的方法
iphone沙箱模型的有四个文件夹,分别是什么,永久数据存储一般放在什么位置,得到模拟器的路径的简单方式是什么.documents,tmp,app,Library。(NSHomeDirectory()),手动保存的文件在documents文件里Nsuserdefaults保存的文件在tmp文件夹里1、Documents 目录:您应该将所有de应用程序数据文件写入到这个目录下。这个目录用于存储用户数据
2015-09-01 14:38:17 390
转载 读取本地文件
NSError *error; NSString *textFileContents = [NSString stringWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@”myTextFile” ofType:@”txt”] encoding:NSUTF8StringEncoding error: & error];
2015-09-01 14:34:44 1911
原创 NSTimer的使用技巧
1.初始化: NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:1.5 target:self selector:@selector(scrollTimer) userInfo:nil repeats:NO]; 2.永久停止定时器 //取消定时器 [timer invalidate]; timer = nil; 3.暂时关闭
2015-08-31 14:06:33 304
原创 UINavigationController操作
1. 修改导航条最上面的时间,电量颜色:[[UINavigationBarappearance]setBarStyle:UIBarStyleBlackTranslucent];2.修改导航条颜色:[[UINavigationBar appearance] setBarTintColor:[UIColor redColor]];3.单个修改导航条颜色:
2015-08-31 13:59:55 313
原创 UIActionSheet
步骤:1.//创建一个UIActionSheet对象,初始化 //initWithTitle:sheet的标题 //delegate:sheet的代理 //cancelButtonTitle:sheet的取消按钮 //destructiveButtonTitle:sheet的确定按钮 //otherButtonTitles:sheet的其他
2015-08-31 13:58:54 359
原创 UIAlertView(提示框)
1. UIAlertView*alert = [[UIAlertViewalloc]initWithTitle:@"提示"message:@"这是个提示"delegate:selfcancelButtonTitle:@"取消"otherButtonTitles:@"确定",nil]; [alert show];2. 它的代理:
2015-08-31 13:58:04 369
原创 KVC
1. 在model.h文件中声明属性(声明的属性与获取的字典中键(key)一致)//属性名必须与字典里面的键(key)一样,KVC才会把值(value)传递进来@property (nonatomic,copy)NSString *imageUrl;@property (nonatomic,copy)NSString *contents;@propert
2015-08-31 13:56:41 323
原创 AFNetWorking的使用
1.···get请求(第一种)- (void)_requestNetwork { //1. 第一个参数:接口地址 //2. 第二个参数L:传递参数时候要用到 //GET请求不需要传递参数,所以此处写nil就可以。 //POST请求:需要传递参数,需要在接口后边拼接参数,把参数以key:Value的形式封装到字典里,AFN会自动为我们
2015-08-31 13:54:54 490
原创 通知NSNotificationCenter
1. 发出通知: //postNotificationName:给发送的通知起一个名字 //object:一般可以为nil,如果为self就是把当前controller传递给监听者 //userInfo:传递需要的数据,用key:value的形式把数据封装在字典里边,传递给监听者 [[NSNotificationCenter defaul
2015-08-31 13:52:59 393
原创 显示隐藏文件(终端)
1.显示隐藏文件命令(终端中输入):defaults write com.apple.finder AppleShowAllFiles -bool true2.显示文件路径:一:在终端输入:defaults write com.apple.finder _FXShowPosixPathInTitle -bool TRU回车二:回车后继续输入:killall Find
2015-08-31 13:48:57 493
原创 setObject:ForKey:与setValue:ForKey:的区别与联系
setObject:ForKey:与setValue:ForKey:的区别与联系一:setObject:ForKey:与setValue:ForKey:的区别与联系 1.setObject:ForKey:是NSMutableDictionary特有的; setValue:ForKey:是KVC的主要方法; 2.setObject:ForKey:中object不能为nil,不然会报错;ke
2015-08-31 13:43:10 574
原创 关于图片查看的小结
在做图片浏览的时候,总要涉及到把图片整个显示到屏幕上,需要做如下判断: 代码如下: - (void)calFrame{CGSize size = self.image.size;CGFloat w = size.width;CGFloat h = size.height;CGRect superFrame = self.screenBounds;CGFloat superW =super
2015-08-31 13:39:21 385
转载 IOS(CGGeometry)几何类方法总结
IOS开发几何类方法总结CGGeometry.h文件是用C语言实现的一个封装了许多常用几何方法的文件。一、几个常用结构体struct CGPoint { CGFloat x; CGFloat y;};定义一个点,设置x坐标和y坐标struct CGSize { CGFloat width; CG
2015-08-31 13:29:02 396
原创 iOS App上架流程
前言:作为一名IOS开发者,把开发出来的App上传到App Store是必须的。下面就来详细介绍下具体流程。1.打开苹果开发者中心:https://developer.apple.com打开后点击:Member Center如果你的电脑没有保存密码,则会提示你输入开发者帐号和密码,因为我的电脑已经保存了,所以直接进入。2.点击:Certificates, Identifiers & Profiles
2015-06-26 11:03:46 7505 11
原创 swift入门第四章函数
函数1.定义函数的关键字是func在定义函数的时候,不管有没有参数都要加上括号,参数在括号中,没有返回值的时候,也可以写成如下格式,当有返回值的时候在->()括号中写上返回值的类型1.1 无参数无返回值func printString()->(){ println("nice to meet you")}函数调用printString()1.2 有参数无返回值func noneHell
2015-06-23 20:03:23 369
原创 swift入门第三章集合、控制流,标签语句
数组swift中的集合有:数组、字典、set。三者的区别为1、在swift中的集合类=是值类型,而OC中的是引用类型2、在swift中使用引用计数的概念来管理内存,但是引用计数只适用于对象类型,值类型不需要管理3、swift中引用计数管理内存的方法与OC中的引用计数管理内存的方法还是不同的4、在swift中数组是可以存放任意类型的,OC中只能存放对象类型数组1. swift中,Array也
2015-06-23 19:57:10 420
原创 swift入门第二章运算符、字符串
运算符1.一元运算符1.负号运算符var number1 = 10var number2 = -number1println(number2)2.正号运算符(不做任何操作,为了跟负号运算符成对出现)var number3 = +number2println(number3)3.b = a++ 相当于a先赋值,再完成自增运算。b = ++a 相当于a先完成自增运算,再去赋值。var numb
2015-06-23 19:37:52 545
原创 swift入门第一章常量、变量
1.常量和变量与C、OC不同的是,swift用let定义常量,用var定义变量。 如下例: let a = 5 var b = 10 这里a代表常量5,一旦被定义,它的值就不能被修改。b代表变量10,它可以被修改。如: 我们可以把b重赋值为20 b = 202.在同一行中定义多个常量或者变量 var x = 5, y = 6, z =
2015-06-23 13:40:19 590
原创 swift初见
什么是swift1.定义Swift,苹果于2014年WWDC(苹果开发者大会)发布的新开发语言,可与Objective-C*共同运行于Mac OS和iOS平台,用于搭建基于苹果平台的应用程序。2.发展历史2014-6-3 WWDC 2014:苹果2014年开发者大会发布。 2014-6-4 《Swift中文版》翻译组在github上进行协同翻译。此项目开始不到一周就获得了1067个star。令人吃
2015-06-23 13:17:39 494
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人