All Projects → tzshlyt → Ios Auto Replace Package

tzshlyt / Ios Auto Replace Package

iOS自动打包脚本,并实现图片素材、文字资源、部分代码的替换和重签名,基于python实现。

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Ios Auto Replace Package

Itri Speech Recognition Dataset Generation
Automatic Speech Recognition Dataset Generation
Stars: ✭ 32 (-36%)
Mutual labels:  automatic
Laravel Dropbox Driver
A storage extension for Dropbox.
Stars: ✭ 42 (-16%)
Mutual labels:  package
Gosearch
🔍 Search the Go packages via command-line
Stars: ✭ 48 (-4%)
Mutual labels:  package
Rcppexamples
Examples of using Rcpp to interface R and C++
Stars: ✭ 33 (-34%)
Mutual labels:  package
Auto Frontend
Automatically generate frontends for go programs
Stars: ✭ 37 (-26%)
Mutual labels:  automatic
Unity Package Tools
A set of developer tools to make it easier to create and distribute packages for the native Unity Package Manager.
Stars: ✭ 44 (-12%)
Mutual labels:  package
Gub
CLI tool for create an npm package from any repos. 🐳
Stars: ✭ 31 (-38%)
Mutual labels:  package
Pyinstaller
Freeze (package) Python programs into stand-alone executables
Stars: ✭ 8,679 (+17258%)
Mutual labels:  package
Goreleaser
Deliver Go binaries as fast and easily as possible
Stars: ✭ 9,290 (+18480%)
Mutual labels:  package
Automatic Release
Automates the release process for GitHub projects.
Stars: ✭ 46 (-8%)
Mutual labels:  automatic
Tdm
R package for normalizing RNA-seq data to make them comparable to microarray data.
Stars: ✭ 33 (-34%)
Mutual labels:  package
Codegen
A model-view based code generator written in Java
Stars: ✭ 36 (-28%)
Mutual labels:  automatic
Glue
⛓️ Bindings that stick. A simple and generic API for C++ to other language bindings supporting bidirectional communication, inheritance and automatic declarations.
Stars: ✭ 44 (-12%)
Mutual labels:  automatic
Gravity
Kubernetes application deployments for restricted, regulated or remote environments.
Stars: ✭ 968 (+1836%)
Mutual labels:  package
Npm Git Install
Clones and (re)installs packages from remote git repos. See npm/npm#3055
Stars: ✭ 49 (-2%)
Mutual labels:  package
Flutter platform widgets
Target the specific design of Material for Android and Cupertino for iOS widgets through a common set of Platform aware widgets
Stars: ✭ 962 (+1824%)
Mutual labels:  package
Pyscaffold
🛠 Python project template generator with batteries included
Stars: ✭ 1,022 (+1944%)
Mutual labels:  package
React Native Markdown Package
React native markdown package is a Library for implementing markdown syntax in React Native
Stars: ✭ 50 (+0%)
Mutual labels:  package
Laravel Packager
A cli tool for creating Laravel packages
Stars: ✭ 1,049 (+1998%)
Mutual labels:  package
Nasa Cli
🚀 Download NASA Picture of the Day from your terminal!
Stars: ✭ 45 (-10%)
Mutual labels:  package

使用场景

为不同客户做定制化开发同一款app,功能相同,图片素材、显示的文字、配置和证书不同,每次人工替换素材和更换证书打包费时费力,所以使用python脚本实现自动化替换资源,自动化打包。

文件说明

Config.py    配置脚本

AutoPackage.py    自动化脚本

PrepareImagesTool.py    拷贝工程中的图片结构出来用来更换后准备替换

客户需要提供

1、app的中英文名字

2、服务器的ip地址

3、反馈邮箱

4、微信和QQ的分享Id,用于支持分享文件到微信和qq,需要到微信和qq开发者平台申请

5、到apple developer平台申请4个App Id并下载描述文件,如Config.y中所示

6、在mac电脑中导出p12文件

7、customization 文件夹中 Contents.json 描述大小和同名的图片素材,并放在对应目录下

功能流程说明

替换图片资源-->替换文字资源-->替换 group id-->替换微信和qq分享 id-->替换反馈邮箱-->设置服务器地址-->修改配置文件重新签名不同的scheme-->打包ipa

使用说明(ios开发者)

准备阶段

  • 执行$ python PrepareImagesTool.py,将工程中的图片拷贝到 customization 目录下,用于提供给客户提供定制化的图片

打包阶段

  • 1、安装pip

    • 安装命令:$ python get-pip.py
  • 2、安装Python虚拟环境virtualenv

    • $ sudo pip install virtualenv
  • 3、进入当前文件目录

    • 为一个工程创建一个虚拟环境

      $ virtualenv env

    • 激活虚拟环境

      $ source env/bin/activate

  • 4、安装所需Python包

     $ pip install -v Pillow==4.0.0   // 用于比较图片大小
     $ pip install -v pbxproj==2.0.5  // 用于处理xcode配置文件
     
    
  • 5、配置项目

    • 将图片放入 customization 文件夹下(按照目录结构)
    • 修改Config.py配置文件
  • 6、自动打包

    • 执行$ python AutoPackage.py
  • 7、打包好的文件保存在 history 目录下

参考

https://github.com/xx-li/iOSAutoPackaging

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].