Unity ios、android、pc一鍵打包(一)


                                                        Unity ios、android、pc一鍵打包

1 android平台

unity是直接打出apk,因此不需要有ios這么多繁瑣的操作,均在windows平台使用.bat命令進行一鍵打包即可,android平台由於我們會做一些代碼的熱更操作,需要把Assets目錄下的Resource(大部分),scripts進行剝離,因此我們要建立導出兩個工程。

1.1、 pack文件夾

大致格式如下 :

 

andorid:你的unity工程

.bat: 均是調用Unity或者VS命令的.bat代碼,一般Unity涉及到包資源,打熱更包等等均可放在這里。

PackDLL.bat :這是把你script里面的代碼打包成Assembly_CSharp.dll相當於平時Rebuild解決方案,這是android代碼做熱更用的,一下是一些簡單的打包DLL代碼

set localPath=%cd%

:找到注冊表的位置
for /f "delims=" %%i in{'REG.EXE QUERY "HKEY_CLASSES_ROOT\com.unity3d.kharma\DefaultIcon" /V3'} do set InstalllDir="%%i"
set InstalllDir =%InstalllDir:~22,-11%
echo Unity3d 安裝目錄:: %InstalllDir%

::unity里面的一些宏定義沒寫全,讀者可根據自己實際需求添加相應的宏
set defStr= "UNITY_4_6_4;UNITY_4_6;UNITY_64;UNITY_STANDALONE"

"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\MSbuild.exe" %~dp0./android/pc/UnityVS.pc.sln /m /t: Rebuild /P:Configuration=Debug /p:DefineConstant=%defStr%

::調用Unity Editor里面Command靜態方法
cd /d %InstalllDir%
Unity.exe -batchmode -projectPath %~dp0./android -executeMethod Command.PackDLL -quit

::svn命令
cd /d %InstalllDir%
TortoiseProc.exe /command:commit /path: "./android/Assets" /close

原理:均是通過.bat命令調用Unity里面的函數,以下就是調用Unity Command.PackDLL方法

Unity.exe -batchmode -projectPath %~dp0./android -executeMethod Command.PackDLL -quit

1.2、x1_publish文件夾

1 android文件夾 

工程需要把打包不需要的資源刪除掉,比如我們已經把script打包剝離掉,因此我們的script文件夾,還有Resources資源,保留下我們需要的一些version.cfg文件,Assets下的UnityVS也盡量刪除掉,要不打出來的apk里面會編譯有Assembly-CSharp.dll,游戲會優先加載這個dll就不會加載我們自身打包的dll.

2 .bat 文件

一般只會寫一些打整包的.bat文件

 

2. Unity的打包事項

2.1 多平台:由於代碼存在多個平台的配置,sdk等等,又分測試包和正式包,內容繁多,打包的時候需要注意,主要是幾個方面的東西 

Android sdk 和 Assets/Resources/cfg 文件,因此我們在工程目錄下建立SDKs文件夾,與Assets在同一目錄下。打整包的時候就可

利用.bat命令把相應平台的SDK拷入工程。

 

相應平台SDKS 可建立相應的文件夾比如UC:

2.2 具體的.bat文件可自己隨意操作,這里只是簡單的做一下通過.bat文件調用unity的方法,下次會講到unity里面具體的

熱更和依賴打包資源以及ios相應的打包方式。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM