NOSDK 一鍵打包的實現(三)

2022-09-16 21:09:17 字數 2982 閱讀 5365

1.3 編譯及拷貝資源的指令碼介紹

這一節介紹編譯及拷貝資源的shell指令碼,即:

這兩個指令碼都是cocos2d-x自帶的指令碼,這裡我們會簡單介紹下指令的功能,還有我們修改過的一些地方。

"org.nosdk.main

"sdk_root="

$home/documents/program/android-sdk-macosx

"ndk_root="

$home/documents/program/android-ndk-r9d

"# options

buildexternalsfromsource=usage()

while getopts "

sh" option; do

case

"$option"in

s)buildexternalsfromsource=1

;;h)

usage

exit 0;;

esac

done

# paths

if [ -z "$"

];then

echo

"please define ndk_root

"exit 1fi

dir="

$( cd

"$( dirname "

$" )"

&& pwd )

"# ... use paths relative to current directory

cocos2dx_root="

$dir/../../..

"$dir/..

"$dir

"echo

"ndk_root = $ndk_root

"echo

"cocos2dx_root = $cocos2dx_root

"echo ""

echo ""

echo

"#############################

"echo "$*

"if [[ "

$buildexternalsfromsource

"]]; then

echo

"building external dependencies from source""

$ndk_root

"/ndk-build -j4 -c ""\

"ndk_module_path=$:$/cocos2dx/platform/third_party/android/source

"else

echo

"using prebuilt externals""

$ndk_root

"/ndk-build -j4 -c ""\

"ndk_module_path=$:$/cocos2dx/platform/third_party/android/prebuilt"fi

if [ -d "

"/backup/libs ]; then

cp -r "

"/backup/libs/ "

"/libs/fi

接下來我們看下資源拷貝的指令碼,這個指令碼按照功能同樣劃分為五個部分,其中一二三部分的功能和上乙個指令碼的相同,我們就不贅述了,第四部分是從resources目錄中拷貝資源到assets目錄中(會先刪除assets目錄,這也是建立backup資料夾的原因),如果我們想要排除一些資源檔案(比如只有ios需要的 icon資源)可以改這裡的**,排除一些資料夾;第五部分是拷貝sdk自帶的資源(backup裡的assets目錄中的內容)到assets目錄中, 後面會考慮將這幾行**換個位置。

mygame

"org.nosdk.main

"sdk_root="

$home/downloads/android-sdk-macosx

"ndk_root="

$home/downloads/android-ndk-r8d

"# options

buildexternalsfromsource=usage()

while getopts "

sh" option; do

case

"$option"in

s)buildexternalsfromsource=1

;;h)

usage

exit 0;;

esac

done

# paths

if [ -z "$"

];then

echo

"please define ndk_root

"exit 1fi

dir="

$( cd

"$( dirname "

$" )"

&& pwd )

"# ... use paths relative to current directory

cocos2dx_root="

$dir/../libs

"$dir/..

"$dir

"echo

"ndk_root = $ndk_root

"echo

"cocos2dx_root = $cocos2dx_root

"echo ""

echo ""

# make sure assets

i***ist

if [ -d "

"/assets ]; then

rm -rf "

"/assets

fimkdir

""/assets

# copy resources

for file in

""/resources/*

doif [ -d "$file" ]; then

fiif [ -f "$file" ]; then

fidone

fi##刪除無用檔案

講到這裡這一節就結束了,下一節我們介紹自動打包及簽名的指令碼。

ant 一鍵打包

1.檢視當前android各版本命令 android list 2.更新專案命令 android update project n projectname t 1 p projectpath 3.設定私鑰庫的方法是,在ant.properties檔案中,新增如下內容 key.store key.st...

iOS 一鍵打包發布fir

前言 在日常開發的過程中,有時候需要頻繁的打包,特別是當專案開發改了乙個小bug也需要重新打包安裝,會比較慢,浪費時間與效率,曾經遇到線上線下問題不一致排除的時候需要頻繁發布。電腦卡頓的時候,解決問題一分鐘,打包就一小時。所以一件發布很有必要 特別說明 如果專案沒有採用cocoapodsa管理,沒有...

iOS 一鍵打包上傳Automator shell

資料夾buildscript 我這裡在工程 demo 根目錄下新建了乙個buildscript資料夾用來存放 資料夾autobuild 這個檔案會在執行指令碼後自動生成,用來存放 檢視功能引數介紹命令 man xcodebuild 檢視targets,scheme命令 xcodebuild list...