生成*.air包

公司的老項目,用了老技術:Adobe flex,SDK 3.4。IDE工具用Flash Builder4.6.前幾天業務人員反映之前的*.air包無法安裝,報錯如下:

隨即準備重新打包,之前程序員交接的在Flash Builder中打包的方法如下:

“項目”-->“導出發行版”-->瀏覽指定“導出到文件夾”,導出爲“已簽名的AIR包”-->“下一步”-->“數字簽名”-->證書“創建”,來創建*.p12證書-->輸入證書密碼,勾選“時間戳”,點擊“完成”

經網上查詢,原因可參考:https://my.oschina.net/return/blog/1631031,考慮用adt命令打包,首先在系統“環境變量”添加adt所在的路徑,否則會報“adt不是內部命令......”

接下來,開始一路採坑

D:\codes\flexCode\Air>adt -package -storetype pkcs12 -keystore mylock.p12 my-air.air Air-app.xml .
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8
password:
D:\codes\flexCode\Air\Air-app.xml: error 301: Application descriptor missing/cannot be opened

上述報錯是因爲adt命令應該在Air-app.xml目錄下運行

D:\codes\flexCode\Air>adt -package -storetype pkcs12 -keystore mylock.p12 dz-air.air /codes/flexCode/Air/bin-debug/Air-app.xml .
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8
password:
D:\codes\flexCode\Air\bin-debug\Air-app.xml: error 102: Invalid namespace http://ns.adobe.com/air/application/2.0

102錯誤說的是Air-app.xml的問題,查看adt版本,修改Air-app.xml版本爲1.5

Air-app.xml頭部
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<application xmlns="http://ns.adobe.com/air/application/1.5">

dos窗口查看adt版本
D:\codes\flexCode\Air\bin-debug>adt -version
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8
adt version "1.5.3.9120"

重新打包,語句中“-tsa http://...”是生成時間戳的,不可少。在dos命令當前所在的文件夾下可以看到成功生成myAir.air安裝包

D:\codes\flexCode\Air\bin-debug>adt -package -storetype pkcs12 -keystore mylock.p12 -tsa http://tsa.starfieldtech.com  myAir.air Air-app.xml .
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8
password:

D:\codes\flexCode\Air\bin-debug>

將命令寫成bat命令文件,可以參考:https://my.oschina.net/return/blog/1631031

上述打包命令裏沒有添加*.p12的密碼,所以每次執行.bat文件還需要在dos窗口輸入密碼,可以對上述打包命令做如下修改

goto start
:start
D:
CD \codes\flexCode\Air\bin-debug
adt -package -storetype pkcs12 -keystore myLock.p12 -storepass 123456 -tsa http://tsa.starfieldtech.com  myAir.air Air-app.xml .
exit

adt打包命令官方文檔:https://help.adobe.com/en_US/air/build/WS901d38e593cd1bac1e63e3d128cdca935b-8000.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章