
iOS
yusirxiaer
前端移动端一路の风景
展开
-
iOS 适配HTTPS方法
一切为了迎合苹果在WWDC 2016开发者大会上,苹果宣布了一个最后期限:到2017年1月1日 App Store中的所有应用都必须启用 App Transport Security安全功能。App Transport Security(ATS)是苹果在iOS 9中引入的一项隐私保护功能,屏蔽明文HTTP资源加载,连接必须经过更安全的HTTPS。苹果目前允许开发者暂时关闭ATS,可以继续使用...原创 2018-08-08 11:44:19 · 989 阅读 · 0 评论 -
iOS开发-平台使用TestFlight进行Beta测试
使用 TestFlight,你可以向测试人员发布你 App 的 prerelease 版本来收集反馈信息,为将来发布 App 的正式版做准备。现在 TestFlight 是一个可选功能,你也可以不使用它,而是像以往发布 App 那样直接提交到 appStore。TestFlight 使用起来很容易,还是免费的,不妨把它作为你改进 App 的另一种渠道。不过现在 TestFlight原创 2017-06-21 11:56:21 · 1140 阅读 · 0 评论 -
2017年苹果公司开发者账号申请与支付流程
邓白氏编码下来之后,现在我们就可以走到付款流程,购置账号了!觉得有用的顶一下1.登陆苹果账号,加入苹果开发者https://developer.apple.com/ 2.按照指示,一步步点击进入就行了,反正你也看不懂(或者懒得看这些英文)。我们直接进入主题3.继续点击进入(这些步骤都是在你注册完apple id,并且完成公司邓白氏编码后才这么操作的)原创 2017-06-30 00:29:55 · 18045 阅读 · 3 评论 -
iOS开发--地图与定位
iOS开发--地图与定位概览现在很多社交、电商、团购应用都引入了地图和定位功能,似乎地图功能不再是地图应用和导航应用所特有的。的确,有了地图和定位功能确实让我们的生活更加丰富多彩,极大的改变了我们的生活方式。例如你到了一个陌生的地方想要查找附近的酒店、超市等就可以打开软件搜索周边;类似的,还有很多团购软件可以根据你所在的位置自动为你推荐某些商品。总之,目前地图和定位功能已经大量翻译 2017-02-09 10:38:44 · 326 阅读 · 0 评论 -
iOS中的WiFi与硬件通信
WiFi通信是指手机通过WiFi与外部设备建立连接,并与外部设备进行交互、通信。手机与外部设备的WiFi通信通常是使用Socket来实现的,在这里先介绍一个第三方Socket库(CocoaAsyncSocket)来实现WiFi通信。CocoaAsyncSocket支持TCP和UDP,其中:AsyncSocket类是支持TCP的;AsyncUdpSocket类是支持UDP的。本文是建原创 2016-12-30 14:23:13 · 1529 阅读 · 0 评论 -
iOS开发 简单实现视频音频的边下边播
直接切入主题,要实现的功能是:1、ios视频音频边缓存边播放,缓存时可以在已下载的部分拖拽进度条。2、缓存到一半退出,再次播放同一地址的视频时,视频继续下载,并且缓存进度已经走到上一次下载的位置。3、无论是下载到一半退出还是下载完退出,已缓存的数据都存到自己指定的一个路径。如果已下载完,下次播放时可以不再走网络,直接播放本地文件。4、一个有总时间,缓冲进度,播放进度转载 2016-12-27 16:06:20 · 537 阅读 · 0 评论 -
iOS开发 蓝牙技术4.0详解
前言前端时间,同学在做项目过程中遇到关于蓝牙方面的问题,今天我就给大家进行详细的进行讲解下蓝牙在iOS开发中的具体实现.在介绍蓝牙前,大家要搞清楚什么是蓝牙?什么是蓝牙?随着蓝牙低功耗技术BLE(Bluetooth Low Energy)的发展,蓝牙技术正在一步步成熟,如今的大部分移动设备都配备有蓝牙4.0,相比之前的蓝牙技术耗电量大大降低。从iOS的发展史也不难看出苹果目翻译 2016-11-28 15:55:30 · 731 阅读 · 0 评论 -
上架相关——appstore 更新app版本
注:此片文章是基于app已经上架,也就是证书都已经配置好的前提下。首先是还是app打包修改版本号修改project处的pp文件检查无误后打包打包完成后upload to app store 漫长的等待。。上传到appstore进入iTunesConnect选择我的app原创 2016-11-21 19:20:07 · 1658 阅读 · 0 评论 -
2017年苹果公司开发者账号申请-公司邓白氏编码
申请公司的苹果开发者账号和企业级的苹果开发者账号时,都会用到邓白氏编码,也就是我们申请苹果开发者账号时需要填写的D-U-N-S Number。 申请这个邓白氏编码是免费的,但是从像华夏邓白氏公司提交申请到可以申请苹果开发者账号来用这个9位的D-U-N-S Number,需要一段时间,我申请得到D-U-N-S Number,用了8个工作日(不算周末哦),但是下发编码的邮件中特别提示到(原创 2017-06-30 13:42:52 · 795 阅读 · 0 评论 -
不能修改“System Roots”钥匙串
iOS mac添加证书 不能修改“System Roots”钥匙串错误如图:解决方式:打开钥匙串---登录---,直接把证书拖过来然后,查看--我的证书,里面,找到证书,即可原创 2017-10-16 10:23:12 · 2306 阅读 · 0 评论 -
使用CocoaPods导入百度地图SDK所遇到的坑
执行pod install遇到的问题:解决方安:百度了下,发现pod install命令被墙了,换成pod install --verbose --no-repo-update原创 2018-01-16 12:19:49 · 2712 阅读 · 0 评论 -
解决MAC系统升级导致COCOAPODS失效问题
使用pod install出现如下错误-bash: /usr/local/bin/pod: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby: bad interpreter: No such file or directory这是Mac升级系统导致,当你的Mac系统升级为 high siera的时候,别忘记...原创 2018-08-08 11:42:45 · 219 阅读 · 0 评论 -
iOS11 更改状态栏、导航栏颜色的方法
ios上状态栏 就是指的最上面的20像素高的部分状态栏分前后两部分,要分清这两个概念,后面会用到:前景部分:就是指的显示电池、时间等部分;背景部分:就是显示黑色或者图片的背景部分;(一)设置statusBar的【前景部分】简单来说,就是设置显示电池电量、时间、网络部分标示的颜色, 这里只能设置两种颜色:默认的黑色(UIStatusBarStyleDefault)白色(UISt...原创 2018-08-06 14:29:20 · 10769 阅读 · 0 评论 -
iOS之页面布局-踩坑的原由
iOS之页面布局原文请点击在《iOS 7 UI Transition Guide》中有在《iOS 7 UI Transition Guide》的Bar and Bar Buttons一节中有这么一段话In iOS 7, the status bar is transparent, and other bars—that is, navigation bars, tab bars, t...原创 2018-08-05 23:27:06 · 568 阅读 · 0 评论 -
实例适配ios11
不多bb,上码#import "ViewController.h"#import "PersonViewModel.h"#import "Person.h"#import "ShowTableViewCell.h"#import #import @interface ViewController ()UITableViewDelegate,UITableViewDataSou原创 2018-01-19 17:31:38 · 382 阅读 · 0 评论 -
iOS11新增版本判断API
iOS11新增版本判断APIiOS11版本现在有了简单的API,OC也开始支持swfit的@available语法,不用再手写iOS版本判断了。if (@available(iOS 11.0, *)) { // 版本适配}// 或者#ifdef __IPHONE_11_0 #endif目前没发现有iPhoneX的机型判断API,暂时可以使用size来做代替判断。原创 2018-01-19 15:23:05 · 8325 阅读 · 0 评论 -
maskView与CAGradientLayer那回事儿
maskView基本原理png图片透明像素的原理maskView可类比于多张png图片的叠加遮罩,原理类似maskView是iOS8以上才有的,如果要考虑兼容低版本,用maskLayer替代//使用maskView的情况@property (nonatomic, strong)UIImageView *addImageView; //声明叠加图片Viewself.add原创 2018-01-18 13:56:40 · 239 阅读 · 0 评论 -
iOS开发-证书问题精析~
在iOS开发过程中,不可避免的要和证书打交道,真机调试、App上架、打包给测试去测试等都需要搞证书。在此过程中我们会遇到很多的问题,但是如果掌握了真机调试的原理和本质;遇到问题,我们就更容易定位问题之所在,从而迅速的解决问题。知识点补充: 摘要算法: 摘要算法是指,可以将任意长度的文本,通过一个算法,得到一个固定长度的文本。这里文本不一定只是文本原创 2017-09-13 14:42:18 · 990 阅读 · 0 评论 -
NSTimer不准确与GCDTimer详解
NSTimer不准,scheduleTimer放在runloop里面,受runloop模式影响会不准// [NSTimer scheduledTimerWithTimeInterval: target: selector: userInfo: repeats:];所以创建GCD定时器//dispatch_source_t timer = dispatch_source_cre原创 2018-01-17 11:06:20 · 2351 阅读 · 0 评论 -
上架相关——App Store 上架流程
说实话,公司要上架一个自己做的一个小项目。为了完成这个任务,菜鸟的我一遍找资料一遍跟着做,一遍修改错误一遍查找解决方案。网上的资料大部分都是2015年以前的资料,资料有点不够过时,而且步骤配图也不是很详细,导致我花费了整整4天的工作日只为实现appstore上架。哎呀,也是够蛋疼的,appstore上架的每个流程都要确认无误,每一步的错误都会导致最终的失败。这个shit的操作,再也对你无爱了。原创 2016-11-21 19:17:50 · 619 阅读 · 0 评论 -
iOS 支付宝SDK接入详解
一,在支付宝开放平台下载支付宝SDK(https://openhome.alipay.com/platform/document.htm#down)https://doc.open.alipay.com/doc2/detail.htm?spm=a219a.7629140.0.0.HpDuWo&treeId=54&articleId=104509&docType=1二,添加sdk原创 2016-11-21 11:19:44 · 3382 阅读 · 0 评论 -
iOS 正则表达式判断纯数字以及匹配11位手机号码
1用正则表达式 //是否是纯数字+ (BOOL)isNumText:(NSString *)str{ NSString * regex = @"(/^[0-9]*$/)"; NSPredicate * pred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex]; BOOL原创 2016-11-15 15:05:31 · 10884 阅读 · 2 评论 -
iOS AVAudioPlayer和AVAudioPlayerDelegate-音频播放处理中断
学习总是在进行。一、AVAudioPlayer如何处理中断AVAudioPlayer类提供了代理方法,用来处理当播放音频文件时,发生来电、闹钟等事件。二、AVAudioPlayer代理方法实现设置代理并遵守AVAudioPlayerDelegate协议AVAudioPlayerDelegate中提供的代理方法/* 播放完毕后调用 */- (void)audioPlayerDidFinishPl原创 2016-09-08 20:56:03 · 4014 阅读 · 0 评论 -
iOS Tips 模拟器屏幕截图
当我们发布app到AppStore的时候,在itunes connect里面,苹果官方要求我们提供各种尺寸的屏幕截图。由于受到硬件条件的限制,我们不可能在每个真实的物理机器上测试并截图,相反如果我们能直接在模拟器上进行屏幕截图的话,那么会给我们带来非常大的便利,也节省了我们的宝贵时间。说下步骤:1.选择需要屏幕截图的模拟器,并开始运行2.待模拟器运行开始的时候,按住cmd+S, 模原创 2016-09-06 15:37:30 · 636 阅读 · 0 评论 -
检测字符串包含emoji表情
有时候在开发时会遇到不希望字符串中包含emoji表情的情况,Google之后发现了方法,但是似乎iOS9之后的emoji无法过滤,继续寻找方法,在一个NSString的扩展中发现了办法//判断是否有emoji+(BOOL)stringContainsEmoji:(NSString *)string{ __block BOOL returnValue = NO; [string原创 2016-09-02 12:13:51 · 5392 阅读 · 0 评论 -
AFNetworking 对数据进行https ssl加密
参考来源:http://www.cnblogs.com/jys509/p/5001566.html 现在在工作中的工作需求:https请求验证证书一般来讲如果app用了web service , 我们需要防止数据嗅探来保证数据安全.通常的做法是用ssl来连接以防止数据抓包和嗅探其实这么做的话还是不够的 。 我们还需要防止中间人攻击(不明白的自己去百翻译 2016-08-11 17:31:32 · 418 阅读 · 0 评论 -
iOS 够逼格的注释总结
首先关于注意这里就不说什么VVDocument了,来点新鲜的!也许你使用过#warning 警告提示也许你也使用过#pragma marks。但是你见过或者使用过下面这个吗?Comments containing:MARK:TODO:FIXME:!!!:???:没有,那么你就快速的看看下面的内容,非常好用,也非常简单,不过具体使用看个人 首先说一原创 2016-09-12 10:02:27 · 1565 阅读 · 0 评论 -
iOS运行时-使用Runtime向Category中添加属性以及运行时介绍
前言了解OC的都应该知道,在一般情况下,我们是不能向Category中添加属性的,只能添加方法,但有些情况向,我们确实需要向Category中添加属性,而且很多系统的API也有一些在Category添加属性的情况,例如我们属性的UITableView的section和row属性,就是定义在一个名为NSIndexPath的分类里的,如下 那这到底是怎么实现的呢?iOS运行原创 2016-09-09 10:49:12 · 2040 阅读 · 0 评论 -
iOS中监测来电方案
问题最近在做一个有录音功能的App,要求当用户接到来电时,要停止录音。该如何实现这个功能呢?解决方案我首先想到了AppDelegate里的applicationWillResignActive:方法,在该方法的注释中就写到到收到来电或短信时,系统会自动调用该方法,如下:// Sent when the application is about to move f原创 2016-09-09 10:40:38 · 351 阅读 · 0 评论 -
iOS设计模式 ——单例模式详解以及严格单例模式注意点
本文适合新手以及对怎样设计单例模式模糊不清的人阅读。本文详尽解释了单例模式的各种,单例模式,一般用来管理某些资源的,用来管理某个对象,他这个对象持有了某些核心资源,这个资源可以全局共享。大部分情况我们使用单例模式就是为了共享信息 ,一般作为管理中心。缺点是因为他共享了信息,就破坏了设计模式中的最少知识原则,产生了耦合,破坏了封装性,。但是在解决问题的过程中,这种不好的地方也是可以忽略的。原创 2016-08-17 14:29:06 · 2449 阅读 · 0 评论 -
iOS10 权限访问崩溃
手机升级了 iOS10 Beta,然后用正在开发的项目 装了个ipa包,发现点击有关 权限访问 直接Crash了,并在控制台输出了一些信息:This app has crashed because it attempted to access privacy-sensitive data without a usage description. The app's Info.plist mus转载 2016-09-20 17:11:34 · 260 阅读 · 0 评论 -
ApplePay集成教程
Apple Pay运行环境:iPhone6以上设备,操作系统最低iOS9.0以上,部分信息设置需要iOS9.2以上。目前还不支持企业证书添加。环境搭建好后可以在模拟器上面运行,xcode7.2.1+iPhone6SP9.2系统下,系统会绑定几种虚拟的银行卡,和几个联系人,方便调试,支付也不会发生真实的付款,真的很方便。准备工作在接入Apple Pay之前,首先要申请Merchant转载 2016-09-20 17:16:50 · 851 阅读 · 0 评论 -
iOS CoreTelephony框架介绍与使用案列
昨晚看一篇文章时看到了私有API这个词,貌似开发者对私有API的使用很反感于是果断百度谷歌,以下是Stackoverflow中关于Private Frameworks的一个解释:Private frameworks are frameworks which you are not allowed to use. They are not expected to be used outsid转载 2016-09-07 18:52:26 · 1265 阅读 · 0 评论 -
iOS 自定义Cell按钮的点击代理事件
在实际开发工作中,我们经常会在自定义的Cell中布局一些按钮,并且很多时候我们会在点击这个按钮的时候使我们的UItableviewController跳转到下一界面,有的可能还要传值。那么如何使我们的控制器能够获知我们按下了cell的按钮呢?毫无疑问,这是个代理模式的典型应用场景。首先我们先得定义一个cell。.h文件如下:[objc] view plain copy原创 2016-11-16 15:13:51 · 5987 阅读 · 1 评论 -
UIDocumentInteractionController之程序间文档共享
iOS中的沙盒可以让平台更加的安全,这也是沙盒给用户带来的最主要好处。不过由于沙盒的严格限制,导致程序之间共享数据比较麻烦。一般在程序间共享文档可以通过UIDocumentInteractionController类实现通讯。它支持在你的app中用其他app预览和显示文档。同时也支持文件关联,允许其他app通过你的程序打开文件。这些技术包括了UIKit中提供的UIDocumentInteracti原创 2016-10-27 15:41:57 · 1460 阅读 · 0 评论 -
看YYModel源码的一些收获
关于源码学习自己的一些感悟第一层:熟练使用;第二层:读懂代码;第三层:通晓原理;第四层:如何设计;自己学到了什么,还留有什么问题;关于分享关于线下演讲分享和线上文章分享,我一直觉得技术领域要学东西的话线上文章分享是最好的形式,一是它传播广,触达用户多;二是耗时少,写一篇文章或看一篇文章都比听一个分享花的时间少很多;三是可沉淀,读者可以反复看细原创 2016-11-07 14:33:54 · 455 阅读 · 0 评论 -
iOS获取手机的IP地址
1.添加这五个库(在联网的情况下)#import #import #import #import #import 2.写一个方法- (NSString *)getDeviceIPIpAddresses{ int sockfd =socket(AF_INET,SOCK_DGRAM, 0);// if (sockfd 0) return nil; NS原创 2016-10-12 09:25:18 · 1713 阅读 · 0 评论 -
iOS获取当前设备型号等信息总结 包含iPhone7和iPhone7P
#include #include //获得设备型号+ (NSString *)getCurrentDeviceModel{ int mib[2]; size_t len; char *machine; mib[0] = CTL_HW; mib[1] = HW_MACHINE; sysctl(mib, 2, NULL, &len, NULL原创 2016-10-11 12:04:22 · 11404 阅读 · 0 评论 -
iOS开发实用技巧—Objective-C中的各种遍历(迭代)方式
说明: 1)该文简短介绍在iOS开发中遍历字典、数组和集合的几种常见方式。 2)该文对应的代码可以在下面的地址获得:https://github.com/HanGangAndHanMeimei/Code 一、使用for循环 要遍历字典、数组或者是集合,for循环是最简单也用的比较多的方法,示例如下: 1 //普通的for循环遍历 2 -(void)iter转载 2016-09-08 21:15:56 · 338 阅读 · 0 评论 -
牛人iOS开发系列--音频播放、录音、视频播放、拍照、视频录制
概览随着移动互联网的发展,如今的手机早已不是打电话、发短信那么简单了,播放音乐、视频、录音、拍照等都是很常用的功能。在iOS中对于多媒体的支持是非常强大的,无论是音视频播放、录制,还是对麦克风、摄像头的操作都提供了多套API。在今天的文章中将会对这些内容进行一一介绍:音频音效音乐音频会话录音音频队列服务视频MPMoviePlayerControllerMPMov转载 2016-10-10 10:45:20 · 842 阅读 · 0 评论