0、show you the code
自动打包脚本代码见此,可以对照着看看下面的注解;
好用不要忘记加star哇
1、终端运行xcodebuild的时候:报错tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTool
原因:主要由于电脑中安装多个xcode的原因;
解决:sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
修改路径为经常使用的xcode.app的路径;
2、如果终端尝试直接执行xcrun或者xcodebuild命令;将工程的文件夹路径拖入终端,并非.xcodeproj路径
3.mac下创建.sh文件 touch ##.sh
运行.sh文件 chmod ##.sh
这个与主题无关,本来最开始打算用shell脚本写的
4 mac下执行.py文件
cd 到文件夹目录
在文件首行添加#!/usr/bin/env python
添加权限 chmod 777 filename.py
执行脚本./filename.py
python ./autoipa.py
5.发邮件模块
一切就绪之后,发邮件模块出现问题:报错:"socket.gaierror: [Errno 8] nodename nor servname provided, or not known"
想了下,是否是由于python没有发送邮件的模块,于是开始安装邮件发送模块:
1)、
pip search smtplib
可以看到这么多模块:
aiosmtplib (1.0.1) - asyncio SMTP client
easyemail (0.4.0) - Simple lib abstracting email sending with smtplib.
mailclient (0.2.0) - Simplified use of smtplib for Python. Easy email sending.
micropython-smtplib (0.0.1) - Dummy smtplib module for MicroPython
personal (0.1.1) - Easy, secure self notification via email and sms, using smtplib and twilio
PyEmail (0.0.1) - Python library to send emails using SMTPLIB library
secure-smtplib (0.1.1) - Secure SMTP subclasses for Python 2
smtplibaio (2.1.1) - An async version of smtplib
smtpssllib.py (2.4.4.1) - Modified version of smtplib supporting SSL
xsmtplib (1.0.0.dev1) - An extension of standard smtplib, which supports proxy tunneling
2)
sudo pip install PyEmail
结果:
Successfully installed PyEmail-0.0.1
然后再试试------结果依然错了;
继续看看错误
"socket.gaierror: [Errno 8] nodename nor servname provided, or not known"
可能是服务器名字错了么?果然,网上搜了下python发送qq邮件,
服务器是这样的"smtp.qq.com",而我想当然的写成了"mail.qq.com";然后搜了下163的,是这样的:"smtp.163.com";好吧;
3)依然不对---然后提示starttls错误,看了邮箱的配置,将端口从25设置到了587。然后加了一句话--
server.starttls()
终于可以上传了
6.多次遇到这个问题"Error Domain=IDEDistributionErrorDomain Code=14 "No applicable devices found." UserInfo={NSLocalized"
直接终端输入 :
rvm system
然后就好了
7.关于 server.login(from_addr, password)中的password,第一印象写上了自己的邮箱密码;意料之中的错了,需要去:邮箱--设置--帐号中开启SMTP服务,然后获取授权登录密码;
8 关于打包exportOptionsPlist中的teamID哪里获取?
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>teamID</key>
<string>UA11AAJJKK8</string> //TeamID
<key>method</key>
<string>ad-hoc</string> //ad-hoc打包
<key> compileBitcode</key> //是否编译bitcode
<false/>
</dict>
</plist>
我是无意间这么发现的:在https://developer.apple.com/中登录appleId,然后在开发者中心点击证书,此时查看URL就会发现
/Users/cdbqkj/Desktop/8D35C867-A71E-4A99-BEA9-17804E33395C.png
9.脚本使用
1).终端打开第一次使用此脚本的话先输入:
rvm system
或者遇到上面的"No applicable devices found."的时候输入
2). 定位到.py上级目录
cd /Users/cdbqkj/Desktop/ZX/ios/autoipa-master
3).
chmod /Users/cdbqkj/Desktop/ZX/ios/autoipa-master/autoipa.py
4).
python ./autoipa.py
10.尚待开发完善
1).qq企业邮箱的邮件发送问题:尝试了获取企业授权码,一直卡在邮件发送那里了
2).dysm文件的导出
3).你们来说bug