自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 收藏
  • 关注

原创 AFNetworking分片上传

AFNetworkingAFNetworking是iOS常用的网络开发库,用起来很方便,满足大多数公司的需求,地址是:https://github.com/AFNetworking/AFNetworking分片上传必要性大家很多人都做过下载类的断点续传,下载也是因为大文件下载时间长,容易中断的情况。分片也是为大文件中断造成不好的体验的问题产生的。一个文件比如2G,我们一片0.1G ,就分成了20片,一片一片上传,假设中途第10片上传失败,我们下次只需要从第十片的位置开始上传就可以,等上传结束,服务器就

2020-05-12 13:56:27 410

原创 OC 与Java都兼容的AES加密方式

问题最近公司写个项目,遇到的问题,在此记录一下。后端和安卓端用的都是java,加密过程很顺利,iOS端AES加密就没那么顺利,我加解密后的值和后端不一致,导致无法正确解密。我一度认为是我的代码出现了问题,后来和后端一起调试,发现只有AES/CBC这种加密模式和java是兼容的,下面贴出来具体代码:(已验证可放心使用)加密//(key和iv向量这里是16位的) 这里是CBC加密模式,安全性更高+ (NSString *)encryptAES128CBCData:(NSData *)data key:(

2020-05-12 13:29:57 447

原创 git错误'fatal: cannot do a partial commit during a merge'

我们公司管理代码用的Git分布式版本控制系统,最近合并分支遇到这个问题,记录下来。先说下我这个错误产生的步骤。(假设我的分支名是PC,主分支是master)我开分支的原因是需要回滚到master几次提交之前的版本,在此基础上做更改。我在分支PC基础上做了代码修改,版本封版后,需要合并到主版本。切换到主版本:Git checkout master合并分支PC到master:git mer...

2020-04-23 13:19:41 14143

转载 iOS UDID与UUID

iOS UDID与UUID1.UDID通用唯一识别码 UDID(Unique Device Identifier)是一串由40位16进制数组成的字符串,用以标识唯一的设备,现在想通过代码获取是不可能的了,如果你想看看你设备的UDID,可以通过iTunes来查看。苹果从iOS5开始就移除了通过代码访问UDID的权限,所以码农想知道用户设备的UDID,是不行的。对于已越狱了的设备,UDID并...

2020-04-21 17:27:29 2236

原创 HTTPS SSL加密原理

Http和Https你知道多少?首先,这两个协议是工作以后遇到和用过最多的协议,必须搞懂搞明白。咱们来看看他们的基本定义。HTTP协议Http: 超文本传输协议(英语:HyperText Transfer Protocol,缩写:HTTP)是一种用于分布式、协作式和超媒体信息系统的应用层协议[1]。HTTP是万维网的数据通信的基础。最初设计目的:为了提供一种发布和接受HTML页面的方法。...

2020-04-17 11:04:47 191

原创 iOS双向签名原理

iOS签名,证书等图示如下​​​​​​​​有不理解苹果打包签名、证书这些概念的可以看下。给自己画张图就方便理解了。为了保证系统安全性,Apple公司采用双向签名机制。一、RSA加密在理解iOS整个开发者开发流程之前需要知道的加密算法。RSA也是网络安全应运而生的算法,也是目前使用最广泛的加密算法。它生成公钥和私钥。公钥是可以让大家知道的,私钥是自己保存的,不能曝光的。他们有两种使用方法...

2020-04-01 15:55:08 267

原创 HTTP断点续传原理

