基于Python脚本 iOS 工程的自动打包

导入的库

import os

import requests

import webbrowser

import subprocess

import shutil

appFileFullPath = 'XXX.app'# .app的绝对路径(iOS工程的绝对路径)

PayLoadPath = '***' payload的路径

packBagPath = '/Users/zrq/Desktop/IPAPath'//ipa包的绝对路径

#编译打包流程

def bulidIPA():

#删除之前打包的ProgramBag文件夹

subprocess.call(["rm","-rf",packBagPath])

#创建PayLoad文件夹

mkdir(PayLoadPath)

#将app拷贝到PayLoadPath路径下

subprocess.call(["cp","-r",appFileFullPath,PayLoadPath])

#在桌面上创建packBagPath的文件夹

subprocess.call(["mkdir","-p",packBagPath])

#将PayLoadPath文件夹拷贝到packBagPath文件夹下

subprocess.call(["cp","-r",PayLoadPath,packBagPath])

#删除桌面的PayLoadPath文件夹

subprocess.call(["rm","-rf",PayLoadPath])

#切换到当前目录

os.chdir(packBagPath)

#压缩packBagPath文件夹下的PayLoadPath文件夹夹

subprocess.call(["zip","-r","./Payload.zip","."])

print ("\n*************** 打包成功 *********************\n")

#将zip文件改名为ipa

subprocess.call(["mv","payload.zip","Payload.ipa"])

#删除payLoad文件夹

subprocess.call(["rm","-rf","./Payload"])

#创建PayLoad文件夹

def mkdir(PayLoadPath):

isExists = os.path.exists(PayLoadPath)

if not isExists:

os.makedirs(PayLoadPath)

print(PayLoadPath + '创建成功')

return True

else:

print (PayLoadPath + '目录已经存在')

return False

if __name__ == '__main__':

bulidIPA()

uploadIPA('%s/Payload.ipa'%packBagPath)

//主动调用打包

原博客地址:http://www.cocoachina.com/ios/20180507/23295.html

利用Python工具进行打包功能的更多相关文章

  1. 利用python实现简单邮件功能

    #!/usr/bin/env python # -*- coding:utf-8 -*- import smtplib from email.utils import formataddr from ...

  2. 利用Python实现多线程聊天功能

    #-*- coding:utf-8 -*- from threading import Thread from socket import * #1.实现接收消息 def recvDate(): wh ...

  3. 利用PYTHON设计计算器功能

    通过利用PYTHON 设计处理计算器的功能如: 1 - 2 * ( (60-30 +(-40/5) * (9-2*5/3 + 7 /3*99/4*2998 +10 * 568/14 ))- (-4*3 ...

  4. Python_Tips[1] -> 利用 Python 的字典实现 Switch 功能

    利用 Python 的字典实现 Switch 功能 Python是没有switch语句的,当遇到需要实现switch语句的功能时,一般可以用if/else进行代替,但是还有一种更加简洁的实现方法,利用 ...

  5. 如何利用Python词云和wordart可视化工具对朋友圈数据进行可视化展示

    大前天我们通过Python网络爬虫对朋友圈的数据进行了抓取,感兴趣的朋友可以点击进行查看,如何利用Python网络爬虫抓取微信朋友圈的动态(上)和如何利用Python网络爬虫爬取微信朋友圈动态——附代 ...

  6. 利用Python进行数据分析_Pandas_基本功能

    申明:本系列文章是自己在学习<利用Python进行数据分析>这本书的过程中,为了方便后期自己巩固知识而整理. 第一 重新索引 Series的reindex方法 In [15]: obj = ...

  7. cocos2d-x3.9利用cocos引擎一键打包Android平台APK(C++小白教程)

    链接地址:http://www.cocoachina.com/bbs/read.php?tid=333937 cocos2d-x3.9利用cocos引擎一键打包Android平台APK(C++小白教程 ...

  8. 利用python httplib模块 发送Post请求测试web服务是否正常起来!

    最近在学习python,恰好老大最近让我搞个基于post请求测试web服务是否正常启用的小监控,上网查了下资料,发现强大的Python恰好能够用上,所以自己现学现卖,顺便锻炼下自己. 由于本人也刚接触 ...

  9. 利用python web框架django实现py-faster-rcnn demo实例

    操作系统.编程环境及其他: window7  cpu  python2.7  pycharm5.0  django1.8x 说明:本blog是上一篇blog(http://www.cnblogs.co ...

随机推荐

  1. IOS 获取农历方法(转)

    声明:以下为使用iOS的 NSChineseCalendar 网上之前发现有人说这个方法不是完全准确,有些日期会显示的不对,本人没有验证过,也实在懒得用C++那套方法去实现. 另外我做的不过是个简单的 ...

  2. 关于HDFS默认block块大小

    这是有疑惑的一个问题,因为在董西成的<Hadoop技术内幕--深入解析MapReduce架构设计与实现原理>中提到这个值是64M,而<Hadoop权威指南>中却说是128M,到 ...

  3. [C++] Memory Retrieval(内存检索)

    Traverse the memory by  (char*) , because every time it will increase by 1byte when i want get the i ...

  4. [模板]KMP字符串匹配

    洛谷P3375 注意:两次过程大致相同,故要熟读熟记,切勿搞混 可以看看其他的教程:http://www.cnblogs.com/c-cloud/p/3224788.html 本来就不太熟,若是在记不 ...

  5. Red Hat 6.5 本地yum源的配置

    在没有网络的情况下,想要使用yum源进行软件的安装就显得非常困难了.所以有时候配置本地的yum源也是非常必要的. 准备工作: rad hat 的ISO镜像文件. 1.创建一个文件夹,用于挂载ISO镜像 ...

  6. [JAVA] 冻结Excel的第一行或第一列

    可以按照如下设置创建冻结窗口. sheet.createFreezePane( 3, 2, 3, 2 ); 前两个参数是你要用来拆分的列数和行数.后两个参数是下面窗口的可见象限,其中第三个参数是右边区 ...

  7. Flask框架 之 第三方组件

    浏览目录 flask-session flask-sqlalchemy flask-script flask-migrate flask-session 安装 pip3 install flask-s ...

  8. data cleaning

    Cleaning data in Python   Table of Contents Set up environments Data analysis packages in Python Cle ...

  9. CALayer, CoreGraphics与CABasicAnimation介绍

    今天我们来看一下CALayer.CoreGraphics和CABasicAnimation.这些东西在处理界面绘制.动画效果上非常有用. 本篇博文就讲介绍CALayer的基本概念,使用CoreGrap ...

  10. Animator 设置动画效果

    1. 调节预设对象大小适中 2. 设置骨骼,修改关节 3. 拖入预设动作效果对象中 4. 将预设对象拉入场景中,并新建AnimatorController 5. 新建动作或BlendTree,设置参数 ...