使用脚本删除ios工程中未使用图片 最近在读唐巧大神的<iOS开发进阶>,学到了一个大招:使用脚本删除ios中未使用的图片(纸书上有点小问题,参考github上的issue:使用脚本删除ios中未使用图片). issue中得到的建议是:将代码保存在一个.sh文件中,在xcode里面执行shell脚本文件.看到这里,头瞬间大了,大学学的shell都还给linux老师了....还有xcode中怎么执行脚本啊??? google一下,找到mac下创建.sh文件的小白方法:教你在mac上面创建可执行脚…
iOS 工程中文件变成红色是原有的文件路径改变了,系统找不到了.…
在现有的iOS工程中集成react native, 或者说将react native引入到iOS 项目,是RN和iOS混合开发的必经之路 参考官网教程:https://reactnative.cn/docs/integration-with-existing-apps/ 但是会有一些步骤报错,这里记录一下.首先我的项目结构是这样: RNTEST 是最外面的文件夹的名字,也是iOS项目的名字.ios/  下是iOS项目文件. npm安装RN依赖都没问题,按照官网步骤来 最主要的是 cd ios p…
开发时间久了, 几个版本迭代之后, 工程中难免留下很多垃圾资源, 造成apk的包很大, 这里介绍一个工具, 可以自动扫描工程中, 没有使用的资源, 然后自动删除: 包括图片, xml, 文本等. 采用的方案: https://github.com/KeepSafe/android-resource-remover 这个开源的项目是基于lint扫描的结果, 执行python脚本自动删除无用的文件. 有一段时间没更新了, 而且是基于之前eclipse的路径结构, 不过即使是gradle工程, 仍然是…
一.搭建开发环境 http://reactnative.cn/docs/0.46/getting-started.html#content 二.创建一个模板 运行以下命令,创建一个最新版本的 reactive-native 的环境.RN 的版本如下: react-native init MyTestRnWithNative react-native -v react-native-cli: 2.0.1 react-native: 0.47.1 得到以下的工程目录.其中iOS文件夹中是 Nativ…
原地址:http://blog.sina.com.cn/s/blog_947c4a9f0100zf41.html 们建立一个工程后,会在Supporting files下面看到一个"工程名-Info.plist"的文件,这个是对工程做一些运行期配置的文件,很重要,不能删除. 如果你在网上下载的工程中的这个文件名只是Info.plist,那么恭喜你,这个工程太老了,是用包含SDK2.0以前的Xcode生成的,不过没关系,不影响使用. 如果你使用文本编辑器打开这个文件,你会发现这是一个XM…
我们建立一个工程后,会在Supporting files下面看到一个"工程名-Info.plist"的文件,这个是对工程做一些运行期配置的文件,很重要,不能删除. 如果你在网上下载的工程中的这个文件名只是Info.plist,那么恭喜你,这个工程太老了,是用包含SDK2.0以前的Xcode生成的,不过没关系,不影响使用. 如果你使用文本编辑器打开这个文件,你会发现这是一个XML格式的文本文件,一般我们不用文本编辑器直接编辑这个文件,而是通过Xcode编辑. 下面是这个文件的一个例子:…
  APP开发过程中,往往需要在多个网络环境或配置中进行切换,以获取不同配置的APP,甚至有时需要用一套代码经过简单的配置生成不同的APP.而手动配置费时费力,且容易出错.这里介绍用脚本工具,去生成不同配置的APP工程. 1. 需求分析 在配置工程中我们需要事先知道有哪些配置项: APP 启动图.图标等资源文件. APP 名称.版本号.bundleID. APP 相关的微信 APPKey.scheme. 网络环境.部分代码替换. provisioning profile 修改 分析以上需要配置的…