断点续传作为一名程序媛我也想快点进步,希望慢慢积累吧。给自己加加油。1. 断点续传的必要性大部分下载类的app,都会遇到网络不好的情况,如果下载到最后一步却下载失败了,是不是会让人很头疼。如果能重试下载从上次下载的文件位置继续下载,就显得很必要了。关乎用户体验问题。非常 非常重要!!!!!????2.了解断点续传之前,了解下http协议。HTTP(Hyper Text Transfer Pro...

2020-03-31 15:54:43 450

原创 WKWebView和JS交互

WKWebView和JS的那些事最近公司需要将 某网站注入JS,从而实现对其中一些视频添加下载按钮的功能。当然我对JS不太懂,JS是由我们Web前端写的,我要实现的就是打开网站的时候注入JS,并根据里面点击按钮的操作作出响应,JS会给我传一些参数。这里记录下我做的事情,给需要的朋友看下。(本程序媛目前找工作中,有合适的可以推荐下。????)之后我们会用 http://www.test.com 代...

2019-12-19 11:01:58 794

原创 iPhone X适配

公司app适配起来比较麻烦,很多第三方库编译的时候没有支持模拟器的版本,所以我只好把这些库删掉,然后调试界面后再加进去,是不是听起来就很无语。适配iPhone X给我带来的最大教训就是:千万不要写死代码,之前用了很多20,49,44,诸如此类的高度,导致我不得一一改掉,而且吧,如果是多人合作的app,一开始就要说好一些常用的变量放在哪,不要每次你加一个,我加一个,不但重复后期还会有很多

2017-10-26 15:50:57 545

原创 ios 视频断点续传常识

说实话之前都没做过视频下载,这次做了才了解一下,我写博客就是为了防止忘记.好记性不如烂笔头,我记性很差,简单记录一下方便以后查找.1.我做视频下载的时候Http三方库用的是ASIHttp,很古老的一个,几年前已经停止更新了,公司项目一直用的这个,我这个刚来的一时想改也改不了.后期肯定会替换.2.视频下载其实很简单,创建下载请求,然后给他一个临时文件路径,一个最终存储路径,请求启动就

2015-12-24 17:42:59 1878

原创 iOS怎么防止文件被Icloud或者iTunes备份

最近上传App被苹果拒了,原因很普遍,因为把不该同步到iCloud的东西同步了,简言之:我把下载的视频放在沙盒下的Documents目录下.其实之前是知道错了,真是明知山有虎偏向虎山行.自找的.人品不好悲剧.但是我又有不得已的原因,原因不说了.说下怎么处理.首先现在一般都是7.0后的系统.所以太低就不说了.下面方法适用于5.1及更高版本系统可以用NSURLIsExcludedF

2015-12-24 17:10:52 2756 1

原创 MagicalRecord dispatch_aync 多线程保存

废话不多说,直接看问题^_^,我的答案也是自己尝试获得的,一开始就不知道有这个东西,到迷迷糊糊的了解,到有点理解,到能用,这需要过程,当然我的水平不高.之所以写下来是觉得可能有人和我一样也在经历这个学习的过程.给大家一些参考.如果觉得我的方案有问题,请留言.O(∩_∩)O~项目中遇到的问题:因为要一次性保存很多数据,所以用到了多线程,我用的是GCD,也就是 dispatc

2015-09-07 15:41:00 2382 3

原创 appstore 上传新版本(一)

公司之前有一产品,需要上传新的版本,虽然过程比较简单,但是记录下来让没上传过的朋友看看,或许略有帮助吧!^_^首先要知道的:你要发布应用的新版本,就需要创建已有应用的新版本,然后上传新的二进制代码.更新的版本有些东西是不变的,如,Apple ID,Itunes ConnectID和bundle ID需要修改的东西:填写这个版本更新了什么东西.以下是详细步骤:

2015-04-08 12:26:15 665

转载 iOS 开发之本地化 国际化

多语言在应用程序中一般有两种做法:一、程序中提供给用户自己选择的机会;二、根据当前用户当前移动设备的语言自动将我们的app切换对应语言。第一种做法比较简单完全靠自己的发挥了,这里主要讲第二种做法,主要分一下几点:1.本地化应用程序名称2.本地化字符串3.本地化图片4.本地化其他文件1.本地化应用程序名称(1)点击“new file”然后在弹出

2015-03-27 10:21:35 339

转载 iOS性能优化

最近采用Instruments 来分析整个应用程序的性能.发现很多有意思的点,以及性能优化和一些分析性能消耗的技巧.小结如下.Instruments使用技巧关于Instruments官方有一个很有用的用户使用Guide,当然如果不习惯官方英文可以在这里找到中文本翻译版本PDF参阅.Instruments 确实是一个很强大的工具,用它来收集关于一个或多个系统进程的性能和行为的数据

2015-03-24 17:55:17 384

转载 一张图看懂ios drawRect

#import "CGArrow.h"@implementation CGArrow- (void)drawRect:(CGRect)rect { // 绘制 CGContextRef con = UIGraphicsGetCurrentContext(); //线的颜色 CGContextSetStrokeColorWithColor(con,[[UIColor gr

2015-03-24 17:39:40 845

转载 iOS 开发者必不可少的 75 个工具

如果你去到一位熟练的木匠的工作室,你总是能发现他/她有一堆工具来完成不同的任务。软件开发同样如此。你可以从软件开发者如何使用工具中看出他水准如何。有经验的开发者精于使用工具。对你目前所使用的工具不断研究,同时了解一些替代品的使用,当你目前所用的工具无法满足你的需要时可以填补空缺。记住了这些,我将向你展示一份关于各种工具的长长的列表。其中一些我每天都用,其他的我看情况使用。如果你还有

2015-03-13 16:18:17 515

转载 iOS中使用RSA对数据进行加密解密

RSA算法是一种非对称加密算法,常被用于加密数据传输.如果配合上数字摘要算法, 也可以用于文件签名.本文将讨论如何在iOS中使用RSA传输加密数据.本文环境mac os openssl-1.0.1j, openssl需要使用1.x版本, 推荐使用[homebrew](http://brew.sh/)安装.Java 8RSA基本原理RSA使用"秘匙对"对数据进行加密解密.在加

2015-01-13 15:14:15 702

转载 关于Xcode的Other Linker Flags

背景在ios开发过程中,有时候会用到第三方的静态库(.a文件),然后导入后发现编译正常但运行时会出现selector not recognized的错误,从而导致app闪退。接着仔细阅读库文件的说明文档,你可能会在文档中发现诸如在Other Linker Flags中加入-ObjC或者-all_load这样的解决方法。那么,Other Linker Flags到底是用来干什么的

2015-01-09 14:34:51 380

转载 Objective-C新语法

2007年的时候,Objective-C在TIOBE编程语言排名里还排在可怜的第45位,而随着移动互联网的迅速发展和iPhone,iPad等iOS设备的广阔市场前景,Objective-C也迅速崛起,走进了开发者的视野。在最近的TIOBE排名中,Objective-C达到了惊人的第4名,可以说已经成为当今世界上一门非常重要的编程语言。而Objective-C现在主要是由Apple在负责维护

2015-01-07 09:33:33 616

转载 关于Certificate、Provisioning Profile、App ID的介绍及其之间的关系

刚接触iOS开发的人难免会对苹果的各种证书、配置文件等不甚了解,可能你按照网上的教程一步一步的成功申请了真机调试,但是还是对其中的缘由一知半解。这篇文章就对Certificate、Provisioning Profile等做个总结。 1.概念介绍如果你拥有一个开发者账户的话,在iOS Dev Center打开Certificates, Indentifiers & Profiles

2015-01-06 11:21:05 618

原创 XCode 6 archive后export 失败 “Your account already has a valid iOS distribution certificate"

1、目的: 开发中需要打包给其他人测试和查看进度,Xcode 打包成ipa。(小编使用Xcode 6.0.1,不知其他版本Xcode有无此问题)2、产生问题:archive 成功,export失败。错误如下3、小编搜索了这个问题发现很多人遇到了,但是似乎解决方案比较多,每个人也不一定适用吧。最彻底的方法删掉你keychain access中的distribution证书,重新创建,

2015-01-05 15:52:07 11260

翻译 如何设置Xcode 自动管理你的provisioning profiles

本文翻译原文源自苹果文档,并不是逐字逐句的翻译,^_^,理解是目的,翻译是过程而已。许多管理过以前app的开发者们会在build setttings中指定对应的provisioning profile,本文呢主要讨论如何让Xcode帮你管理他们,以下说的同时适用于ios和os x 工程。在开始之前,确保你已经再project->General 窗口选择你的team(如下图):一

2015-01-05 15:08:45 14975

转载 layoutsubviews什么时候会被调用

It’s important to optimize any UIView layoutSubviews method you create, as it can be frequently called, and has the potential for creating recursion (triggering a setNeedsLayout from layoutSubviews ca

2015-01-03 10:12:31 417

原创 boundingRectWithSize:options:attributes:context:

在ios6.0以前,我们计算label中text所占size的大小是用以下方法:- (CGSize)sizeWithFont:(UIFont *)font constrainedToSize:(CGSize)size lineBreakMode:(NSLineBreakMode)lineBreakMode但是在ios7.0以后此方法被苹果弃用,下面这个方法是现在使用的:- (CGRec

2015-01-02 14:32:57 739

原创 MR_SHORTHAND does not work

开发过程中我一直没用到coredata,之前一直用的sqlite或者基于此的第三方开源框架。最近用到coredata了解了一下,直接使用现在比较流行的MagicalRecord,毕竟封装好的还是简单的。^_^,(感谢对这些第三方框架做过贡献的大家)  对于使用过程不赘述,只说遇到的问题,本人为了使用MagicalRecord中得方法时避免写MR_前缀且避免很多文件添加import "CoreD

2014-12-25 15:27:05 831

转载 block强引用问题

block对于其变量都会形成strong reference,对于self也会形成strong reference ,而如果self本身对block也是 strong reference 的话,就会形成 strong reference 循环,造成内存泄露,为了防止这种情况发生,在block外部应该创建一个week(__block) reference。所以在block内如果有self

2014-12-24 11:54:14 455

转载 bitbucket使用

一、软件及SSH keys:由于我的Bitbucket账号的邮箱及用户名与Github相同,所以SSH Public Keys可以用Github的,登录Bitbucket,悬浮在用户名boliquan那里点击“Account”,点击左边的“SSH keys”即可进行设置 软件不用再安装,仍然使用Github的二、创建一个私有项目及上传:登录后鼠标悬停在“Repositori

2014-12-24 11:46:45 528

转载 写给喜欢用Block的朋友(ios Block)

作者:fengsh998原文地址:http://blog.csdn.net/fengsh998/article/details/38090205转载请注明出处如果觉得文章对你有所帮助,请通过留言或关注微信公众帐号fengsh998来支持我,谢谢!本文不讲block如何声明及使用,只讲block在使用过程中暂时遇到及带来的隐性危险。主要

2014-12-24 11:41:44 289

转载 利用dispatch_once创建单例

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://bj007.blog.51cto.com/1701577/649413    无论是爱还是恨,你都需要单例。实际上每个iOS或Mac OS应用都至少会有UIApplication或NSApplication.什么是单例呢?Wikipedia是如此定义的:在软件工

2014-12-20 10:21:58 396

原创 Xcode 6 添加pch文件

本人菜鸟一个,高手绕道。首先说下什么是PCH文件,简单点说就是预编译文件,是为了提高编译效率的。白话说就是把你经常用到的不经常变化的头文件放入pch文件中,预先准备好。XCode 6之前创建工程会自动产生pch文件,本文主要说下XCode 6中如何添加。步骤如下:新建文件pch文件                                创建后出现以上文件      

2014-12-19 18:21:29 475

转载 CocoaPods安装和使用

CocoaPods是什么?当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等。可能某个类库又用到其他类库,所以要使用它,必须得另外下载其他类库,而其他类库又用到其他类库,“子子孙孙无穷尽也”,这也许是比较特殊的情况。总之小编的意思就是,手动一个个去下载所需类库十分麻烦。另外一种常见情况是,你项目中用到的类库有更新,你必须得重新下载新版本,重新

2014-12-19 10:44:47 457

转载 NSPredicate使用及正则表达式简单使用

匹配9-15个由字母/数字组成的字符串的正则表达式:    NSString * regex = @"^[A-Za-z0-9]{9,15}$";    NSPredicate *pred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex];    BOOL isMatch = [pred evaluateWithO

2014-12-10 15:47:04 958

空空如也

空空如也

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

TA关注的人

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