自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(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 2666 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 1317

原创 两个静态库包含同一个三方库导致报错

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 1530

原创 关于Framework的一点看法

最近的工作是制作SDK,而在公司的SDK内部需要用到第三方的SDK,这就出现了Framework内部包含Framework的的情况。就把自己的一点看法记录下来。什么是静态库 (Static Library)所谓静态库,或者说 .a 文件,就是一系列从源码编译的目标文件的集合。它是你的源码的实现所对应的二进制。配合上公共的 .h 文件,我们可以获取到 .a 中暴露的方法或者成员等。在最后编译 a...

2019-11-15 17:56:03 501

转载 深入理解RunLoop

转自http://blog.ibireme.com/2015/05/18/runloop刚才发现原作者的博客打不开了,网上其他人转载的格式特别乱不适合阅读,而自己特别喜欢这篇博客,所有就转载来以备不时之需。RunLoop 是 iOS 和 OSX 开发中非常基础的一个概念,这篇文章将从 CFRunLoop 的源码入手,介绍 RunLoop 的概念以及底层实现原理。之后会介绍一下在 iOS 中,苹...

2019-11-15 17:54:57 144

原创 libyuv NV12裁剪

由于简书经常打不开,或者打开慢,不靠谱,还是把文章迁移到CSDN吧。简书链接:https://www.jianshu.com/p/8c6508cab763有时候想对摄像头采集的视频流进行区域裁剪,可以使用libyuv这个库,原理就是先把NV12转换为i420,对i420做裁剪,然后再把i420转换为NV12,NV12再转换为CVPixelBufferRef,CVPixelBufferRef再转...

2019-11-15 17:40:10 1682

转载 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 399

转载 获取相机、相册的授权状态

原文地址:http://www.aslibra.com/blog/read.php/1781.htm//判断是否禁用了相机AVAuthorizationStatus cameraStatus = [AVCaptureDevice authorizationStatusForMediaType:AVMediaTypeVideo];   //如果明确否认或者家长控制权限,不能打

2015-09-10 13:27:31 2375

原创 此证书是由未知颁发机构签名的解决办法

有一种情况是你删除了钥匙串中的系统文件,只要重新下载,并双击(会自动添加到钥匙串中)就ok了。下载地址:http://developer.apple.com/certificationauthority/AppleWWDRCA.cer

2015-09-08 13:49:11 4242

转载 NSDictionary深copy

原文地址:http://blog.csdn.net/lookyou111/article/details/8811070目标:把NSDictionary对象转换成NSMutableDictionary对象,对象内容是字符串数组,需要实现完全复制(深复制)。如果调用NSDictionary的mutableCopy方法,可以得到一个NSMutableDictionary对象,但这只是浅复制,如

2015-09-07 12:25:12 773

转载 CGContextRef画图

CGContextRef context = UIGraphicsGetCurrentContext(); //设置上下文    //画一条线    CGContextSetStrokeColorWithColor(context, [UIColor redColor].CGColor);//线条颜色    CGContextSetLineWidth(conte

2015-09-01 17:40:04 395

转载 Quartz2d研究笔记

Quartz 2D包含的数据类型:CGPathRef:用于向量图,可创建路径,并进行填充或描画(stroke)CGImageRef:用于表示bitmap图像和基于采样数据的bitmap图像遮罩。CGLayerRef:用于表示可用于重复绘制(如背景)和幕后(offscreen)绘制的绘画层CGPatternRef:用于重绘图CGShadingRef、CGGradientRef:用于绘制渐

2015-09-01 17:13:30 345

原创 中文转换为英文(CoreFoundation框架)

引入CoreFoundation.framework框架,在项目头文件添加:#import 然后执行下面的代码:    NSString *str = @"转换为拼音";    CFStringRef aCFStr = (__bridge CFStringRef)str;    CFMutableStringRef string = CFStringCreateMutabl

2015-09-01 15:43:22 466

转载 IOS获取文件路径的方法

iphone沙箱模型的有四个文件夹,分别是什么,永久数据存储一般放在什么位置,得到模拟器的路径的简单方式是什么.documents,tmp,app,Library。(NSHomeDirectory()),手动保存的文件在documents文件里Nsuserdefaults保存的文件在tmp文件夹里1、Documents 目录:您应该将所有de应用程序数据文件写入到这个目录下。这个目录用于存储用户数据

2015-09-01 14:38:17 369

转载 读取本地文件

NSError *error;  NSString *textFileContents = [NSString  stringWithContentsOfFile:[[NSBundle mainBundle]  pathForResource:@”myTextFile”  ofType:@”txt”]  encoding:NSUTF8StringEncoding  error: & error];

2015-09-01 14:34:44 1888

原创 下载mp4视频到本地,并播放

2015-08-31 15:06:19 1761

原创 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 277

原创 UINavigationController操作

1. 修改导航条最上面的时间,电量颜色:[[UINavigationBarappearance]setBarStyle:UIBarStyleBlackTranslucent];2.修改导航条颜色:[[UINavigationBar appearance] setBarTintColor:[UIColor redColor]];3.单个修改导航条颜色:

2015-08-31 13:59:55 291

原创 UIActionSheet

步骤:1.//创建一个UIActionSheet对象,初始化    //initWithTitle:sheet的标题    //delegate:sheet的代理    //cancelButtonTitle:sheet的取消按钮    //destructiveButtonTitle:sheet的确定按钮    //otherButtonTitles:sheet的其他

2015-08-31 13:58:54 335

原创 UIAlertView(提示框)

1.    UIAlertView*alert = [[UIAlertViewalloc]initWithTitle:@"提示"message:@"这是个提示"delegate:selfcancelButtonTitle:@"取消"otherButtonTitles:@"确定",nil];    [alert show];2.  它的代理:

2015-08-31 13:58:04 352

原创 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 307

原创 AFNetWorking的使用

1.···get请求(第一种)- (void)_requestNetwork {   //1. 第一个参数:接口地址    //2. 第二个参数L:传递参数时候要用到    //GET请求不需要传递参数,所以此处写nil就可以。    //POST请求:需要传递参数,需要在接口后边拼接参数,把参数以key:Value的形式封装到字典里,AFN会自动为我们

2015-08-31 13:54:54 474

原创 通知NSNotificationCenter

1.   发出通知: //postNotificationName:给发送的通知起一个名字    //object:一般可以为nil,如果为self就是把当前controller传递给监听者   //userInfo:传递需要的数据,用key:value的形式把数据封装在字典里边,传递给监听者    [[NSNotificationCenter defaul

2015-08-31 13:52:59 376

原创 夜间模式实现

最简单的方法:self.view.window.alpha = 0.6;

2015-08-31 13:51:33 557

原创 显示隐藏文件(终端)

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 460

原创 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 544

原创 关于图片查看的小结

在做图片浏览的时候,总要涉及到把图片整个显示到屏幕上,需要做如下判断: 代码如下: - (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 368

转载 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 383

原创 iOS App上架流程

前言:作为一名IOS开发者,把开发出来的App上传到App Store是必须的。下面就来详细介绍下具体流程。1.打开苹果开发者中心:https://developer.apple.com打开后点击:Member Center如果你的电脑没有保存密码,则会提示你输入开发者帐号和密码,因为我的电脑已经保存了,所以直接进入。2.点击:Certificates, Identifiers & Profiles

2015-06-26 11:03:46 7373 11

原创 swift入门第四章函数

函数1.定义函数的关键字是func在定义函数的时候,不管有没有参数都要加上括号,参数在括号中,没有返回值的时候,也可以写成如下格式,当有返回值的时候在->()括号中写上返回值的类型1.1 无参数无返回值func printString()->(){ println("nice to meet you")}函数调用printString()1.2 有参数无返回值func noneHell

2015-06-23 20:03:23 347

原创 swift入门第三章集合、控制流,标签语句

数组swift中的集合有:数组、字典、set。三者的区别为1、在swift中的集合类=是值类型,而OC中的是引用类型2、在swift中使用引用计数的概念来管理内存,但是引用计数只适用于对象类型,值类型不需要管理3、swift中引用计数管理内存的方法与OC中的引用计数管理内存的方法还是不同的4、在swift中数组是可以存放任意类型的,OC中只能存放对象类型数组1. swift中,Array也

2015-06-23 19:57:10 402

原创 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 518

原创 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 568

原创 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 472

中文转英文代码

中文转英文代码

2015-09-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除