自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(56)
  • 资源 (4)
  • 收藏
  • 关注

原创 IOS版本企业账户发布流程

由于昨天一个突然的需求,我需要发布一个企业版的iOS包好久没碰代码,内心忐忑,还是不要多想,直接上手吧1.先生成iOS的企业级配置文件和一个p12证书。(和上传到App Store还是有些不同的,可以看其他博客,之后是重点)2.打开安装p12证书3.在target中取消勾选,导入配置文件,其他啥都不用改4.点击product  --  选择archive,导出5.选...

2018-11-15 16:03:55 472

原创 Xcode9.4.1下载(肯定可以下,先别升级X10,等第三方更新后)

 升级了xcode10.1,太坑了,删掉了一些库,大部分第三方还没来及更新,好多报错,临近上线,先果断换回来 Xcode 9.4.1https://download.developer.apple.com/Developer_Tools/Xcode_9.4.1/Xcode_9.4.1.xip更多下载https://developer.apple.com/download/more/...

2018-11-11 10:25:41 3143

原创 Mac下如何生成ssh key

git是分布式的代码管理工具,远程的代码管理是基于ssh的,所以要使用远程的git则需要ssh的配置。简单的说,Git - 版本控制工具;Github是一个网站,提供给用户空间创建git仓储,保存用户的一些数据文档或者代码等;GitLab是基于Git的项目管理软件       首先,使用代码管理工具把本地的代码上传到服务器时需要加密处理,加密传输的算法有很多种,git可使用rsa,rsa要...

2018-08-21 11:22:35 3637

原创 iOS APP打包上传到APPstore的最新步骤

一、前言:作为一名iOS开发者,把辛辛苦苦开发出来的App上传到App Store是件必要的事。但是很多人还是不知道该怎么上传到App Store上下面就来详细讲解一下具体流程步骤。二、准备:一个已付费的开发者账号(可分为):账号类型分为个人(Individual)公司(Company)企业(Enterprise)高校(University)四种类型每年资费分别为$

2017-03-10 10:08:04 14546

原创 关于swift3.0关于弹出键盘高度的问题

用swift3.0做项目,想自己写个关于解决键盘不遮挡视图的方法,本以为很简单,没想到原来的方法用不了了,后来解决了,记录下。1.通知还是那个通知,但是写法就变了一些//MARK: 避免键盘弹出遮挡视图的通知NotificationCenter.default.addObserver(self, selector: #selector(KXSLAddLockViewController

2016-10-25 15:59:35 2369

原创 关于XCODE8控制台打印大段无用代码的解决办法

X8运行时总是有大段无用代码,这极大的影响了我们对打印信息的阅读。两步即可解决问题1.2.插入OS_ACTIVITY_MODE,设为disable即可。

2016-10-25 13:39:23 1076

原创 Swift3.0和OC交互的最新用法

前几天碰到客户有个神奇的要求:使用xcode8测试版,swift3.0开发一个项目,涉及到网络请求,蓝牙,数据库等很多方面。这些用oc可以简单搞定的东西换成swift3.0后感觉整个人都不好了。本篇先说一下和OC交互的大致方法,稍后会边用边写用法,大家一起交流。在swift项目中免不了要和oc进行混编,xcode7混编的时候很简单,直接托入一个oc类的文件,会提示你是否要创建桥接文件Bridg

2016-07-19 13:50:30 4639 3

转载 iOS正则表达式的应用

