今天逯同事说,可以把狂挂传奇打包的项目写成一个脚本,这样就不用担心证书有时不能用的问题了。

然后,像我这么好学的学生,当然要去执行了。(其实,以前他给的建议我都只是听听而已,这次是因为想学点东西了,所以冷静了一把。然后一下午都在鼓捣这个东西)

当这件事情完成后,再回头看,发现代码非常简单,实现的功能也很小,但是对于新手来说,收获还是很多的。

主要的功能实现步骤如下:

1.更新plist里面的内容;

2.将新的plist转移至包的payload文件中(也就是ipa包解压完的东东:将ipa文件的后缀改为zip,然后解压,会有一个Payload文件);

3.将这个Payload文件压缩(这个地方比较重要,遇到两个难点);

4.将Payload.zip进行ipa重命名,命名为自己想要的。

对于我这个新手来说,所有的Linux语言都是陌生的,从来没有用过,例如解压、压缩、移动、重命名(包括后缀),都不知道。现在就先罗列一下这些简单的小命令,

帮助新手理解并加强记忆。

1.解压:

这样,zip里面的东西,就会解压到空文件夹里面了。当一个ipa包不能安装或者出现乱码时,用这种方式解压,可以看清里面到底是哪个地方变成了乱码。

2.压缩:

zip -qr (要压缩的压缩包的名字及形式) (原要压缩的文件)

3.移动

mv (要移动的文件) (要移动的位置)
mv KY_Channel.plist Payload/TestOfDuDai.app/  

4.重命名

mv (被重命名的文件) (最终命名的结果) 

这个小脚本用到的小知识点就用到了这些,以后有需要还会在罗列。

不过,虽然这个脚本比较小,但是,在制作的过程中,还是遇到了很多的难题,比如,

1.问题:路径冗余

问题现象:压缩完的文件夹解压后不是直接Payload文件夹,而是嵌套了很多父文件夹,如电脑名称、Desktop等,这样,在重新签名和安装时,是失败的。

解决办法:将当前目录放置在一起。运维庆敏的做法是,在一开始,就放置在桌面上,下面所有的操作都是在桌面上进行的。

进入桌面的方法是:

 cd /Users/KuaiYong/Desktop/  

这样,在解压或者压缩时,就不会被嵌套很多层了。

2.问题:脸皮

问题现象:遇到不会的,不敢去问别人。许多问题出现时,思前想后的才去问别人。

解决办法:自己搜不到或者解决不出来,就立马去问别人,不浪费时间

总的来说,今天下午过的比较充实,丰富了自己的经验,开启了一片新的天地,对自己的努力比较满意。也许是因为坚持跑步的原因,希望自己能够坚持下去。加油!!