今天在我同步mongo数据库的时候,服务器的磁盘突然就被占满了导致同步中断,mongo容器也停止工作了.然后就想要弄一个能够定时清理同步过程中留存在docker容器中的mongo数据的脚本.话不多说,脚本如下#!/bin/bash# 获取容器的idcid=`docker ps | grep mongo | awk '{print $1}'`# 定义日志文件log_file=/目录/delete_mongo_dump_file.log(需要替换成自己的目录)# 格式化日期today=$(date…
ARC与非ARC在一个项目中同时使用, 1,选择项目中的Targets,选中你所要操作的Target,2,选Build Phases,在其中Complie Sources中选择需要ARC的文件双击,并在输入框中输入:-fobjc-arc,如果不要ARC则输入:-fno-objc-arc 混用没有问题,没有用ARC的代码继续坚持谁申请谁释放就好了.以前的库没有时间重写,都采用这种方法. 而且不知道你用的是什么第三方代码,一般来说,现在很少有arc only的代码,大部分都是用一些宏来让代码可以同时…
一)第一种方法 在工程中有警告的地方,右键选择Review in log,然后就能看到类似[Wnonnull]这样的警告, 然后在工程buildSettings中的Other Warning Flags中添加 -Wno-nonnull就可以去掉这种类似的警告了. 规则为:-Wno-类型 ① iOS的去除第三库警告 在工程中有警告的地方,右键选择Review in log在日志中查看 ② 然后就能看到类似[-Wreceiver-expr]这样的警告 ③ 然后在工程buildSettings中的其他…
对于64位机子和iPhone OS应用 解决方法是使用-all_load 或者 -force_load. -all_load强迫链接器从它能看见的所有文档中加载所有的对象文件,甚至那些没有OC代码的文档. -force_load适用于Xcode3.2+版本,它允许finer得到文档加载的控制.每一个-force_load操作必须跟着一个文档路径,文档中的每一个对象文件将会被加载. -all_load就是会加载静态库文件中的所有成员, -ObjC就是会加载静态库文件中实现一个类或者分类的所有成员,…
开发环境: Xcode 6.4   openCV for iOS 3.0    配置openCV开发环境 在OpenCV官网中下载OpenCV开发包(官网地址:http://opencv.org/) 1.新建项目,Single View Application   2.TARGETS -> General -> Linked Frameworks and Libraries 3.添加Add Other... 4.在Building phase 中添加opencv2.framework 5.导入…
1.新建pch类文件 2.在工程配置中,Build Setting 下搜索"pre"寻找Apple LLVM6.1 - Language下的 Preflx Header 3.点开Preflx Header 把左边pch类拖拽进去 4.把/"工程名"/....前边的内容全部换为$(SRCROOT) (具体替换内容看报错自己灵活运用)…
如果你在工程里拉入.c/.cpp文件就会导致工程报错, 现在有两种解决方式 1. 把.c文件的后缀全部改成.m的后缀 把.cpp文件的后缀改成.mm的后缀 2. 使用 工程名-Prefix.pch 并在工程->targets->build settings Apple LLVM 6.1 - Language 下 Precompile prefix header  YES Prefix Header  $(PROJECT_NAME)/工程名-Prefix.pch 然后新增 工程名-Prefix.…
需求: 产品 代码实现: 在首页.m中 //一天之内只能批量邀请一次 NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults]; // NSLog(@"之前时间:%@", [userDefault objectForKey:@"nowDate"]);//之前存储的时间 // NSLog(@"现在时间%@",[NSDate date]);//现在的时间 NSDate *n…
 转至: iosNSDateNSObject一天一次   整体思路:当进行操作的时候记录操作时间存在偏好设置当中,当再次点击的时候获取现在的时间然后和之前记录的时间进行比较.如果是一天那么就提示“今天已经操作过了”,如果不是一天,那么可以正常操作,然后记录操作时间.如此循环往复... 这里的一天只能操作一次指的是: (24点指的是凌晨12:00,也就是00:00) 1.某一天任意时间点到24点之间. 2.只要过了24点,立马可以进行第二次操作. 3.假如你是23:59进行了一次操作,那么过了一分…
工程在经过多人后,往往会出现较多的垃圾,导致打包出来的ipa文件偏大,有时候我们会通过清理代码来给程序瘦身,而瘦身ipa效果明显的,主要通过清理程序里的无用图片. 推荐一个清理图片的应用 https://github.com/tinymind/LSUnusedResources 直接打开运行,点击Browse..选择工程目录,再点击Search 搜索出该搜索工具认为工程里没有用到的图片,当然那些没搜出来的就都是有使用的图片了,不用理会 注意:这里所说没有用到的图片不是真的没有用到,因为这个工具他…
这个我们需要自己去编译,但是已经有人帮我们编译好了,压缩算法也已经实现,因此,我们去下载然后编译即可:https://github.com/bither/bither-android-lib 首先将上面下载好的已经编译好的libjpeg放到jni目录下,将下图内容都放到jni目录中: 安装好ndk以后,直接输入ndk-build即可.接下来就会编译生成生成两个文件夹及文件夹中的arm下的动态库  我的libs中的armeabi和armeabi-v7a中没有生成libbitherjni.so li…
#pragma mark 先获取本地图片或者网络图片 - (void)saveHeaderImageWith:(NSString *)path { UIImage *img = [UIImage imageWithContentsOfFile:path]; //这里img也可以是从网络获取的图片 [self saveImageToPhotos:img]; } #pragma mark 保存图片 - (void)saveImageToPhotos:(UIImage*)savedImage { UI…
最近公司有一个新的需求,要把代码进行瘦身,这篇博客记录下如何对图片进行压缩的. 原理: 写一个脚本,把图片文件夹'.xcassets'的所有文件遍历出来,然后使用一个第三方的算法把图片压缩后再替换回去 成果: 由于在该工程中的png图片已经压缩过了,这次只压缩了jgp为后缀的图片,可以看出,还是有效果的 代码如下: import os import tinify import shutil tinify.key = '5J54hg59ysAuhHFPxXB*******' source_file…
来自cocachina 的写法 参考 声明:本文来自互联网,非本人原创,仅供参考学习使用. 我的iOS工程结构 接下来,我就简单介绍下我做iOS项目时使用的工程结构.首先要说的是,这只是我的工程结构,并不是规范,或许它存在很多问题和不规范的地方,我只是把它分享出来,给大家提供一个参考,也希望收到大家的一些反馈来帮助我改进! 项目结构 下图是我做iOS项目的一个常用工程结构,整体模式还是按照MVC的结构,只是在每一层做了一些细分处理,下面就简单介绍下. iOS工程中没有像Java那样非常严格的分包…
[问题] 关于iOS/iPhone中的文件选择对话框,用于用户去选择图片等文件 过程中,问题转换为,需要给当前iOS项目中,添加一个图片. 类似于Windows开发中的资源文件,其中图片文件属于资源的一种. 并且,接着可以正确显示图片. [解决过程] 1.对于如何给iOS工程中添加类似于微软开发过程中的资源文件,即图片,此处到网上搜了,但是只找到官网的解释: Custom Icon and Image Creation Guidelines 但是其只是解释对于各种的icon建议使用何种大小之类的…
删除工程文件夹下的Podfile.Podfile.lock及Pods文件夹 2. 删除xcworkspace文件 3. 使用xcodeproj文件打开工程,删除Frameworks组下的Pods.xcconfig及libPods.a引用 4. 在工程设置中的Build Phases下删除Check Pods Manifest.lock及Copy Pods Resources ps:如果将cocoapods集成到工程中后不小心修改或删除了其相关文件导致无法便以通过例如:不小心把 Pods.xcco…
一直想抽空整理一下unity原生工程导入iOS原生工程中的详细步骤.做iOS+vuforia+unity开发这么长时间了.从最初的小小白到现在的小白.中间趟过了好多的坑.也有一些的小小收货.做一个喜欢总结的人.好了废话不多说了.上干货.本人用的是unity 5.4.0f3 + Xcode 7.2.个人认为这个版本的影响不是很大的. 一.unity导出工程一开始是这样子的: 二.unity导入原生工程的准备工作. 1.将一些必要的文件导入iOS Native工程中去 1>将Classes 和 Li…
前言 IOS的开发过程中,当需要给测试人员发布测试包的时候,直接使用xcode来做的效率是非常低下的.尤其是当有一点小改动需要重新出包时,那简直是个折磨的人的工作.通过一番研究后,遂决定写一系列脚本,以代替人工完成打包和发布的过程. 目前脚本已经完成,基本可以满足我目前的需求.现将其开源,托管在github上,项目地址:点击这里 思路 借助xcode所附带的“Command Line Tools”,可以通过命令行来完成IOS工程的编译和打包工作.脚本正是基于此完成的. 本套脚本分为三个部分:负责…
从工程中删除Cocoapods 分类: Xcode iOS 2013-08-24 01:11 5512人阅读 评论(2) 收藏 举报 CocoapodsiOSXcode 1. 删除工程文件夹下的Podfile.Podfile.lock及Pods文件夹 2. 删除xcworkspace文件 3. 使用xcodeproj文件打开工程,删除Frameworks组下的Pods.xcconfig及libPods.a引用 4. 在工程设置中的Build Phases下删除Check Pods Manifes…
http://blog.csdn.net/e20914053/article/details/50170487 如今混合开发方兴未艾,有的项目可能一开始是原生开发的,后期需要加入混合开发,如将Cordova工程引进到原生工程中.那么该如何操作呢?下面就来描述一下步骤. 1.首先我们来创建一个Cordova工程,取名MyCordova.在创建Cordova工程之前,需要先安装Cordova,具体安装方法网上很多,在此不累述. cordova create MyCordova 进入MyCordova…
http://blog.csdn.net/ccf0703/article/details/8588667 文章首发地址:http://webfrogs.me/2013/02/18/ios-automation/ 作者:webfrogs 转载请注明出处. 前言 IOS的开发过程中,当需要给测试人员发布测试包的时候,直接使用xcode来做的效率是非常低下的.尤其是当有一点小改动需要重新出包时,那简直是个折磨的人的工作.通过一番研究后,遂决定写一系列脚本,以代替人工完成打包和发布的过程. 目前脚本已经…