一、什么是正则表达式  正则表达式,又称正规表示法,是对字符串操作的一种逻辑公式。正则表达式可以检测给定的字符串是否符合我们定义的逻辑,也可以从字符串中获取我们想要的特定部分。它可以迅速地用极简单的方式达到字符串的复杂控制。二、正则表达式的语法  看一个过滤纯数字的例子- (BOOL)validateNumber:(NSString *) textString{

2016-07-05 13:59:40 507

原创 iOS设备UUID的获取方法(不变的唯一值)

UDID被弃用,使用UUID来作为设备的唯一标识。获取到UUID后,如果用NSUserDefaults存储,当程序被卸载后重装时,再获得的UUID和之前就不同了。使用keychain存储可以保证程序卸载重装时,UUID不变。但当刷机或者升级系统后,UUID还是会改变的。但这仍是目前为止最佳的解决办法了,如果有更好的解决办法,欢迎留言。进入正题,我之后又试了下自己写的方法,发现用模拟器可以,

2016-06-28 09:35:08 21801

转载 iOS内购的开发和坑

本文会给大家详细介绍iOS内购,这是本人16年5月底的开发过程,希望对看完此篇文章的人有所帮助。 本文基于XcodeVersion 7.3 (7D175)版本,手机是iPhone 6,9.3系统。 部分地方直接摘自网络,基本上是我的逻辑,省时省心省力。一. 创建测试App首先你需要登录 App的ItunesConnection,你会看到如下界面 简单

2016-06-10 09:11:30 1649

转载 iOS开发Cocopads的最新用法

CocoaPods的使用关于CocoaPods,相信做iOS开发的应该都比较熟悉了。Cocoapods是一个用来管理第三方库的比较好用的管理工具。关于Cocoapods的东西不再多说,接下来进入正题。我的软件版本如下:Xcode版本为7.3.1CocoaPods版本为1.0使用终端进行管理查询库的命令跟之前的一样$ pod search

2016-06-08 13:06:35 1647

原创 关于UI给的字号问题

一,ps和pt转换px:相对长度单位。像素(Pixel)。(PS字体)pt:绝对长度单位。点(Point)。(iOS字体)公式如下:pt=(px/96)*72。二,字体间转换1in = 2.54cm = 25.4 mm = 72pt = 6pc具体换算是: Points Pixels Ems Percent 6pt 8px 0.5e

2016-06-06 19:51:31 952

原创 Masonry的用法

Masonry是一个轻量级的界面布局框架,拥有自己的描述语法,采用更优雅的链式语法封装自动布局,简洁明了并具有高可读性,而且同时支持 iOS 和 Max OS X。Masonry是一个用代码写iOS或OS界面的库,用官方的说明就是Masonry完成可以代替Auto layout。Masonry的github地址:https://github.com/SnapKit/MasonryMason

2016-06-06 17:36:27 764

原创 iOS关于使用NSURLSession进行大文件下载以及断点下载

NSURLSession 可以发送Get/Post请求,实现文件的下载和上传。在NSURLSesiion中,任何请求都可以被看做是一个任务。其中有三种任务类型// NSURLSessionDataTask : 普通的GET\POST请求// NSURLSessionDownloadTask : 文件下载// NSURLSessionUploadTask : 文件上传(很少用,一般服

2016-06-06 07:50:53 2390

原创 iOS下状态栏和导航栏的控制问题

iOS的项目多数会遇到控制状态栏和导航栏的问题,比如隐藏状态栏、控制状态栏的文字颜色等,导航栏也有同样需求。本文总结一下操作方法。首先一点,IOS的界面分为状态栏和导航栏,状态栏是指显示电池、时间的最顶部的一个窄条,高度为20个点;而导航栏是紧接着状态栏的44个点高度的横条,一般用于显示app标题,返回按钮等操作按钮。在ios7之前,状态栏和导航栏是分开的,而从ios7开始状态栏和

2016-06-02 10:26:46 1692

原创 iOS系列版本更新上架流程

1 上传至apple developer1.1 上传准备工作 更新上架和发布上架不同,在原始版本首次上架的时候就将描述文件和证书之类的文档下载好了,所以无需再安装此类文件。 在测试人员确认可以上架以后,首先需要在 Build Settings/Code Signing中将之前真机调试用的developer调试证书换成distribution发布证书,然后在product/scheme

2016-05-31 20:24:40 4046

原创 iOS版本控制工具(SVN,GIT,SourceTree)

公司的实际开发中,在天朝使用较多的还是SVN,因为SVN是集中式的,在天朝上班你们都懂的! -----------------svn-----------------   一:最常用基本步骤--- 下载(完整下载,第一次),将服务器的项目下载到本地开始开发svn checkout ip —uaerbane=? —password=?     //这里

2016-05-27 11:57:54 5115

原创 用PickerView定制一个简单的datepicker

做应用的时候免不了会对某些UI控件做一些样式上的定制,比如Button的背景色,圆角,阴影等元素的调整。UIDatePicker也是一个比较常用的UI控件,iOS 7简约的设计风格在某些场景下可能并不是很合适,所以UIDatePicker有时也是一个有较大定制需求的控件。但是令人匪夷所思的一点是,尽管UIDatePicker和UIPickerView看起来好像是差不多的两个UI组件,但是从iOS的

2016-05-26 13:00:02 683

转载 iOS各种最全的画图实现 (折线图.走势图.柱状图.动态曲线图.形状图.划线图)

前言具体实现如下:目录前言第一 折线图实现.1) 自定义视图实现.2)关键技术实现.3) 方法调用.4) 效果展示第二 走势曲线图实现.1) 导入DJChart第三方库.2)横竖轴参数设置.3) 方法调用.4) 效果展示第三 画线图实现.1) 导入ZXQuartz第三方库.2) 自定义视图,画各种图形.3) 方法调用.4)

