Mapping architecture armv7 to i386
发表于|更新于
|浏览量:
最近项目里升级后,编译警告多了起来,看起来好碍眼,就想着改掉,先从Debug warning: Mapping architecture armv7 to i386.这个开始。
看了警告之后,知道是对应target下的Build Settings里architecture的问题,然后去检查对应target下,发现today widget、iwatch widget里Valid Architectures的Release跟Debug不一致,然后就手动修改为 $(ARCHS_STANDARD),编译,done,完美解决。
文章作者: 今是昨非
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 今是昨非的博客!
相关推荐
2021-08-30
iOS 在文件中访问 Document Directory
iOS 在文件中访问 Document DirectoryiOS 11之后,在 Plist 中设置LSSupportsOpeningDocumentsInPlace为 YES,且UIFileSharingEnabled为 YES,可以从系统的Files应用中访问应用的 Documents 目录。 如下: 从系统的文件打开,查看我的 iPhone如下,开启了此功能的应用可以从这里面看到 注意:此目录是 APP 的Documents目录,所以 APP 删除后,目录就消失了。 参考: iOS文件共享
2023-06-07
如何开发一个 Safari 插件
背景由于常用浏览器是Safari,而 Safari 浏览器的插件比不上 Chrome,所以就有了自己开发常用的 Safari 插件的想法。 打算开发当前页面生成二维码的 Extension,因为网络原因,AirDrop 有时候搜不到手机,所以有了这个需求,而且打算这个也比较简单,所以从这个开始。 调研苹果的官方文档safari_web_extensions给出了步骤,看了好几遍,还是不知道如何下手。虽然新建项目的时候苹果帮忙把框架已经都建好了,但是还是有疑惑,疑惑的点在于: 主APP的作用是什么? Extension的作用是什么? 代码应该写在哪里? manifest.json支持的配置项有哪些,哪里可以看到,应该设置哪些? content.js、background.js分别是干什么用的,什么时候用? popup.html、popup.css、popup.js 又是指的哪部分? content.js、background.js、popup.js中操作 tab 的方法有哪些?哪里可以看到? 这些疑惑一度导致开发计划搁浅,因为没有文章来解释这些问题。于是转而去 Githu...
2021-05-27
正经分析iOS包大小优化
本文发表在《搜狐技术产品》公众号正经分析iOS包大小优化 iOS 包大小分析优化背景包大小优化是项目开发中不可避免会遇到的,网上关于包大小优化的文章很多,每篇文章说的都不尽相同,笔者曾经根据网上的文章做过包大小优化,但效果不尽人意;因此笔者想根据已有的文章、知识结合自己的理解、实践,做一份总结梳理,整理自己的包大小优化逻辑,不光要知道怎么做可以让包大小变化,还要知道为什么这么做能产生效果,所以就有了这篇文章。 分析想要优化安装包大小,首先需要弄清楚影响安装包大小的因素有哪些?之前笔者优化包大小直接闷着头就去瘦身,瘦来瘦去也没瘦出个名堂,而且还跟别人说不清楚自己做了什么,为什么这么做? 后来总结出来,做事之前要先思考、分析、最后再去做,要思考的是影响这件事的因素有哪些,一一列举出来,查漏补缺;然后针对这些因素进行分析,分析哪些因素是人为可控的,哪些因素是不能改变的,针对可控的部分要怎么优化,不可控的部分是否能避免,最好可以使用思维导图工具,一一记录;然后按照思维导图的整理出来的数据,按步骤去执行。 回过头来,针对安装包大小,首先分析影响安装包大小的因素,有:Xcode的设置、资...
2022-08-26
一次诡异的录音崩溃排查
背景上午突然有用户反馈,使用录音功能崩溃。起初以为是最近更新的APP新版本有问题,赶紧去排查。 排查首先在测试手机上,测试环境调试,发现并没有崩溃,长出了一口气,说明不是所有用户都有,不是新版本改出来的问题。 然后去听云后台看日志,发现崩溃的地方是初始化AVAudioRecorder的方法——[[AVAudioRecorder alloc] initWithURL:url settings:recordSettings error:&error];。很费解,只是简单的初始化方法,为什么会导致崩溃呢? 一开始猜测会不会是用户录音权限没开,导致开始录音的时候崩溃。尝试后发现如果权限关闭,在进入录音页面前就会提示权限未开启,去开启权限,并不能进入到录音步骤。 然后怀疑会不会是初始化的url为空,又或者机型不支持设置recordSettings中的某些参数?搜索后,发现有url为空崩溃的条目,所以这里大概率也是初始化的url为空。 继续排查,发现初始化的url,是本地的缓存文件夹中Audio文件夹,并且文件名字是取日期+时分秒用于避免重复,格式为yyyyMMdd_HHmmss...
2021-04-19
iOS 自动打包
iOS 自动打包使用FastLane打包安装 fastlane 通过HomeBrew安装 brew install fastlane 通过Bundler安装 安装 bundler 然后在项目根目录下创建./Gemfile文件,编辑内容 1234// 安装 bundler$ gem install bundler 12345//然后在项目根目录下创建./Gemfile文件,编辑内容source "https://rubygems.org"gem "fastlane" 编辑Gemfile文件: 123456source "https://rubygems.org"gem "fastlane", "2.180.1"# 如果使用Cocoapods,需要添加下面这行gem "cocoapods" 通过ruby gems安装 1sudo gem install fastlane fastlane安装成功后,安装两个插件,用于版本号管理和打包成功...
2024-12-04
全平台抓包工具Reqable使用
背景在iOS开发中,经常会遇到需要抓包的情况,比如查看网络请求、查看接口返回的数据等。而在iOS开发中,常用的抓包工具有Charles、Proxyman等,这些并非不好用,尤其是Proxyman,使用起来非常方便。但是需要付费,免费的只能查看3个域名;而且这些工具使用的时候需要手动进入网络中设置代理,比较麻烦。 无意中发现了Requable,优点是:全平台可用,且抓包功能免费,没有广告;最好用的是可以在手机上一键连接电脑,不需要进入网络设置代理,非常方便。优点: 全平台,iPhone、Mac、Windows、Android都有APP 抓包免费,不限制域名数量 可以在手机上一键连接电脑,不需要进入网络设置代理 可以查看请求头、请求体、响应头、响应体,设置断点,拦截修改返回和相应;(免费版最多生效3个) 缺点:VPN的开启和关闭标识不够明显,在使用过程中容易被误操作。 使用以Mac版本来看,如下图,主要有以下几个部分: 区域1,导航部分,在这里可以看到所有的域名,可以选择对指定的域名置顶或添加书签,单击选中时后面会有绿色的勾,代表过滤这个域名;选中多个,则过滤多个;没有选...