脚本,替换ipa里面的资源,并重新打包的更多相关文章

  1. Android 脚本替换PackageName

    原文简书地址:http://www.jianshu.com/p/dca9c323c686 1 前言 平时如果想要替换包名一般是在AS中右键Rename进行操作.但是如果遇到一份代码希望导出几种不同的包 ...

  2. 【转载】LR - 细节解析,为什么LR脚本会去访问“脚本中不存在的“资源?

    问题描述 同事遇到的一个问题,LR执行性能测试脚本时,总报出错误,无法访问一个图片的地址,但脚本中明明没有对该资源的请求. Action4.c(12): Warning -27796: Failed ...

  3. Android将Activity 打 jar包 (解决资源文件不能打包的问题)

    转载地址:http://blog.csdn.net/xiaanming/article/details/9257853 最近有一个需要,我们公司做了一个apk客户端,然后其他的公司可以根据自己的需要来 ...

  4. Android将Activity打成jar包供第三方调用(解决资源文件不能打包的问题)

    转载地址:http://blog.csdn.net/xiaanming/article/details/9257853 最近有一个需要,我们公司做了一个apk客户端,然后其他的公司可以根据自己的需要来 ...

  5. 【转】Android将Activity打成jar包供第三方调用(解决资源文件不能打包的问题)

    Android中引入第三方Jar包的方法(java.lang.NoClassDefFoundError解决办法) 鼠标右键项目,然后属性,然后java buildpath 然后order and ex ...

  6. 基于python脚本,实现Unity全平台的自动打包

    转载请标明出处:http://www.cnblogs.com/zblade/ 0. 概述 本文主要针对项目中自动打包过程进行调研,实现用python脚本来打出win/android/ios三个平台下的 ...

  7. 34.如何获取app(apk和ipa)中的资源

    移动互联网中,主要的两个平台是android和ios,android上文件的安装包是后缀名为apk的文件,ios上文件的安装包是后缀名为ipa的文件,在本文分析一下这两种文件的特点,以及如何用程序去解 ...

  8. 提取ipa里面的资源图片

    有时候发现个不错的UI,就想扒出来看看,ipa里的图片你知道的,都不能直接用,所以找到两个方法:一.用python转换1.将ipa文件后缀改为zip,然后解压缩.2.新建一个文件夹,将解压后的包里的p ...

  9. U3D 场景切换时 脚本对象,GO对象,资源对象的问题

    脚本对象:在LUA中写了一个actor类,它封装了角色逻辑,引用了一个GO. GO对象:通过 GameObject.Instantiate(资源对象)生成的. 资源对象:制作好的模型prefab. 在 ...

随机推荐

  1. ubuntu安装jdk6

    我的ubuntu版本是12.04的64位的.由于ubuntu官方没有更新最新版的jdk6,所以我们只能主动去oracle公司网站去下载.网站地址:http://www.oracle.com/techn ...

  2. 【Java】Maven安装、Eclipse配置以及相关错误解决集合

    作者呕血总结,下面写的每一个错误我都遇过 · Maven安装 · Eclipse配置 · Maven安装 安装前请确保已经装有JDK. 一. 准备Maven程序包 到官网https://maven.a ...

  3. 电话状态监听 - iOS

    今天接到一个监听状态的需求,当使用 App 时若电话介入需要对当前状态进行监听操作(注:并非通话内容),根据不同的状态实行相关的需求操作,废话不多说步骤如下. 首先,常规操作先引用对应的头文件,来为后 ...

  4. xcode怎样分析检测内存泄露(iOS)

    虽然iOS 5.0版本之后加入了ARC机制,由于相互引用关系比较复杂时,内存泄露还是可能存在.所以了解原理很重要. 这里讲述在没有ARC的情况下,如何使用Instruments来查找程序中的内存泄露, ...

  5. FAT32中文版分析+补充(1)

    概述 起先所有的FAT文件系统都是为IBM PC机器而设计的,这说明了一个重要的问题:FAT文件系统在磁盘上的数据是用“小端”(Little Endian)结构存储的.我们使用4个8-bit的字节—— ...

  6. Oracle多表连接方法

    笛卡尔连接[结果集为各表记录的乘积] SELECTt * FROM table_1, table_2, table_n SELECTt * FROM table_1 CROSS JOIN table_ ...

  7. 8-2 开发接口 (入参是json格式)

    1.开发入参事json格式的接口 import json import tools import flask from .check_session import check_session serv ...

  8. C语言基础篇(二)运算符

    导航: 2.1 算数运算符 2.2 逻辑运算符 2.3 位运算 2.4 赋值运算 2.5 内存访问符号 ----->x<------------->x<------------ ...

  9. 001---web应用程序

    什么是web应用? 应用程序分两种模式:C/S.B/S 1 .C/S:客户端(Client)与服务端 一般独立运行 2 .B/S:浏览器(Browser)与服务端 这类应用要借助浏览器:谷歌.火狐.I ...

  10. [Bzoj2282]消防(二分答案+树的直径)

    Description 某个国家有n个城市,这n个城市中任意两个都连通且有唯一一条路径,每条连通两个城市的道路的长度为zi(zi<=1000). 这个国家的人对火焰有超越宇宙的热情,所以这个国家 ...