2016-05-25 15:26:16 14883 2

原创 PickerView的用法

//加载pickerview在viewDidLoad函数中调用该函数即可,刚开始将pickerview放在屏幕最底方,通过调用下面的showPickerView函数使其从底部动态出现-(void) addPickerView {if (pickerView ==nil) {pickerView = [[UIPickerViewalloc] initWithFrame:CGR

2016-05-24 18:23:53 478

原创 segment的总结

初始化UISegmentedControlNSArray *arr = [[NSArray alloc]initWithObjects:@"轻拍",@"长按",@"清扫",@"旋转",@"捏合",@"拖拽", nil];//先创建一个数组用于设置标题 UISegmentedControl *segment = [[UISegmentedControl alloc]ini

2016-05-24 10:10:19 1815

原创 iOS前端与后台交互技术实现及技术细节

前言:今天由我给大家进行一场技术分享,分享的主题也是大家还没有工作或者才去工作不久或者是正处于试用期的同学非常关心的一个问题,就是我们做iOS,HTML5,安卓等前端开发的如何跟我们的公司后台进行交互. 面临后台我们应该说些什么? 应该怎么去规避一些不该属于自己的任务而被后台强加于自己?等等问题。1.前端请求数据的URL由谁来写?在开发中,URL主要是由后台来写的,写好

2016-05-23 18:03:22 6066

原创 关于Device Tocken的改变

这两天研究推送功能,就是Device token不是一成不变的。当我用XCode直接编译运行到手机上的时候,Device token是以3开头的,而当我打包上传到fir.im,再下载安装的时候,Device token就变成以5开头了其实这是生产环境和开发环境的问题,在这两个环境下Device token是不同的如果你手机中的APP是通过XCode直接安装的话,那么你的APP就属于

2016-05-17 11:30:02 1082

转载 iOS蓝牙开发(下)一个好用的蓝牙第三方BabyBluetooth

BabyBluetooth 是一个最简单易用的蓝牙库,基于CoreBluetooth的封装,并兼容ios和mac osx。特色:基于原生CoreBluetooth框架封装的轻量级的开源库,可以帮你更简单地使用CoreBluetooth API。CoreBluetooth所有方法都是通过委托完成,代码冗余且顺序凌乱。BabyBluetooth使用block方法,可以重新按照功能和顺序

2016-05-12 17:23:41 5887

原创 iOS蓝牙开发(中)APP作为外设被连接的问题

peripheral模式的流程1. 打开peripheralManager,设置peripheralManager的委托2. 创建characteristics,characteristics的description 创建service,把characteristics添加到service中,再把service添加到peripheralManager中3. 开启广播advertis

2016-05-12 17:10:50 2818 1

