- 博客(57)
- 收藏
- 关注
原创 iOS 如何区分block类型
如果访问的数据的内存既不在栈区,也不在堆区,那么就是__NSGlobalBlock__类型;如果访问的数据的内存在栈区或者堆区,那么就是__NSStackBlock__类型;如果执行过copy操作,那么就是__NSMallocBlock__类型。如果问题,希望给指出例子,谢谢!...
2020-02-19 20:44:37
731
2
转载 不再以讹传讹,GET和POST的真正区别
如果有人问你,GET和POST,有什么区别?你会如何回答?我的经历前几天有人问我这个问题。我说GET是用于获取数据的,POST,一般用于将数据发给服务器之用。这个答案好像并不是他想要的。于是他继续追问有没有别的区别?我说这就是个名字而已,如果服务器支持,他完全可以把GET改个名字叫GET2。他反问道,那就是单纯的名字上的区别喽?我想了想,我觉得如果说再具体的区别,只能去看RFC文档了,...
2019-02-11 18:36:05
239
原创 Mac电脑使用过程中的一点儿总结
1.显示和隐藏系统文件 false:隐藏; true:显示defaults write com.apple.finder AppleShowAllFiles -boolean false ; killall Finder2.Mac下添加host:sudo vi /etc/hosts,输入i,进入插入模式,然后添加对应的host地址,如下:192.168.21.34 wik...
2018-05-31 14:03:26
602
原创 iOS---Xib或者 Storyboard中UIScrollView使用
1.使用场景:有时候在一个sence中垂直方向放入了太多控件,以至于不得不利用滚动的方式解决屏幕适配问题,如下图,这是在iphone7上的样子,如果换成SE或者4S等,那么下部肯定有内容被遮挡。2.刚开始做这个的时候,我想很简单呀,随便设置一下上下左右约束就OK呀!可是无论我怎么设置,控件都不能水平居中!3.解决方法:最后我发现,需要选择一个需要水平居中的控件,设置它的水平居中约束
2017-09-29 14:06:30
579
原创 Keychain Access中开发证书和秘钥的关系
首先我给大家献上一张图: 相信大家一定不陌生吧!keychains栏选择login,Category一栏选择My Certificates,你就会看到当前安装的所有开发者证书啦,有测试证书和发布证书两种。正常状态下,你可以看到证书左侧有一个箭头,点开箭头看看效果吧如果你看到的效果是这样,那么恭喜你,此证书可用。如果箭头都没有,那么则说明,你证书对应的私钥已丢失,你会发现此
2016-06-24 08:35:05
5104
原创 创建属于你的SDK!
一、创建Static Framework1.如图创建Framework2.选中Target,在Build Settings中搜索“Mach-O Type”, 改为“Static Library”静态的Framework已经创建好了,是不是很简单呀!不过还有几点需要注意:(1)Architectures,中文名好像是架构,如果你想你的framework可以跑在所有的iPhone,那么
2016-06-02 16:59:18
620
翻译 iOS---[UIDevice identifierForVendor]慎用!
An alphanumeric string that uniquely identifies a device to the app’s vendor. (read-only)用于唯一标示设备的字母数字字符串,每一个供应商都不同呀DeclarationOBJECTIVE-C@property(nonatomic, readonly, stron
2016-04-08 10:59:28
21324
转载 iOS---圆角这个可恶的帧数杀手
前言在iOS的世界,圆角无处不在,而且必须存在。因为圆角是符合人类视觉安全体验的,圆角让人觉得舒适,而方角在潜意识层次是具有伤害体验的,因为尖尖的东西总是有可能对人造成伤害的,所以我们更喜欢圆角。在我之前的文章中讲过,在iOS的中设置圆角是非常容易的一件事情,这也体现出苹果也是非常重视圆角这件事情的。圆角虽好,但如果使用不当,它就是你的帧数杀手,特别当它出现在滚动列表的时候。下面来
2016-03-02 09:46:20
598
原创 iOS---近来开发中的一些收获
1. 适配第三方键盘(搜狗、百度)- (void)keyBoardWillShow:(NSNotification *)notif { NSDictionary *info = [notifuserInfo]; NSValue *value = [infoobjectForKey:UIKeyboardFrameEndUserInfoKey]; CGSi
2016-01-28 15:36:06
675
原创 iOS---免费获取邓白氏编码
1. 通过Apple可以免费获取邓白氏编码,申请地址:https://developer.apple.com/program/enroll/dunsLookupForm.action2. 在获取前,你应该先申请一个新的Apple Id账号3. 打开地址,根据提示填写公司信息以及其它信息,请注意,公司电话一定不能写错,否则收不到邓白氏公司的确定电话4. 提交申请后,会收到邮件,内容大概如
2016-01-28 14:53:59
3990
转载 iOS---In-App Purchase 常见问题解答
本文档为您解答应用内购相关的常见问题。配置(Configuration)1.我必须上传一个二进制文件来测试应用内购么?不,测试应用内购(In-App Purchase,以下简称IAP)不需要上传二进制文件。注:在应用程序准备好接受审核批准之前,不要将开发中的二进制文件上传到iTunes Connect。如果二进制文件出现在iTunes Connect中,但功能不
2016-01-21 17:26:33
7710
原创 Xcode7.2 创建依赖工程
这一段时间,写了一个静态framework,在Demo中运行查看效果时,切换真机和模拟器时,总是得手动的改变对应平台(真机或者模拟器)的framework,还得改变搜索路径,真实烦透了,现在搞明白了依赖工程,再也不用那么麻烦了。及时改动了framework中的代码,当你运行Demo时,也会一起被重新编译。
2016-01-20 10:20:31
2286
原创 iOS---App国际化
1.首先打开Project->Info->Localizations,添加需要的语言,根据提示默认即可;2.然后添加一个StringFile,命名为InfoPlist.strings。并且在文件属性里将所需要的多国语言勾上。添加InfoPlish文件:选中InfoPlish.string文件,在其属性表中点击 “Localize...”,选择一种语言,点击“Lo
2016-01-05 15:32:09
596
转载 ios --- 调用系统"设置"里的功能
安装后第一次运行软件时,系统会弹出提示用户是否允许软件获取当前位置,如果用户不允许的话,之后运行时系统不会在弹出提示设置,这点很不方便,有个解决办法是给用户一个选项,调出iphone中“设置”定位服务选项,由用户手动设置,调用系统“设置”中定位服务相关代码如下:-(IBAction)btnSetting:(id)sender{ NSURL*url=[NSURL URLWithS
2015-12-11 17:23:28
750
原创 iOS---修改Xcode7建立的工程名称
1. 将项目TestForProject的名称改为MyProject2. 打开文件夹TestForProject后,看到如下目录列表3. 将TestForProject修改为MyProject, 将TestForProjectTests改为MyProjectTests,修改后如下图所示4. 右击TestForProject.xcodeproj,选择“show con
2015-11-25 18:19:15
4325
转载 App Store Review Guidelines中文版
1. Terms and conditions(法律与条款)1.1 As a developer of applications for the App Store you are bound by the terms of the Program License Agreement (PLA), Human Interface Guidelines (HIG), an
2015-11-22 18:36:13
3944
2
转载 Building the Best Facebook Login Experience for People on iOS 9
With the release of iOS 9, Apple introduced some significant changes to app switching. This has affected iOS 9 apps integrated with Facebook. Most people will notice this in their experience using Fac
2015-11-06 11:48:07
681
转载 iOS---面试题汇总
1. Object-c的类可以多重继承么?可以实现多个接口么?Category是什么?重写一个类的方式用继承好还是分类好?为什么?答: Object-c的类不可以多重继承;可以实现多个接口,通过实现多个接口可以完成C++的多重继承;Category是类别,一般情况用分类好,用Category去重写类的方法,仅对本Category有效,不会影响到其他类与原有类的关系。2. #impo
2015-10-19 10:09:46
824
转载 iOS---高效编程秘诀—坚持编程习惯
习惯会影响一个人做事的方式,也会直接影响效率。我经常在项目完成后自我总结,有哪些做得好的,有哪些做得不好的?然后把一些好的流程记录下来,并且重新运用回编程中。那些能够坚持去做的流程,就变成了我的编程习惯,这些良好的习惯就成就了我高效的编程效率!一、轻文档先行什么叫轻文档?其实轻文档指的是不需要按照标准的软件工程知识来编写需求分析,架构设计,模块设计,流程图时序图等文档,而是采用比较
2015-10-08 15:55:15
384
原创 iOS---Url编解码的问题
1. 有些时候,我们通过Url接收到一些东西,无法肉眼识别,是需要我们解码url:+ (NSString *)stringByDecodingURLFormat:(NSString *)str{ if ([[[UIDevicecurrentDevice] systemVersion]floatValue] >= 9.0) { str = [str s
2015-09-30 15:53:05
1564
1
转载 App Thinning功能中其实有三个独立的机制,分别是App Slicing、on-demand resources以及Bitcode,它们在节省iOS应用资源方面发挥着各自的作用。 iOS 9的
App Thinning功能中其实有三个独立的机制,分别是App Slicing、on-demand resources以及Bitcode,它们在节省iOS应用资源方面发挥着各自的作用。图示:iOS 9的App Thinning功能如何节省存储空间 App Slicing App Slicing在节省应用所需资源中发挥着最重要的作用。很多应用需要在不同尺寸的设备上运
2015-09-25 17:33:08
1136
转载 iOS---XCode7 + IOS9 问题及解决方案
一,bitcodexcode7默认会开启bitcode 会导致第三方框架报错,下面是友盟的错误:libMobClickLibrary.a(MobClick.o)' does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updat
2015-09-22 16:22:35
2414
原创 iOS---WebView执行JS方法时传Json串做参数的一个坑!
今天遇到一个奇葩的问题,weiView执行JS代码时,总是没有效果,可是方法名与参数都没有错,代码如下: [webViewstringByEvaluatingJavaScriptFromString:[NSStringstringWithFormat:@"%@('%@');", methodName, paraStr]];,其中字符串paraStr格式如下{ "ser
2015-09-08 14:17:31
8998
原创 iOS---常用方法总结
1. sha1加密:+ (NSString *) sha1:(NSString *)input { if (!input || [inputisEqualToString:@""]) { return@""; }// const char *cstr = [input cStringUsingEncoding:NSUTF8St
2015-08-31 15:53:56
609
原创 iOS---苹果支付串单完美解决方案
在做Apple pay的时候,遇到了串单的问题,究其原因就是无论支付成功还是失败,苹果都不会返回任何与订单相关的直接参数,我无法与我们服务器的订单号唯一对应,导致,处理订单的时候会乱,通过几天的摸索,找到了以下解决方法,我认为应该可以完美解决iOS7以及以上的串单问题,但是iOS7以下,我没有什么好的方法!1. 当我们向苹果服务器发起支付请求后,苹果会回调如下方法:- (void)pa
2015-08-31 15:36:01
8153
转载 iOS---Xcode6.1标准Framework静态库制作方法
1、创建一个工程,或者在原有的工程上进行。不在列举。2、在原有工程上添加一个静态库 2.1、选择OS X 的Bundle。因为Xcode6.1中iOS里没有Bundle。 2.2、修改Bundle的属性,一是让他能用在iOS上。二是改变Bundle成为Framework选中要修改的Bundle 2.3、Target:并选择 Build S
2015-08-31 14:17:37
1039
原创 iOS—Xcode中设置Framework Search Paths的秘密!
最近几周,我正在写我们公司自己的SDK,我同时创建了两个工程,一个是静态库Framework的工程SDKProject,还有一个是Demo的工程DemoProject,我将SDKProject的Products引用到DemoProject中。开发了将近一个月了,都没遇到问题,今天突然发现一个问题 “无论我如何修改framework中的代码,在Demo中也看不到效果”。郁闷了两个多小时,突然发现
2015-08-04 10:27:28
10207
原创 iOS——开发周报(2015-07-31)
这是我上一周的开发中遇到的一些小问题,拿出来与大家分享!都是一些很细节的东西,但是很重要,有时为了解决一些细节问题,会花费你意想不到的精力,所以希望大家多注重一些细节问题!谢谢大家!
2015-08-03 14:06:21
681
转载 网络---response的contentType几种类型
常遇到下面的几种情况:1、 服务端需要返回一段普通文本给客户端,Content-Type="text/plain"2 、服务端需要返回一段HTML代码给客户端 ,Content-Type="text/html"3 、服务端需要返回一段XML代码给客户端 ,Content-Type="text/xml"4 、服务端需要返回一段javascript代码给客户端5 、服务端需要返回一
2015-07-03 17:10:22
1456
转载 iOS---设备的唯一标识详解
英文原文:In iOS 7 and later,if you ask for the MAC address of an iOS device, the system returns the value02:00:00:00:00:00. If you need to identify the device, use the identifierForVendor property o
2015-07-02 18:30:30
1105
原创 iOS---sha1加密的一个坑
OC语言写的sha1加密算法,在网上随手可以搜索到(如下便是),但是我不得不说有一些人不责任,没有提醒大家导入必要的系统头文件,从而导致错误+ (NSString *) sha1:(NSString *)inputStr { constchar *cstr = [inputStr cStringUsingEncoding:NSUTF8StringEncoding]; N
2015-07-02 14:44:56
4477
原创 iOS—— Architectures架构精简讲解
1. Valid Architectures 就是你的项目所支持的架构2.设备对应的architecture: armv6:iPhone 2G/3G,iPod 1G/2G armv7:iPhone 3GS/4/4s,iPod 3G/4G,iPad 1G/2G/3G armv7s:iPhone5, iPod5 arm64:iPhone5s,ipad
2015-06-26 20:21:37
967
转载 iOS9---九阴真经
北京时间6月9日凌晨,苹果WWDC 2015在美国旧金山正式开幕,本届大会主题为“the epicenter of change”。在本届大会上,苹果发布了iOS 9、新一代OS X操作系统EI Capitan以及watchOS 2手表新系统。与此前版本相比,iOS 9更加智能化,同时也更加多面性。以下是苹果在本届开发者大会上发布的关于iOS 9的细节信息:Siri更智能更强大
2015-06-10 22:44:16
860
转载 iOS应用内支付的那些坑儿
我们在今年春节后上线了新的在线智能题库:猿题库。猿题库现在推出了公务员考试行测和申论2个产品,均包括web, iOS和Android三个平台。这次我们尝试做一个收费的产品,所以在iOS端集成了应用内支付(IAP)功能。在开发过程中和上线后,我们遇到了 IAP中的一些坑,在此分享给各位。 IAP 审核相关的坑 IAP开发的详细步骤我写在另一篇博客中了。在此主要介绍审核时遇到的
2015-06-03 16:46:51
1685
翻译 iOS——TestFlight Beta Testing
TestFlight Beta Testing makes it easy to invite users to test youriOS 8 apps before you release them on the App Store. You can invite up to 1,000 external testers using just their email address.
2015-06-01 11:02:46
2143
转载 IOS中多版本,多设备类型支持注意事项
IOS系统从07年出来,每年发布一次到两次新的设备,从iPhone1,iPhone2 ... iPhone4s再到最新的iPhone6 Plus。硬件在升级的过程中CPU的架构也可能发生变化,如最早的armv6,armv7再带最新的armv7s。同时伴随每一次硬件升级,系统都会做一次大版本的升级。 每次系统升级的时候,总有一些用户会因为各种原因不愿或者不能升级到最新的系统。这就意味着,如
2015-06-01 09:15:25
608
原创 iOS-填写iTunes Connect信息时的坑!
这里面有很多细节需要注意,稍有不慎,万劫不复呀!1. 添加屏幕快照时,图的顺序千万不能错位,至于图的尺寸大小,你不用管,如果你放错了,根本放不进去!2. 关键词:必须含有App名称3. App图标:必须以英文或拼音命名,否则你会发现传不上去!4. 评级一定要填写的,一般前两个选择YES,其它的No5. 版本发布:如果你不想那么快的发不出去,可以选择手动发布,等到你的App通过审
2015-05-21 20:15:56
490
原创 How to switch a photo from jpg to png, and how to resize the photo for mac?
其实在mac上转换照片的格式和重新调整照片大小都很简单!使用Mac自带的预览打开jpg照片,选择 ”文件-》导出“,会弹出一个窗口,为照片选择格式,并调整照片的质量,即可将一张jpg照片转换成png格式的!同样,重新调整照片大小也很简单:选择 “工具-》调整大小...",弹出一个窗口,保证照片比例不变,然后重新指定其宽或者高,即可调整照片大小!
2015-05-21 11:01:30
437
翻译 APP Store Review Guidelines 中文版-下部
终于翻译完了,第一次翻译比较完整的东西,还真的不容易,有些地方翻译的不好,我也作出了标记,请大家指正,谢谢!18. Pornography 情色 18.1 Apps containing pornographic material, defined by Webster's Dictionary as "explicit descriptions or displays
2015-05-21 10:32:30
1065
原创 iOS-NFC
iPhone6以上设备内置了NFC功能,但是iOS8系统里还没有开放出NFC的api供开发者调用,目前只限于Apple Pay。 NFC可能的用途: 传名片、适配相机、分享文件、读写NFC卡、支付、门禁、启动汽车…… NFC门禁原理:支持NFC手机开门的读写器,主要应用NFC的P2P通信方式,手机和门禁传输自定义数据,当然这些数据可能经过你的N重加密,然后在门机里判断是否要...
2015-05-19 17:35:37
3879
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人