iOS
文章平均质量分 56
chqj_163
这个作者很懒,什么都没留下…
展开
-
线程问题:This application is modifying the autolayout engine from a background thread after the engine w
线程问题:This application is modifying the autolayout engine from a background thread after the engine was accessed from the main thread. This can lead to engine corruption and weird crashes.(大致意思是...转载 2019-11-19 17:30:11 · 1974 阅读 · 0 评论 -
Mac系统下lipo, ar, nm等工具的使用简介
一、简介目前ios制作对外输出的动态库,静态库越来越方便,伴随而来的问题也也越来越少,本次就打包Framework过程做下记录(不涉及xcodebuild调用过程)二、简述lipolipo源于mac系统要制作兼容powerpc平台和intel平台的程序,lipo 是一个在 Mac OS X 中处理通用程序(Universal Binaries)的工具,主要用于查看,修改Mac OS X...转载 2019-11-15 16:37:45 · 956 阅读 · 0 评论 -
查看mobileprovision文件信息
最近某个客户需要知道他们的企业安装包什么时候过期,让其问他们的企业证书管理员,扯了半天,最后还是帮他们看一下,描述文件的过期时间。xxx.mobileprovision是ios开发中的设备描述文件,里面有证书信息、调试设备的UUID信息、bundle identifier等,此文件是二进制格式不能直接打开,那么如何查看其中信息呢,方法很简单,使用mac自带security命令行用mac自带的命...转载 2019-11-15 15:59:51 · 2701 阅读 · 0 评论 -
objdump命令解析
objdumpobjdump命令是Linux下的反汇编目标文件或者可执行文件的命令,它以一种可阅读的格式让你更多地了解二进制文件可能带有的附加信息。参数选项:--archive-headers-a显示档案库的成员信息,类似ls -l将lib*.a的信息列出。-b bfdname--target=bfdname指定目标码格式。这不是必须的,objdump能自动识别许多...转载 2019-11-06 20:20:26 · 505 阅读 · 0 评论 -
objdump readelf 使用总结
#include <stdio.h>int main() { printf("hello world\n"); return 0;}生成可执行文件:gcc hello.c -o helloobjdump整体信息$ objdump -f factorialhello: 文件格式 elf64-x86-64体系结构...转载 2019-11-06 20:07:03 · 333 阅读 · 0 评论 -
pbxprojHelper--Xcode工程文件助手
pbxprojHelper 可以帮你快速配置 Xcode 工程文件,省去麻烦的人工手动操作。项目开源,使用 Swift 开发,详细介绍请见使用说明。除了 Mac App 外还提供了命令行工具 pbxproj,它集成了 pbxprojHelper 的核心功能,同样简易实用。因为 README_ZH 中对使用方法已经讲得很详细了,这里重点说的是产品方案和技术实现。产品方案为什么造这个工...转载 2019-11-05 21:14:58 · 375 阅读 · 0 评论 -
.xcworkspace的理解
.xcworkspace显示包内容后共有3大块内容,如下图所示这里有关于.xcworkspace的一小段英文解读contents.xcworkspacedatalists the projects that are included as top-level entities in your project该文件打开后的内容如下,我个人理解是Workspace包含的顶...转载 2019-11-05 20:54:27 · 1147 阅读 · 0 评论 -
iOS开发之GameCenter使用
Game Center Configuration Guide for iTunes ConnectiOS游戏开发之Game Center实战iOS开发长文--通讯录、蓝牙、内购、GameCenter、iCloud、Passbook系统服务开发汇总请看以上文章的GameCenter部分Game Center是由苹果发布的在线多人游戏社交网络,通过它游戏玩家可以邀请好友进行多人游戏,...转载 2019-10-28 17:34:03 · 3221 阅读 · 0 评论 -
升级xcode11&ios13的坑
Swift Packages目前Pod跟SPM的兼容还没做好,配置好SPM后,Pod不能进行正常更新,先配置好Pod再集成SPM则没有问题Pod以后的更新可能会解决这个问题,也会有越来越多的库支持SPM在此之前,本人想出一个比较省事的解决方案:思路:Pod这个冲突主要针对工程,那么创建两个工程就好了,一个集成pod,另一个集成spm准备:先有一个集成pod的工程(这个也是我们项...转载 2019-10-28 17:29:52 · 842 阅读 · 0 评论 -
IOS Xcode开发中 文件名的后缀名m,mm,cpp,h区别
文件区别:.h:头文件。头文件包含类,类型,函数和常数的声明。.m :源代码文件。这是典型的源代码文件扩展名,可以包含Objective-C和C代码。.mm :源代码文件。带有这种扩展名的源代码文件,除了可以包含Objective-C和C代码以外还可以包含C++代码。仅在你的Objective-C代码中确实需要使用C++类或者特性的时候才用这种扩展名.cpp:只能编译C++当你...转载 2019-10-25 20:07:16 · 536 阅读 · 0 评论 -
mach-o 介绍
一、简介Mach-O是一种文件格式,是mac上可执行文件的格式,类似于windows上的PE格式 (Portable Executable ), linux上的elf格式 (Executable and Linking Format)。我们编写的C、C++、swift、OC,最终编译链接生成Mach-O可执行文件二、mach-o文件类型分为:image总共有11种。M...转载 2019-10-24 19:49:36 · 1169 阅读 · 0 评论 -
Mac OS 10.5 shell 使用defaults read读取文件显示does not exis
Mac OS 10.5 shell 使用defaults read读取文件显示does not existSnip20191014_4.pngMac os 升级到10.15后打包tweak项目失败,原因在于执行iosod这个sh时出错,以下方法为根据key读取plist中value:function readDefaultsValue() # args: plistPath, p...转载 2019-10-23 16:42:50 · 850 阅读 · 1 评论 -
macOS: 使用新版plutil命令操作Plist文件更方便
本文链接:https://blog.csdn.net/afatgoat/article/details/54729106 前言 介绍 测试环境 创建空Plist文件 在线帮助 验证Plist文件格式 显示文件内容 转换格式 创建简单键值 删除一个...转载 2019-10-23 14:32:18 · 1005 阅读 · 0 评论 -
在 Mac OS X 中建立加密的 Zip 压缩 -- 让机密资料加上密码
在 Mac OS X 中要压缩档案的話,基本上就用滑鼠点右鍵选「压缩...」就可以制作 Zip 格式的压缩档,很方便。但如果是机密的资料要透过 Email 等管道传送时,常常会需要建立加密的 Zip 压缩档,也就是需要密码才能解压缩的档案:像这样的压缩档就沒办法直接用 Mac OS X 的内建选项來建立了,这时候可以利用zip这个指令來做压缩。以下是使用教学:STEP 1首...转载 2019-10-21 21:24:34 · 1470 阅读 · 0 评论 -
mach-o文件分析工具 MachOview探究
一、MachOView工具概述及安装使用MachOView工具可以在Mac平台中可查看Mach-O文件的格式信息.iOS系统中可执行程序就属于Mach-O文件格式。MachOView工具属于免费开源项目,源代码可在https://github.com/gdbinit/MachOView下载,MachOview安装及常见报错:MachOview部分软件打开mack-o文件出现闪退的...转载 2019-10-17 20:19:29 · 2459 阅读 · 0 评论 -
sed使用(mac版)
1.增#方式一,在第一行插入字符串helloworld0。vim里,注意1i\,后边有一个空格sed -i "" "1i\ > hellworld0> " test.txt#方式二,在第一行插入helloworld。注意 $'\n' 。sed -i "" "1i\\"$'\n'"helloworld" test.txtsed -i "" '1i\'$'\n''hel...转载 2019-10-17 14:33:22 · 777 阅读 · 0 评论 -
PlistBuddy工具使用
PlistBuddyPlistBuddy 是 Mac 系统中一个用于命令行下读写 plist 文件的工具。可以用来读取或修改 plist 文件的内容。PlistBuddy 工具路径/usr/libexec/PlistBuddy可以在 /usr/local/bin/ 目录下建立软连接,就可以直接使用 PlistBuddy 命令了# 不能直接使用 PlistBuddy 命令ln...转载 2019-10-17 14:31:19 · 845 阅读 · 0 评论 -
PlistBuddy基本使用方法
plist文件并非直接的代码,不能通过shell脚本直接对其操作,需要使用Macos的PlistBuddy,本文主要描述PlistBuddy在plist文件中具体对象的增删改查四种操作:引用而Macos并未在环境变量中默认配置PlistBuddy,所以需要通过绝对路径来引用:/usr/libexec/PlistBuddy前文已经说过一个重点:【plist文件并非直接的代码,不能...转载 2019-10-16 17:59:35 · 1525 阅读 · 0 评论 -
ios开发:Xcode8制作framework及使用
转载http://daipei.me/posts/make_framework_by_xcode8/前言网上关于Framework制作的教程数不胜数,然而都过于陈旧,最新的也是使用Xcode7的教程,而且有些设置也只给出步骤,并没有给出原因,而且按照有些教程制作出的framework还有些问题,所以我把自己制作framework的过程记录下来,并且使用的是最新的Xcode8环境。正...转载 2018-10-11 10:27:45 · 257 阅读 · 0 评论 -
iOS平台代码混淆脚本
https://github.com/LennonChin/Code-Confuse-Plugin/blob/master/README_zh-cn.mdEnglish Description这是一款用于混淆iOS代码的插件。最近试用了几款目前很多开源的针对iOS代码混淆的插件,但混淆生成的文件一直不如人意,运行代码报错的地方依旧很多。同时有些插件实现的方式个人认为过于复杂,需要使用类...转载 2018-10-11 21:24:37 · 1024 阅读 · 0 评论 -
Xcode 常用编译选项设置
https://www.jianshu.com/p/fb261ed13a27乍一看,这些设置可能太麻烦,其实它真的可以节省许多调试应用的时间,在xcconfig文件中指定即可。用标准库连接LINK_WITH_STANDARD_LIBRARIES = YES如果激活此设置,那么编译器在链接过程中会自动使用通过标准库的链接器。Info.plist 输出编码INFOPLIS...转载 2018-10-16 17:55:37 · 1322 阅读 · 0 评论 -
Xcode10和iOS12踩坑
转载https://juejin.im/post/5b1634f0f265da6e61788998前言熬夜看完了WWDC 2018,睡前电脑挂着下载Xcode10。手机装好了iOS12,体验了一番,感觉比iOS11快多了,看了一眼各家App和我司的App,松了一口气,初步看来今年应该不需要做太多的适配工作,然后就睡了。(然而, 果然不能立flag!转载 2018-10-10 15:37:17 · 471 阅读 · 0 评论 -
ios审核被拒4.3(马甲包该如何上架)
4.3一般存在3种情况,可以根据被拒回复进行判断,如果你真的看不懂被拒回复,下面一一列举,逐一排除,黑色字体是解决方案 第一种:简称代码重复,代码重复使用也有三种情况1.可能你之前用这套源码上过一个包,现在用这套代码直接改一个logo跟名字再上一个马甲,这种基本会直接4.3 这种情况基本要改源码,第一步:工程中的文件夹的名字全部进行修改。第二步:每一个工程都有一个类前缀, 我们...转载 2018-12-19 21:04:08 · 1327 阅读 · 1 评论 -
关于iOS 审核 4.3
本文转载:http://blog.csdn.net/yuqingzhude/article/details/79109660苹果政策解读苹果是通过二进制代码来判别唯一性,通过包名来区分产品,重复二进制代码不允许上传。做以下3中情况解读:(1)包名一样,二进制代码不同,苹果视为更新;(2)包名不一样,二进制代码相同,审核无法通过;(3)包名不一样,二进制代码不同,就是通常说的马甲...转载 2018-12-19 21:13:34 · 1571 阅读 · 0 评论 -
no identity found Command /usr/bin/codesign failed with exit code 1 报错解决方法
https://www.cnblogs.com/ceasar/p/5407363.html stackoverflow 的解决方法是 xcode->preference->account->view detail -> refresh the provisioning profile 但是我这边最后一步是 没有刷新按钮 是一个 download all 的按钮 想到...转载 2018-12-26 14:13:16 · 306 阅读 · 0 评论 -
关于"Command /usr/bin/codesign failed with exit code 1"的解决办法
转载https://www.cnblogs.com/jlwang/p/5564273.html今天当码农的时候,xcode爆出"Command /usr/bin/codesign failed with exit code 1"这样一个错当时以为是授权文件设置不正确的问题,于是从开发者账户上重新下载授权文件进行了安装,。。。不好使,后来想了想,可能是存在两个相同授权文件的问题(一个用过...转载 2018-12-26 16:20:53 · 402 阅读 · 0 评论 -
XCode编译:pngcrush caught libpng error解决方法
发现Xcode编译时,模拟器下没有任何错误,但是在编入设备时,出现如下提示错误。While reading /Volumes/data2/project/ChildStory/ChildStory/nav_bar.png pngcrush caught libpng error: Could not find file: /Users/hopo/Library/Develope...转载 2018-12-26 16:21:57 · 167 阅读 · 0 评论 -
iOS开发应用上架必读最新苹果审核规则(史上最全版)
https://blog.csdn.net/tfy_2425482491/article/details/779621371. 条款和条件 • 1.1 为App Store开发程序,开发者必须遵守 Program License Agreement (PLA)、人机交互指南(HIG)以及开发者和苹果签订的任何其他协议和合同。以下规则和例证旨在帮助开发者的程序能获得App Store的认...转载 2018-12-20 21:05:39 · 1181 阅读 · 0 评论 -
App Store 审核指南
https://developer.apple.com/cn/app-store/review/guidelines/简介App 正在改变世界,丰富人们的生活,并为像您一样的开发者提供前所未有的创新机会。因此,App Store 已成长为一个激动人心且充满活力的生态系统,正为数百万的开发者和超过十亿的用户提供服务。不管是开发新手,还是由经验丰富的程序员所组成的大型团队,我们都非常欢迎您为 ...转载 2018-12-20 21:07:32 · 741 阅读 · 0 评论 -
iOS 代码混淆 && 垃圾代码
app风靡的时代,总有一些奇葩的需求。为了刷量,刷排名,制作壳包,为了通过苹果爸爸审核,想到代码混淆,垃圾代码等策略。作为一名程序员,怎么办?爬了一些文章博客。总的来说有一下几方面:字符串加密: 类名方法名混淆 程序代码混淆 加入安全SDK除了这些外,还有很多方面可以做加固保护的,以上这些只是范范一谈。制作壳包为了通过审核,还有注入垃圾代码来解决和主包代码重复率的问题。本文主...转载 2018-12-21 17:38:25 · 2320 阅读 · 1 评论 -
IOS下拆分Unity图集的透明通道(不用TP)
转载 https://zhuanlan.zhihu.com/p/32674470IOS下拆分Unity图集的透明通道(不用TP)flashyiyi程序员,B站UP 这就是IOS目前PVRTC对透明图的压缩效果。有人说是Unity没有用“正版”的PVRTC压缩库的原因,但是我专门去下载了独立版的PVRTexTool,对比图如下,你觉得哪个是独立版的效果呢?...转载 2019-01-03 21:01:05 · 867 阅读 · 0 评论 -
Xcode中PCH文件的使用
在iOS中pch文中件可以用来存放一些公用的宏,存放一些公用的头文件,和自定义Log(输出日志)等,一般常用在定义设备屏幕的宽度、高度、版本号等等。在Xcode5及以前Xcode会自动帮我们创建.pch文件,考虑到编译时的速度自Xcode6以后开始不再自动创建.pch文件了,这时如果我们需要的话,就要自己手动创建pch.gif创建完成后,接下来要配置PCH文件配置PCH.gi...转载 2018-12-24 20:44:35 · 343 阅读 · 0 评论 -
iOS code signing identity 配置
PROJECT 和 TARGET 中都要选:code signing identity: 调试统一都选 developer, 发布统一都选 distributionprovisioning Profile 也要选.过期和无效的证书及时删除, 避免 ambiguous 警告.选择正确的证书配置后仍然报错, clean 一下重启 xcode还不行~~~重启电脑----------...转载 2019-01-17 19:40:29 · 1531 阅读 · 0 评论 -
xcode中的get-task-allow
get-task-allow, when signed into an application, allows other processes (like the debugger) to attach to your app. Distribution profiles require that this value be turned off, while development profil...转载 2019-01-17 20:16:04 · 1755 阅读 · 0 评论 -
Xcode中get-task-allow有什么用
【failed to get the task for process问题】A: Why am I getting "Error launching remote program: failed to get the task for process" when debugging an iPhone application on the device? You are getting ...转载 2019-01-17 20:29:54 · 2860 阅读 · 0 评论 -
全球开发者各出奇招:我们想这样适配iPhone X
https://blog.csdn.net/fzhlee/article/details/78037474(原标题:面对iPhone X刘海现实,看看全世界的开发者怎么适配)原创curator北京时间9月12日凌晨,苹果在乔布斯剧院发布了iPhone X,主打全面屏的iPhone X取消了Touch ID,代之以Face ID。为了实现更为安全的面部识别,iPhone X正面的全面...转载 2019-01-14 20:02:54 · 259 阅读 · 0 评论 -
Unity判断机型是否为iPhoneX,iPhoneXS,iPhoneXR,以及iPhoneXS Max
原生iOS常用的判断方法iOS中判断机型的方式通常是利用屏幕分辨率,导航栏尺寸,是否支持某些功能特性等进行判断。例如获取屏幕宽高:CGFloat screenWidth = [UIScreen mainScreen].bounds.size.width;CGFloat screenHeight = [UIScreen mainScreen].bounds.size.height;...转载 2019-01-14 20:10:24 · 582 阅读 · 0 评论 -
UGUI研究院之iPhoneX自适应分辨率(三十一)
最近把游戏的iPhoneX自适应做完了,并且已经过了审。我的做法是每个界面的最上层都是一个横纵Stretch自动拉伸的,检测当发现是iPhoneX时,打开界面代码中自动设置 Left Top Right Bottom 为44.由于我们用的是Unity5.5.4,并没有方法来判断是否是iPhoneX 所以就用分辨率判断了。/// <summary>/// 自适应iPhon...转载 2019-01-14 20:54:38 · 816 阅读 · 0 评论 -
高效的iPhone X适配技术方案(UGUI和NGUI)
高效的iPhone X适配技术方案(UGUI和NGUI) 作者知乎:https://zhuanlan.zhihu.com/p/35538663作者也是U Sparkle活动参与者,UWA欢迎更多开发朋友加入U Sparkle开发者计划,这个舞台有你更精彩!适配来源:按照苹果官方人机界面指南 : https://developer.apple.com/ios/human-inter...转载 2019-01-09 20:23:19 · 734 阅读 · 0 评论 -
苹果APP审核被拒绝-关于“元数据被拒绝”相关问题
上周五上线一个新版本项目,这周一发现审核居然没通过!反馈的问题是“元数据被拒绝”,这个问题真是第一次碰到所以在这总结分享,做个笔记同时也希望可以帮助被这个问题困扰的开发者们。(添加一篇文章苹果APP审核被拒绝-关于“程序使用或引用非公开api”问题)注意:元素数据被拒绝不需要你修改二进制数据(就是不需要你修改项目),只需要修改你提交APP时的描述信息就OK。注意提供用户名和密码的准确性。注...转载 2019-02-22 19:27:50 · 7818 阅读 · 0 评论