原创 iOS蓝牙开发(上)基础以及连接外设的实现

蓝牙常见名称和缩写MFI ======= make for ipad ,iphone, itouch 专们为苹果设备制作的设备BLE ==== buletouch low energy,蓝牙4.0设备因为低耗电,所以也叫做BLEperipheral,central == 外设和中心,发起连接的时central,被连接的设备为perilheralservice a

2016-05-12 16:48:45 10196

转载 iOS开发详细技巧

iOS开发的这些年踩过的坑一、 iPhone Size手机型号屏幕尺寸iPhone 4 4s320 * 480iPhone 5 5s320 * 568iPhone 6 6s375 * 667iphone 6 plus 6s plus414 * 736二、 给navigation Bar

2016-05-09 10:57:45 1494

原创 VoiceOver的使用

简介VoiceOver是苹果“读屏”技术的名称,属于辅助功能的一部分。VoiceOver可以读出屏幕上的信息,以帮助盲人进行人机交互。 这项技术在苹果的各个系统中都可以看到,OS X,iOS,watchOS,甚至tvOS。 苹果公司的VoiceOver在2015年6月18日获得了美国盲人基金会(American Foundation for the Blind, AFB)颁发的海伦凯勒成就奖,

2016-05-09 09:42:00 2795

原创 SDWebImage使用进阶

使用场景:自定义的UITableViewCell上有图片需要显示,要求网络网络状态为WiFi时,显示图片高清图;网络状态为蜂窝移动网络时,显示图片缩略图。由于要监听网络状态,在这里笔者推荐使用AFNetWorking。(1)在GitHub或者利用cocoaPod给项目导入第三方框架AFNetWorking。(2)在AppDelegate.m文件中的  application:d

2016-05-04 11:06:33 599

转载 coredata的使用

一、概念1.Core Data 是数据持久化存储的最佳方式2.数据最终的存储类型可以是:SQLite数据库,XML,二进制,内存里,或自定义数据类型在Mac OS X 10.5Leopard及以后的版本中,开发者也可以通过继承NSPersistentStore类以创建自定义的存储格式3.好处:能够合理管理内存,避免使用sql的麻烦,高效4.构成:(1)NSManaged

2016-05-03 16:07:53 731

原创 优化TableViewCell高度计算的问题

我是前言这篇文章是我和我们团队最近对 UITableViewCell 利用 AutoLayout 自动高度计算和 UITableView 滑动优化的一个总结。我们也在维护一个开源的扩展,UITableView+FDTemplateLayoutCell,让高度计算这个事情变的前所未有的简单,也受到了很多星星的支持,github链接请戳我这篇总结你可以读到:UITableV

2016-04-26 12:03:15 1166

转载 如何优化tableView的流畅度

TableView卡顿的原因1、 在代理方法中做了过多的计算占用了 UI 线程的时间2、Cell 中 view 的组织复杂关于第一点,首先要明白 tableview 的代理(这里指 datasource 和 delegate 的那套方法,下同)方法的调用顺序,和时机。对于一般的应用会有如下顺序:1、向代理要 number Of Rows。2、对于每行向代理要 height

2016-04-25 15:23:54 984

原创 iPhone的屏幕尺寸和分辨率

设计原型时,使用低分辨率的就可以。最终用户界面才使用高分辨率的,以适应苹果Retina屏的显示。iPhone4做原型时,可以用320*480,iPhone5做原型时,可以用320*568,iPhone6做原型时,可以用375*667,iPhone6 Plus原型,可以用414x736, 参考链接:http://www.zhihu.com/question/2

2016-04-22 16:56:49 891

原创 TCP,Socket,HTTP,TCP和UDP的区别

网络由下往上分为  物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。  通过初步的了解,我知道IP协议对应于网络层,TCP协议对应于传输层,而HTTP协议对应于应用层,  三者从本质上来说没有可比性,  socket则是对TCP/IP协议的封装和应用(程序员层面上)。  也可以说,TPC/IP协议是传输层协议,主要解决数据如何

