iOS
柳鲲鹏
建立了编程学(编程基本功、平台化编程)、六石管理学等几个流派。
每涉及一个领域,都是顶级砖家。在这些领域中,如果遇到问题,最后肯定是搜索到本博客。
展开
-
手机进程多了,有的进程就无法联网?
某日坐公交,上来一个小姑娘,试图使用手机刷码,结果一直出不来。吾指点说,肯定是后台进程太多,杀进程。她一怒之下重启了手机,然后就刷码成功。 吾亦碰到过几次,如果后台进程太多,就会出现某个进程无法联网的情形。有人说是不是后台在下载东西,占用了带宽?这个肯定没有。然后吾就奇怪了:手机进程太多,就会影响联网?这样看来,是联网的链接个数有限制?...原创 2021-05-10 07:52:32 · 378 阅读 · 0 评论 -
苹果提交版本后显示”缺少出口合规证明“的解决办法
每天都有怪问题。 本来版本一直审核中,因为改了些图片,吾就想能不能再提交个版本也审核。这样多省事啊。于是就提交了个版本,结果发现无法再提交另外的审核。 今天到开发账号里一看,版本提示: 缺少出口合规证明。 咱也没惹着谁,没碰着谁,怎么就?赶紧查: 1、iTounes Connect -> 功能 -> 加密。提交出口合规证明文档。 2、如果您的构建...原创 2018-06-28 15:22:42 · 29613 阅读 · 0 评论 -
Xcode更新不了的解决办法
刚刚说要更新Xcode,结果: 先提示”更新错误“ 之后提示”请等待“ 等多久?汝在干什么?给点干活的提示好不? 折腾了很久,没什么变化。于是找了一个解决办法。咱自己手动更新。直接到软件网站: https://developer.apple.com/download/more/ 想要哪个就下载哪个,下载了咱再安装!...原创 2018-06-28 15:54:44 · 14748 阅读 · 2 评论 -
iPhone is busy: Preparing debugger support for iPhone的解决办法
什么怪事都能碰上: iPhone is busy: Preparing debugger support for iPhone 吾当时就……怎么办?有人提供了三个办法: 1、等10-15分钟。 2、拔掉手机,重启手机和MAC,重新构建。成功。 3、这个办法很麻烦:1)Windows → Devices and Simulators (Shortcut ke...原创 2018-06-28 17:14:25 · 11454 阅读 · 0 评论 -
Verify the value of the CODE_SIGN_ENTITLEMENTS的解决办法
因为同一套代码,要为别的公司出个版本,然后原来的很多名要改。其中包括目录。于是做好了备份之后,就折腾起来。然后报错: Verify the value of the CODE_SIGN_ENTITLEMENTS 怎么办? 1、双击项目。 2、单击TARGETS中的项目。 3、Capabilities中,有的项目提示有错误,点击Fix。 再编译,问题消失。...原创 2018-06-29 14:01:18 · 11077 阅读 · 0 评论 -
SmartSvn遗漏.a文件的解决办法
在WINDOWS下这个问题经常导致问题,结果到了MAC上也是如此。怎么办? View->Ignored Files,鼠标键,Add 麻烦就麻烦点,也算是一劳永逸了。...原创 2018-06-29 14:30:45 · 529 阅读 · 0 评论 -
SmartSVN无法提交的解决办法:because it was moved from which is not part of the commit; both sides of the move
对工程大规模改名,一路磕磕碰碰总算成功了。然后提交SVN,报错: because it was moved from XXX which is not part of the commit; both sides of the move 那我分开提交怎么样?不行。搜索看看有没有解决办法。果然,找到了: 1、终端,到出错的上一层目录服务。 2、svn commit 新目...原创 2018-06-29 16:49:26 · 3185 阅读 · 0 评论 -
WORD中使用类似苹果手机的字体Lucida Sans
近来在苹果应用上换图,以前的作图文件没有了,而图片中的字体就不知道了。使用了通常的Times New Roman,感觉怪怪的。使用宋体?感觉还是用差异。那使用什么呢? 上网一查,找到一个说法: 英文是Lucida Grande和Helvetica。 中文是华文细黑。 于是到WORD中试了一下,Lucida Sans和Lucida Grande很相似。如果需要的话,可以试...原创 2018-06-24 16:53:49 · 1597 阅读 · 0 评论 -
苹果电脑截屏的几种办法
作为一个程序员,应该把构建这一类的操作类的工作交给别人。而别人呢,必须当成傻瓜。那么一个傻瓜怎么操作?写一个带图的操作文档。这就要用到截屏。苹果的截屏怎么办? 1、整个屏幕截屏:COMMAND+SHIFT+3。 2、活动窗口截屏:COMMAND+SHIFT+4,将鼠标移动到某一窗口,按空格键。 3、任意部分截屏:COMMAND+SHIFT+4,用鼠标选择要截取的部分。 ...原创 2018-06-20 11:01:27 · 9500 阅读 · 0 评论 -
XCode出现Could not locate device support files的解决办法
根据要求,今天构建了一个苹果版本。结果发现功能不正常。怎么办?那就调试吧。插上线,试图安装时,提示说: Could not locate device support files 嗯?怎么出现这个怪错误?怎么办?很简单,将XCode升级到最新版本即可。...原创 2018-06-28 14:48:43 · 776 阅读 · 0 评论 -
上传苹果版本时错误解决办法:No suitable application records were found. Verify your bundle identifier
经过内测,今天构建了一个客户要求的新应用版本,上传到苹果应用商城。因为之前上传过多次(另外一个应用),觉得肯定会成功。结果……魔鬼定律现身,提示错误: No suitable application records were found. Verify your bundle identifier 这是欺负吾读书少?怎么办?赶紧上网查! 查到的结果都是提示什么plist、ap...原创 2018-07-05 10:08:31 · 11489 阅读 · 0 评论 -
移动终端的应用杀掉进程后,接收消息启动应用的简要技术说明
以吾所知,杀掉进程,被呼叫后能启动应用,接通视频通话,吾应该是国内第一家做到的。今天有人请教怎么实现的,说起来功能完成也差不多有8个月了,吾就写个博文说明一下。 其实本身并没有技术秘密,就是一个思路。当时别人介绍用推送,也只做到收到标题栏消息就完事;吾进一步使用了透传消息,使得体验完全不同。这样一张王牌,头目还做不了业务,吾也是无语。 道理很简单,就是使用推送功能。 原理:...原创 2019-02-11 14:14:21 · 529 阅读 · 5 评论 -
苹果又被拒了:Guideline 4.3 - Design
今天来公司,一看,替外公司发布的苹果应用,果然被拒了。被拒原因如下: Guideline 4.3 - Design 硬着头皮看了一下说明,大意是跟别的应用重复。WHAT?咱这个确实是马甲,可是为别人做的啊。怎么就不能发了?赶紧搜索看看。找到以下资料,发现事情有点麻烦。这个是为其他公司做的马甲包,如果要用申请其他账号就要交钱,那还是等合同之后再说吧。 规避4.3的重心切断...原创 2018-07-25 09:02:07 · 8605 阅读 · 5 评论 -
苹果被拒:4.Guideline 2.3.3 - Performance - Accurate Metadata
4.Guideline 2.3.3 - Performance - Accurate MetadataWe noticed that your screenshots do not sufficiently reflect your app in use.Please see attached screenshots for details. 这意思莫名其妙的。网上一查,有人说:...原创 2018-07-13 08:23:45 · 4314 阅读 · 0 评论 -
苹果手机截图的两种方法
本来想偷懒,让别人截图,结果图省事,数量不够……只能自己来。 回字有几种写法?不,错了,苹果截图有几种办法? 1、使用苹果的组合键来截屏:Home+上面的锁屏键(电源键),同时按即可截图。 2、辅助功能里面的小工具也可以进行截图。辅助功能里面的小工具也可以进行截图。打开:【设置】->【通用】->【辅助功能】->【辅助触控】开关打开。英文叫Assi...原创 2018-07-13 08:33:27 · 4489 阅读 · 0 评论 -
苹果手机截屏分辨率,注意视图的标准与放大的差异
为了苹果应用上架,吾亲自(?)截屏。结果发现,截屏后的图片分辨率,始终不对。怎么个不对法? 吾截屏之后分辨率是1125x2001。 发布需要的分辨率是1242x2208。 这也太奇怪了。反复试了多次,都不对。 在网上搜索了半天,终于看到一些提示,那试试看吧: 设置->显示与亮度->放大显示->视图。 有标准、放大两种模式。改成标...原创 2018-07-13 09:27:17 · 13266 阅读 · 0 评论 -
苹果照片库的照片,直接拖到桌面上
苹果手机可以直接用数据线连接在PC上,找到照片目录导出。不过这样导出的是JPG。如果想要PNG怎么办? 吾在MAC上折腾了半天,找不到导出办法。后来点了图片直接往桌面上拖,成功。 方法虽然很笨,总算解决了吾问题。...原创 2018-07-13 09:58:40 · 2019 阅读 · 0 评论 -
XCODE中,修改苹果APP支持哪些设备
点击TARGETS的某个项目。 General->Deployment Info->Devices。 选择Universal,表示同时支持手机、平板。选择iPhone/iPad,当然是支持一种啦。原创 2018-07-10 11:26:33 · 2543 阅读 · 0 评论 -
苹果应用的SKU建议使用APP ID
在新建APP的时候,会要求填写SKU。初次使用的朋友,就有点糊涂:填写什么?填写APP ID。 比如说,APP ID是com.you.lucky。 那么SKU也填写为com.you.lucky。...原创 2018-07-05 10:07:17 · 11907 阅读 · 2 评论 -
iOS随机数的生成
步骤如下:1、使用arc4random(),得到一个随机的整数。2、使用取模(%),确定范围即可。比如使用0xFFFF,10000限定范围。不推荐使用rand()、random()原创 2018-06-21 08:48:53 · 797 阅读 · 0 评论 -
SmartSVN报错format的解决办法
打开Terminal,来到指定目录。解决办法:1、升级:svn up。2、清理svn目录重新导入:find . -type d -name ".svn"|xargs rm -rf原创 2018-06-22 10:12:50 · 836 阅读 · 0 评论 -
苹果手机关于推送的查看LOG的一种解决办法
据吾目前了解: 1、调试状态下,手机是收不到推送的。也许有办法? 2、推送的根本目的是为了从休眠状态下唤醒。这时又不能插电测试。 3、有人说写到文件中,好象有这样那样的限制。也不够方便。 怎么办?吾想了一个解决办法。 1、在代码中添加一个新的LOG函数。此函数功能是向指定目标发送LOG。 2、如果当前没有链接到指定目标,则为LOG增加时间戳、序号。然后...原创 2018-06-14 15:21:03 · 4464 阅读 · 0 评论 -
unrecognized selector sent to instance的一类解决办法
今天重构代码,运行时反复报错: unrecognized selector sent to instance仔细检查代码,完全无问题。后来发现,就h中的声明和实现差异导致的: - (void) sendMqttMsg:(NSString *) qid msgId:(int)msgId msgData:(NSMutableDictionary *) data;- (voi...原创 2018-06-12 15:26:32 · 2712 阅读 · 0 评论 -
MAC共享目录让WINDOWS访问
说WINDOWS方便,有时也不方便。今天试图在WINDOWS共享一个可写目录,从MAC把文件导过来,折腾了很久不行。莫名其妙的说密码不对。于是就从MAC共享目录,顺利通过。步骤如下:注意第4点,一定要设置一个用户名: 打开“共享”偏好设置(选取苹果菜单>“系统偏好设置”,然后点按“共享”)。 选择“文件共享”复选框,然后点按“选项”。 选择“使用...原创 2018-06-12 17:24:03 · 10159 阅读 · 0 评论 -
NSString中如何正确判断包含一个变量字串NSString
今天试图判断一个字串中包含另外一个字串,结果出错了。 上网一查,都是常量形式。想了想,找到了正确的判断办法: NSString *countryCode = [UserDefault objectForKey:KEY_COUNTRY_CODE]; if ([qid hasPrefix:[NSString stringWithFormat:@"%@_", coun...原创 2018-06-13 08:25:55 · 458 阅读 · 0 评论 -
如何正确在NSMutableDictionary中加入一个变量int
看代码,都是如下形式: [dict setObject:@5 forKey:MESSAGE_ID];如果我是变量怎么办? [dict setObject:@(msgId) forKey:MESSAGE_ID];希望对大家有所帮助。原创 2018-06-13 08:28:33 · 2059 阅读 · 0 评论 -
如何判断NSMutableDictionary是否有某个key
if ([[dict allKeys] containsObject:key) { // contains key} // contains key}if ([dict objectForKey:key]) { //objectForKey will return nil if a key doesn't exists.// contains key...原创 2018-06-13 11:30:03 · 3686 阅读 · 2 评论 -
iOS 监听锁屏/解锁事件
必须使用新接口,才能审核通过:applicationProtectedDataWillBecomeUnavailableapplicationProtectedDataDidBecomeAvailable 以下内容已过时,请务必注意!//监听锁屏事件#define kNotificationLock CFSTR("com.apple.springboard.lockcomp...转载 2018-06-13 11:45:40 · 3018 阅读 · 1 评论 -
iOS 前后台切换的接口函数
进入后台:applicationDidEnterBackground转入前台:applicationWillEnterForeground 详细内容如下。iOS的应用程序的生命周期,还有程序是运行在前台还是后台,应用程序各个状态的变换,这些对于开发者来说都是很重要的。 iOS系统的资源是有限的,应用程序在前台和在后台的状态是不一样的。在后台时,程序会受到系统的很多限制,这样可...原创 2018-06-13 13:14:49 · 1340 阅读 · 0 评论 -
h文件中报错 unterminated conditional directive的原因
今天不小心把文件改错了,也没注意。 然后编译就提示这个错误。找了半天,有人提示说是缺少#endif。跟老文件一比较,果然。 所以说代码还是要上SVN这样的地方。手里代码体积太大,赶紧出个版本,上SVN。...原创 2018-06-13 18:28:10 · 14491 阅读 · 0 评论 -
在控制台上看苹果手机的LOG
为了测试推送,必须打包;打包之后的LOG,基本没有了。怎么办?有人提供了方法,测试有用: #ifndef __OPTIMIZE__ #define NSLog(...) printf("%f %s %ld :%s\n",[[NSDate date]timeIntervalSince1970],strrchr(__FILE__,'/'),[[NSNumber numbe...原创 2018-06-12 13:08:59 · 3073 阅读 · 0 评论 -
XOCDE构建提示Command /usr/bin/codesign failed with exit code 1的解决办法
刚刚还能用,怎么就编译不过了?解决办法:重启机器即可。原创 2018-06-11 14:07:28 · 1354 阅读 · 0 评论 -
iOS锁屏代码注意使用新接口
今天上传构建版本,很快就被拒了:Unsupported operation - Apps are not allowed to listen to device lock notifications.上网一查,说是CFNotificationCenterAddObserver监听锁屏代码已有问题。要使用新的接口:applicationProtectedDataWillBecomeU...原创 2018-06-18 16:06:17 · 1333 阅读 · 0 评论 -
如何检查表XCODE打包的ipa中的垃圾文件
今日上传时,打包出来的ipa体积350MB。原来一直是在调试状态,没觉得异常。现在Release版本竟然也有这样的体积,肯定是哪里出错了。仔细检查构建,一切正常。怎么办? 用压缩软件,将ipa解压,然后逐个目录检查表,发现了一个超大目录。于是不断的检查子目录,终于找到问题: 以前的同事把一个Desktop目录复制进来了。 于是将此目录移出,再打包,不到20MB。这就对了。...原创 2018-06-18 18:19:17 · 299 阅读 · 0 评论 -
iOS启动画面不更新的问题
今天发现,启动画面启动时没有变化。这事就奇怪了,因为我所有图片都检查了一遍。怎么启动还是不对呢? 清理了一下缓存,还是没有变化。 于是将 App Icon and Launch Images中的Launch Screen File删除。再安装就正常了。 那么哪里出了问题?还要再查。...原创 2018-06-18 18:57:00 · 1619 阅读 · 0 评论 -
苹果被拒:Guideline 2.3.10 - Performance - Accurate Metadata
苹果现在审核很快,今天早上收到了拒绝邮件。第一条是: Guideline 2.3.10 - Performance - Accurate Metadata 赶紧上网一查,有以下提示:元素数据被拒绝不需要你修改二进制数据(就是不需要你修改项目),只需要修改你提交APP时的描述信息就OK。注意提供用户名和密码的准确性。注意仔细检查产品给你提供上传浏览图片的内容。看了附件...原创 2018-06-19 08:42:21 · 6086 阅读 · 0 评论 -
苹果被拒:Guideline 5.1.1 - Legal - Privacy - Data Collection and Storage
Guideline 5.1.1 - Legal- Privacy - Data Collection and StorageWe noticed that your app requests the user’s consent to access their contacts but does not clarify the use of this feature in the ...原创 2018-06-19 08:48:37 · 2115 阅读 · 0 评论 -
苹果被拒:Guideline 5.0 - Legal
比如用到CallKit,在中国地区,这个功能是被限制了。解决办法:删除。当然也可以进行地区判断。原创 2018-06-19 10:05:19 · 5096 阅读 · 0 评论 -
iOS配置证书:Provisioning profile "xx_Distribution" doesn't include signing certificate "iPhone Developer
近来安卓工作差不多了,于是开始折腾苹果。虽然说这个苹果应用是我开发的(自学一个月,把别人的重写),差不多也有两年没有碰了。结果就遇到一个麻烦:证书出问题了。 iOS配置证书:Provisioning profile "xx_Distribution" doesn't include signing certificate "iPhone Developer: "经过一番搜索...原创 2018-06-10 15:38:23 · 31056 阅读 · 4 评论 -
苹果推送无法调试?
这几天折腾苹果的推送,死活不行。什么证书折腾了一遍又一遍。 今天看到一个文章说: 苹果推送无法debug,必须做成adhoc后才能进行。 于是赶紧搞了个蒲公英账号(fir.im总是提示法律问题),上传,下载,终于收到推送了! 可是程序怎么调试呢?这就有点悲剧了。...原创 2018-06-11 13:26:25 · 722 阅读 · 0 评论