UnityスクリプトパッケージとJenkinsパッケージ
6868 ワード
まず、すべての環境とパラメータが構成されていると仮定します.
一般パッケージ:Unity->File->Building Settings->Buildボタンをクリックします.
スクリプトパッケージング:Unityを開く必要はなく、スクリプトによってBuildボタンを手動でクリックする操作を完了します.
Jenkinsパッケージング:エンジニアリングを導入したコンピュータ上で操作する必要はなく、Webにアクセスしたり、自動パッケージングコマンドを設定したりしてパッケージングスクリプトを実行します.
Unityはコマンドラインパッケージのインタフェースを提供し、Mac上でアンドロイドスクリプトをパッケージ化するのは以下の通りである.
このうちBuildAndroidはBatchmodeである.csの中の1つの静的な方法で、中の最も重要な方法は
スクリプトはiOSをパッケージ化し、2つのステップに分けられます.最初のステップはアンドロイドパッケージに似ていますが、Xcodeエンジニアリングが生成されます.第2歩はXcodeプロジェクトをipaにパッケージ化することです.(個人無料アカウントはipaを生成できず、申請開発者アカウントを購入する必要がある)
iOSパッケージスクリプトは次のとおりです.
ipa_build.sh
一般的なリリースは1台のマシンでのみ行われ、パッケージごとにコンピュータでスクリプトをダブルクリックしてパッケージすることはできません.この場合、Jenkinsを使用してパッケージ環境を構築することができます.簡単に言えば、JenkinsはWebアクセスを通じて、上記のパッケージスクリプトを実行することを実現しました.
Jenkinsは豊富なグラフィック構築プラットフォームです.スクリプトコマンドツール(bat、shell、perl、python、antなど)、コード管理ツール(svn cvsなど)、アカウント権限管理など千以上の補助プラグインを提供します.ソフトウェアの継続的な統合ワークフローを完璧にサポートします.
Jenkinsを使用してUnityパッケージを作成するメリット:1.Webページでパッケージングコマンドを実行するのは便利です.毎晩12時にパッケージ3を自動的に構築します.パッケージ結果通知は、プラグインのサポートが豊富なため、メールQQ群などに送信できます.
Jenkins公式サイトhttps://jenkins.io/ああ、具体的な案はここでは展開しません.
間違いがあれば、指摘を歓迎します.
email:dxmdxm1992#gmail.com
blog: http://blog.csdn.net/david_dai_1108
一般パッケージ:Unity->File->Building Settings->Buildボタンをクリックします.
スクリプトパッケージング:Unityを開く必要はなく、スクリプトによってBuildボタンを手動でクリックする操作を完了します.
Jenkinsパッケージング:エンジニアリングを導入したコンピュータ上で操作する必要はなく、Webにアクセスしたり、自動パッケージングコマンドを設定したりしてパッケージングスクリプトを実行します.
スクリプトパッケージapk
Unityはコマンドラインパッケージのインタフェースを提供し、Mac上でアンドロイドスクリプトをパッケージ化するのは以下の通りである.
#!/bin/sh
# unity app path
UNITY_PATH=/Applications/Unity/Unity.app/Contents/MacOS/Unity
# project path
PROJ_PATH=/Users/David/Proj/UnityAutoBuild/AutoBuild
echo "============== Unity Build APK Begin =============="
$UNITY_PATH -projectPath $PROJ_PATH -executeMethod Batchmode.BuildAndroid -logFile $PROJ_PATH/android/Android.log -batchMode -quit
echo "============== Unity Build APK Finish =============="
このうちBuildAndroidはBatchmodeである.csの中の1つの静的な方法で、中の最も重要な方法は
foreach (EditorBuildSettingsScene scene in EditorBuildSettings.scenes)
{
if (!scene.enabled) continue;
levels.Add(scene.path);
}
string res = BuildPipeline.BuildPlayer(levels.ToArray(), "TestAutoBuild.apk", BuildTarget.Android, BuildOptions.None);
スクリプトパッケージiOS
スクリプトはiOSをパッケージ化し、2つのステップに分けられます.最初のステップはアンドロイドパッケージに似ていますが、Xcodeエンジニアリングが生成されます.第2歩はXcodeプロジェクトをipaにパッケージ化することです.(個人無料アカウントはipaを生成できず、申請開発者アカウントを購入する必要がある)
iOSパッケージスクリプトは次のとおりです.
#!/bin/sh
# unity app path
UNITY_PATH=/Applications/Unity/Unity.app/Contents/MacOS/Unity
# project path
PROJECT_PATH=/Users/David/Workspace/Proj/UnityAutoBuild/AutoBuild
#IOS #
BUILD_IOS_PATH=${PROJECT_PATH}/iOS/ipa_build.sh
# Xcode #
XCODE_PATH=iOS/XCode
XCODE_TRUE_PATH=${PROJECT_PATH}/${XCODE_PATH}
# ipa #
IPA_PATH=ipa
# unity xcode #
echo "============== Unity Build XCode Project Begin =============="
$UNITY_PATH -projectPath $PROJECT_PATH -executeMethod Batchmode.BuildiOS project-$XCODE_PATH -quit
echo "============== Unity Build XCode Project Finish =============="
# ipa#
echo "============== Unity Build IPA Begin =============="
echo $XCODE_TRUE_PATH
echo $IPA_PATH
echo $BUILD_IOS_PATH
$BUILD_IOS_PATH $XCODE_TRUE_PATH $IPA_PATH
echo "============== Unity Build IPA Finish =============="
ipa_build.sh
#!/bin/sh
#
if [ $# != 2 ];then
echo "Need two params: 1.path of project 2.name of ipa file"
exit
elif [ ! -d $1 ];then
echo "The first param is not a dictionary."
exit
fi
#
xcode_project_path=$1
# IPA
ipa_name=$2
# build
build_path=${xcode_project_path}/build
archive_path=${build_path}/Archive/AutoBuild.xcarchive
# #
xcodebuild clean
#
cd $xcode_project_path
xcodebuild || exit
xcodebuild archive \
-project ${xcode_project_path}/Unity-iPhone.xcodeproj \
-scheme Unity-iPhone \
-configuration "Release" \
-archivePath ${archive_path}
xcodebuild -exportArchive \
-exportOptionsPlist ${xcode_project_path}/info.plist \
-archivePath ${archive_path} \
-exportPath ${xcode_project_path}
Jenkinsパッケージ:
一般的なリリースは1台のマシンでのみ行われ、パッケージごとにコンピュータでスクリプトをダブルクリックしてパッケージすることはできません.この場合、Jenkinsを使用してパッケージ環境を構築することができます.簡単に言えば、JenkinsはWebアクセスを通じて、上記のパッケージスクリプトを実行することを実現しました.
Jenkinsは豊富なグラフィック構築プラットフォームです.スクリプトコマンドツール(bat、shell、perl、python、antなど)、コード管理ツール(svn cvsなど)、アカウント権限管理など千以上の補助プラグインを提供します.ソフトウェアの継続的な統合ワークフローを完璧にサポートします.
Jenkinsを使用してUnityパッケージを作成するメリット:1.Webページでパッケージングコマンドを実行するのは便利です.毎晩12時にパッケージ3を自動的に構築します.パッケージ結果通知は、プラグインのサポートが豊富なため、メールQQ群などに送信できます.
Jenkins公式サイトhttps://jenkins.io/ああ、具体的な案はここでは展開しません.
間違いがあれば、指摘を歓迎します.
email:dxmdxm1992#gmail.com
blog: http://blog.csdn.net/david_dai_1108