2016-04-20 21:42:03 1585

原创 实用的Githup上的iOS开源项目

在 Github 上 Star 太多了,有时候很难找到自己想要的开源库,所以在此记录下来。便于自己开发使用,也顺便分享给大家。动画awesome-ios-animation收集了iOS平台下比较主流炫酷的几款动画框架RCTRefreshControlqq的下拉刷新TBIconTransitionKit

2016-04-19 09:50:50 2149

原创 关于图片的等比缩放,从相机和照片选取头像,显示圆形头像

话不多说,应该都是大家经常使用的功能,就总结了下,分享给朋友们,希望多提宝贵意见1.通过相机和从相片中选择设置头像//MARK:通过相机和从相片中选择设置头像    //弹出提示框,选择获取头像的方式    //从相册获取图片- (void)takePictureClick:(UIButton *)sender    {        //    /*注:使用,需要

2016-04-16 17:04:31 1130

原创 非常好用的iOS正则表达式

//邮箱+ (BOOL) validateEmail:(NSString *)email{    NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";    NSPredicate *emailTest = [NSPredicate predicateWithForma

2016-04-15 20:27:23 738

原创 关于Xcode的错误分析和处理

BMKGeoCodeSearch 反向地理编码一直失败 Location 申请的key的安全码与代码中build id不一样,修改成一样就OK了 新建一个类,将百度地图的定位功能封装起来以后,定位的代理方法不走 定位是要一直持续的,而我们新建这个类,如果不设置成,staic静态变量,他就会自动销毁,对象销毁以后肯定不会定位了。 ios8系统

2016-03-29 09:30:03 1896

转载 个人常用的iOS第三方库和插件(不一定全面,但一定好用)

第三方库CocoaPod CocoaPod并不是iOS上的第三方库 而是大名鼎鼎的第三方库的管理工具 在CocoaPod没有出现之前 第三方库的管理是非常痛苦的 尤其是一些大型的库(比如nimbus) 每次对库进行更新 都可能会非常的痛苦 CocoaPod的出现解决了这些问题 以Framework的方式引入第三方库 极大的节约了集成的时间 而且通吃Objective-C和Swift

2016-03-28 19:30:14 3375 1

原创 使用SAE免费托管SVN代码

对于一般的开发者来说,如果你的代码开源,那么可以使用GoogleCode,Github等主流的代码托管服务。如果你不想开源你的代码,那么你就有必要使用私有的代码托管服务。当你只需要在一台机器上做开发时,你可以在本地建版本库,并使用云存储工具保存代码即可。不过,我认为使用免费的私有代码托管服务是更好的办法,比如SAE的SVN代码托管.你说你还没有用过SAE?那么你不嫌麻烦的话就去注册一个试试吧,除了

2016-03-21 11:33:34 1715

PMBOOK第6版英文版

适用于2018年改版的pmp考试使用,其中变化加入了很多内容,18年考试的同学要小心了,我是一名准备在17年12月份考pmp的pm,希望抓住最后的小尾巴

2017-09-15

PMBOOK第6版中文版

适用于2018年改版的pmp考试使用,其中变化加入了很多内容,共740页,18年考试的同学要小心了,我是一名准备在17年12月份考pmp的pm,希望抓住最后的小尾巴

2017-09-15

iOS网络高级编程:iPhone和iPad的企业应用开发

除了常见的 iOS 网络通信相关技术外,本书还详尽 介绍了底层网络,这是构成高层网络功能的基石。掌握这些底层知识将有助于开发者更好 地理解上层网络功能及使用方式,并选择最适合自己的网络技术。

2017-03-08

如何获取iOS设备的UUID

UDID自从被苹果公司禁止开发者使用,UUID便成为替代品,一般使用UUID的时候,当程序被卸载重装之后,UUID一般会被改变,无法保证唯一。但使用我代码里的方法,便可以保证唯一,即使程序被卸载重装之后也仍然是卸载前的UUID。

2016-06-28

空空如也

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

TA关注的人

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