- 博客(47)
- 收藏
- 关注
原创 Xcode 下载真机包调试
解决在低版本的Xcode上使用高版本iOS系统手机进行真机测试Xcode 真机包资源下载地址:真机包资源下载地址下载好以后解压,复制到以下路径:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport重启Xcode后就可以用Xcode真机调试了...
2022-03-03 14:55:50
4058
原创 腾讯云CODING CI(持续集成) iOS项目
一.自定义节点自定义节点文档因为coding上默认的构建计划的模板中没有关于我们iOS的构建模板,所以我们需要自定义一个构建过程。image二.自定义节点池因为构建计划需要一个指定的节点池来运行构建任务所以我们需要创建一个新的节点池以下以Mac os为例:进入构建节点,选择【接入新节点】->【macOS】,接入方式选择 Bash,在接入配置中选择对应节点池,点击【生成接入配置并复制】。在终端中输入命令后,等待服务下载完成。安装..
2022-02-27 14:28:54
2457
转载 iOS 自动续期订阅 恢复购买
恢复购买内购有4种:消耗型项目,非消耗型,自动续期订阅,非续期订阅。 其中”非消耗型“和”自动续期订阅“需要提供恢复购买的功能,例如创建一个恢复按钮,不然审核很可能会被拒绝。//调起苹果内购恢复接口[[SKPaymentQueue defaultQueue] restoreCompletedTransactions];“消耗型项目”和“非续期订阅”苹果不会提供恢复的接口,不要调用上述方法去恢复,否则有可能被拒。 “非续期订阅”也是“跨设备同步”的,所以原则上来说也需要提供恢复购买的功能,但需
2021-04-08 16:56:58
3778
原创 iPhone机型判断大全 (2020年10月更新:iPhone 12、iPhone 12 Pro、iPhone 12 Pro Max)
设备型号官网地址:https://www.theiphonewiki.com/wiki/Models2018年9月新增设备iPhone 11 , iPhone 11 Pro, iPhone 11 Pro Max+ (NSString *)getDeviceType{ struct utsname systemInfo; uname(&systemInfo); ...
2019-09-29 16:48:01
5776
转载 Xcode缓存清理
摘抄自https://blog.csdn.net/hu434587115/article/details/54602449~/Library/Developer/Xcode/DerivedData/这个文件夹中保存的是Xcode的缓存文件,曾经在Xcode跑过的所有项目的索引、build的信息等都会保存在这里。删除后在下次打开项目编译的时候将会重新生成。由于这里包含了大量已经没用的项目的信息...
2019-05-10 15:11:24
1142
原创 iOS审核2.3.1被拒的悲惨经历
2019年03月30日 上架公司的其中一个APP管理端突然被拒,被拒理由如下:Guideline 2.3.1 - PerformanceWe discovered that your app contains obfuscated code, selector mangling, or features meant to subvert the App Review process by...
2019-04-23 10:16:09
25005
3
原创 iOS xcode 检测项目中的无用的图片工具
项目大改版, 几乎所有的界面图片都需要重新更换. 那么对于之前一个或多个版本的旧的,无用的无效的图片资源,我们不可能一个一个的就找,然后复制图片名字搜索吧(注:这是一种笨方法). 那么接下来讲解的是我用的方法.二,方法1,这里有个检测工具LSUnusedResources (地址:https://github.com/tinymind/LSUnusedResources)在github上...
2019-04-22 17:17:44
2020
翻译 关于邓白氏码
一个公司可以申请一个邓白氏码(DUNS),一个邓白氏码(DUNS)只能申请一个公司开发者账号和五个企业开发者账号一个DUNS code对应一张营业执照,不可重复申请,另外这个码还有申请都是免费的。申请周期是一周一个DUNS code只能申请一个公司性质的开发者账号,可以申请五个企业性质的开发者账号 PS:现在企业不好申请,一个taobao都卖14万了...
2019-04-22 16:06:58
1540
2
原创 iOS8.1.1 手机图片变形问题
先来看两张图吧1、2、出现这种情况的时候我吓得一尿,然后用自己的手机亲自测了一遍(iOS10.2.1),并没有发现此类问题,再拿同事手机测试(iOS11.2.1),也没有出现此类问题。自己测试是测不出来的。然后询问市场人员,根据询问市场人员得知关于客户手机的信息为:iPhone 6 iOS8.1.1,然后立马用模拟器跑了一遍发现果然有此类现象。然后上网搜索
2018-01-17 17:29:34
2671
5
转载 UITableView UITableViewStylePlain 和 UITableViewStyleGrouped的区别
一。如何选择grouped Or Plain1.grouped的sectionHeader,sectionFooter的背景色默认跟tableview的背景色一样。plain反之2.grouped的sectionHeader不会悬浮。plain反之。3.plain会出现多余的分割线,grouped不会。4.grouped某一行的上线边缘默认会有分割线。5.优先使用grouped
2017-07-25 17:50:32
826
原创 iOS10 权限崩溃问题
1,在项目中找到info.plist文件,右击有个 Open As,以Source Code 的形式打开2,分别复制 以下 Value 和Key,Key 一定不能错,Value 貌似可以随便填写相机权限描述: NSCameraUsageDescription cameraDesciption通信录: NSContactsUsageDescripti
2017-03-24 13:19:53
409
转载 iOS集成linphone
1、首先准备工作:下载linphone官方SDK http://www.linphone.org/technical-corner/liblinphone/downloads我的Demo中使用的是3.12.1版本2、新建项目:(1):Build Setting->Other Linker Flags 增加-Objc(2):Build Phases->Link Binary Wi
2017-03-17 15:23:13
2619
1
转载 SDWebImage 加载图片原理
目前标注的类通过标注的类,看懂应该没问题了。SDWebImage是一个图片缓存的框架。相较于AFNetworking集成的UIImageView+AFNetworking.h,对于图片的缓存实际应用的是NSURLCache自带的cache机制。而NSURLCache每次都要把缓存的raw data 再转化为UIImage,就带来了数据处理和内存方面的更多操作。SDWebImage的缓存
2016-08-25 14:34:29
2065
1
转载 js调用OC代码
接着上节我们讲到的iOS调用js下来我们使用js调用iOSjs调用iOS分两种情况一,js里面直接调用方法二,js里面通过对象调用方法首先我们看第一种,直接调用方法。其中用到了iOS的block上代码-(void)webViewDidFinishLoad:(UIWebView *)webView { //网页加载完成调用此方法
2016-05-20 14:15:26
482
转载 oc调用js方法
从iOS7开始 苹果公布了JavaScriptCore.framework 它使得JS与OC的交互更加方便了。下面我们就简单了解一下这个框架首先我导入framework方法如下点击Linked Frameworks and Libraries 的添加后 选择 JavaScriptCore.framework选中JavaScriptCore
2016-05-19 10:58:02
1549
转载 Xcode因为证书问题经常报的那些错
因为证书问题 Xcode 经常报这样或那样的错,经过一年多的实践,现在看见 Xcode 报错已经心平气和了,经常报的错就那么多,整理一下。1、确认下证书是不是开发证书,如果是发布证书就会出现这样的提示。2、证书失效了,去开发者中心重新生成一个。3、包标识符不与描述文件包含的包标识符不一致,按照它的提示换一下就好了,最好不要点 Fix Is
2016-05-17 16:58:51
464
1
原创 UIDatePicker 高度的设置
最近在做项目的时候遇到了一个坑,项目中需要用到DatePicker时间选择器,xcode是7.3的,支持的ios系统是最新的ios9.3,自己的手机也是最新系统,在自测的时候DatePicker在我的View中展示的非常完美,可是我们的测试人员就拿着测试机来找我了...在这里说明一下测试的手机是ios8.3的系统,在测试手机中显示的DatePicker非常大,大到我自己都傻眼了(宝宝心里苦
2016-05-10 14:34:23
5516
原创 ios 让程序在后台长久运行的方法
在以前,当应用被按Home键退出后,应用仅有最多5秒钟的时间做一些保存或者清理资源的工作,但是应用可以调用UIApplication的beginBackgroundTaskWithExpirationHandler方法,让应用最多有10分钟的时间在后台长久运行,这个时间可以用来做清理本地缓存、发送统计数据等工作。让程序在后台长久运行的示例代码如下://APPDelegate.h文件@pr
2016-04-06 10:24:40
4851
原创 修改frame快捷方法,不必再繁琐的计算
平时计算控件frame时我们是这样计算的://首先设置frameview.frame = CGRectMake(0, 0, 320, 150);//如果想改变其中的宽或者高或者位置,则需要重新设置frame大小,这个时候需要重新写一遍以前设置的frameview.frame = CGRectMake(view.frame.origin.x, 100, view.frame.size.wi
2016-03-21 16:06:47
877
原创 iOS 解决键盘遮挡问题
//键盘遮挡问题-(void)textFieldDidBeginEditing:(UITextField *)textField{ CGRect frame = textField.superview.frame;//得到textField的父视图的frame int offset = frame.origin.y + 10 - (_ScrollView.frame.size.
2016-03-11 14:27:08
493
转载 ios 文本转语音 播报 AVSpeechSynthesizer
原文:http://www.cnblogs.com/qingjoin/p/3160945.htmliOS7 的这个功能确实不错。我刚试了下,用官方提供的API ,简单的几句代码就能实现文本转语音!Xcode 5.0 工程建好后首先把AVFoundation.framework 加入到工程 AVSpeechSynthesizer *av = [[AVSpeechSynt
2016-03-02 11:03:02
842
原创 IOS 后台无限执行任务
找到如下一篇文章,写的很不错,好好参考了一下。http://hayageek.com/ios-long-running-background-task/首先需要配置Info-Plist文件,在里面新建一个Required background modes。这个是一个数组,在下面添加如下内容:App provides Voice over IP services(VOIP)App
2016-02-29 17:58:50
649
原创 iOS 获取手机型号(iPhone 8 、iPhone 8 Plus、iPhone X)
//获得设备型号+ (NSString*)getCurrentDeviceModel:(UIViewController*)controller{ intmib[2]; size_tlen; char*machine; mib[0] = CTL_HW; mib[1] = HW_MACHINE; s
2016-02-22 12:53:24
1292
原创 ios 原生二维码的扫描和生成
今天博主有一个二维码扫描和生成的需求,遇到了一些困难点,在此和大家分享,希望能够共同进步.从iOS7开始官方集成了二维码的扫描和生成功能 此前被广泛使用的zbarsdk目前不支持64位处理器1.扫描二维码扫描二维码需要导入AVFoundation框架 利用摄像头识别二维码中的内容(模拟器不行)输入(摄像头) 由会话将摄像头采集到的二维码图像转换成字符串数据 输出(数
2016-02-19 17:18:51
788
原创 tableview取消CELL的多余行数
123 self.tableView.tableFooterView=[[UIView alloc]initWithFrame:CGRectZero];//取消多余行数 //取消cell横线 // self.tableView.separatorStyle=UITableViewCellSelectionStyleNone;
2016-02-19 17:16:32
358
转载 iOS开发中那些高效常用的宏
OS开发过程中使用一些常用的宏可以提高开发效率,提高代码的重用性;将这些宏放到一个头文件里然后再放到工程中的-Prefix.pch文件中(或者直接放到-Prefix.pch中)直接可以使用,灰常方便。本文整理自http://www.cocoachina.com/applenews/devnews/2013/0328/5907.html 。做了一些分类和注释,可以根据自己习惯再添加或者删除或
2016-02-19 17:14:17
349
原创 UIbutton 防止重复点击
可以写一个响应时间 在规定的响应时间内 只触发一次123456789//防止重复点击 [[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(todoSomething:) object:btn]; [se
2016-02-19 17:11:49
428
转载 解决Xcode7.1上传成功但iTunesconnect一直不能构建版本的问题
将应用打包成ipa文件上传至苹果服务器时,我们一般用xcode上传即可,但有时候,明明用xcode上传成功却在developer账户中一直无法正常显示出来,所以我就要来讲讲第二种不常用的方法,但是很有用,上传成功后,通过审核也很快,可以大大节省时间,话不啰嗦,上方法:1.首先将文件打包成ipa文件 我们不直接上传至苹果服务器,而是先导出:2.在到
2016-02-19 17:07:49
2025
转载 iOS开发中邮箱,电话号码,身份证,密码,昵称正则表达式验证
//邮箱+ (BOOL) validateEmail:(NSString *)email{ NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"; NSPredicate *emailTest = [NSPredicate predicateWithForma
2015-11-02 10:00:02
424
转载 快速集成支付宝
本文介绍了iOS快速集成支付宝支付的方法,本文中介绍的方法是经过一次封装,因此配置完成之后调用仅需一行代码即可支付宝支付,非常的方便,希望大家喜欢。 我只是根据官方的文档,对支付宝的SDK做了进一步封装,其中密钥的生成很简单,需要看官方的文档,官方的文档我在工程附件目录里也有一份,如果需要马上集成,没工夫研究的话,可以大致看一下密钥的生成即可,其他的配置我会在下面进行讨论
2015-09-16 10:57:08
457
转载 iOS 自定义TabBarController
转自:http://blog.csdn.net/xn4545945/article/details/35994863一、自定义的思路iOS中的TabBarController确实已经很强大了,大部分主流iOS应用都会采用。但是往往也不能满足全部的需求,因此需要自定义TabBar,自定义需要对系统的TabBar工作方式有很好的理解,自定义需要勇气。自定义TabBar的原则:尽
2015-08-30 10:26:16
354
原创 iOS 面试题
1. 浅复制和深复制的区别? 答案:浅层复制:只复制指向对象的指针,而不复制引用对象本身。 深层复制:复制引用对象本身。 意思就是说我有个A对象,复制一份后得到A_copy对象后,对于浅复制来说,A和A_copy指向的是同一个内存资源,复制的只不过是是一个指针,对象本身资源 还是只有一份,那如果我们对A_copy执行了修改操作,那么发现A引用的对象同样被修改,这其实违背了我们复制拷贝的一
2015-08-25 11:34:59
426
转载 iOS 常见面试题
通过网络搜寻和自己总结经历找了一些IOS面试经常被问道的问题:1.搞清楚touch事件的传递(事件的响应链)事件的响应(responder chain)只有继承了UIResponder的类才能响应touch事件,从上图的响应者链可以看出,优先是最上层的view响应事件,如果该view有视图控制器的话会是下一个响应者,否者就是该view的父视图,这样至上而下传递事
2015-08-25 11:28:41
1046
转载 iOS 推送消息
转自丰俊文的博客 经常有同学问我们,iOS上推送究竟怎么做啊,为什么我的设备总收不到推送呢,这里跟大家集中讨论一下iOS上推送的实现细节。 APNS的推送机制与Android上我们自己实现的推送服务不一样,Apple对设备的控制非常严格,消息推送的流程必须要经过APNs: 这里 Provider 是指某个应用的Developer,当然如果开发者使用AVOS Clou
2015-08-25 11:02:57
402
原创 Objective-C中的浅拷贝和深拷贝
浅拷贝浅拷贝就是对内存地址的复制,让目标对象指针和源对象指向同一片内存空间。如:12char* str = (char*)malloc(100);char* str2 = str;浅拷贝只是对对象的简单拷贝,让几个对象共用一片内存,当内存销毁的时候,指向这片内存的几个指针需要重新定义才可以使用,要不然会成为野指
2015-08-25 09:43:15
323
转载 iOS多线程编程:线程同步总结
1:原子操作 - OSAtomic系列函数iOS平台下的原子操作函数都以OSAtomic开头,使用时需要包含头文件。不同线程如果通过原子操作函数对同一变量进行操作,可以保证一个线程的操作不会影响到其他线程内对此变量的操作,因为这些操作都是原子式的。因为原子操作只能对内置类型进行操作,所以原子操作能够同步的线程只能位于同一个进程的地址空间内。2:锁 - NSLock系列对象iOS平台下的
2015-08-21 10:43:46
366
转载 TCP与UDP的区别
TCP和UDP是OSI模型中的运输层中的协议。TCP提供可靠的通信传输,而UDP则常被用于让广播和细节控制交给应用的通信传输。UDP(User Datagram Protocol) UDP不提供复杂的控制机制,利用IP提供面向无连接的通信服务。并且它是将应用程序发来的数据在收到的那一刻,立刻按照原样发送到网络上的一种机制。 即使是出现网络拥堵的情况下
2015-08-20 15:13:01
430
转载 关于nil和 null和NSNull的区别及相关问题
关于nil和 null和NSNull的区别及相关问题1、nil和null从字面意思来理解比较简单,nil是一个对象,而NULL是一个值,我的理解为nil是将对象设置为空,而null是将基本类型设置为空的,个人感觉有点像属性当中,基本类型分配为assign NSString类型一般分配copy,而对象一般用retain。而且我们对于nil调用方法,不会产生crash或者抛出异常。看一
2015-08-20 14:35:19
379
原创 self和下划线的用法区别
在最新的xcode中,已经不需要我们自己去写 set,get 方法,系统已经自动帮我们生成set,get方法。同时我们发现在我们访问我们声明的变量时,会有self. 和 以"_"开头的访问方式,那么这两种方式到底有什么样的区别呢?我们来一起看一下:@property (retain, nonatomic) NSMutableArray *nameArrayself.nameArray
2015-08-20 14:25:55
628
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人