androidbuilding
㈠ android makefile 將有空格的字元串賦給變數編譯報錯
想要了解一個系統,我常從makefile或是building system下手,以了解系統組成元素為何?目錄結構為何?對於Android,我也不例外。透過了解building system,我們能知道如何新增、修改、刪除程序,並保持其完整性,順利編譯出結果。
設置文件
Android building system 包括幾種重要的設置文件,
·
Android.mk
·
AndroidProcts.mk
·
target_-.mk, host_-.mk and -.mk
o
BoardConfig.mk
o
buildspec.mk
Android.mk 是 mole 和 package 的設置文件,每個 mole/package 的目錄下都會有一個 Android.mk。所謂的 mole 是指系統的 native code ,相對於用 java 寫成的 Android application 稱為 package。
AndroidProcts.mk 則設定 proct 配置。 proct 即特定系統版本,透過編譯不同 proct ,產生不同軟體配置內容,安裝不同的 application。 Proct 可視為特定項目,產生特定規格系統。
BoardConfig.mk 是為 proct 主板做設定,像是 driver 選擇、設定。*-.mk 則是針對選擇的操作系統和 CPU 架構,進行相關設定。
buildspec.mk 是位於 source 根目錄下,為進行編譯者所做之額外設定。例如,可在此選擇要產生的 proct 、平台、額外的mole/package 等。
參數
build/envsetup.sh 實作一個 mm 指令,以編譯單一 mole,不需編譯整個 source tree。ONE_SHOT_MAKEFILE 這個 makefile 變數/參數就是用以實作這個功能。使用方法是在執行 make 時,將該變數指定為 mole 的 Android.mk。
o
make ONE_SHOT_MAKEFILE=
透過定義 CREATE_MODULE_INFO_FILE , building system 會將所有 mole 信息列在 $(PRODUCT_OUT)/mole-info.txt 檔案里。
o
make CREATE_MODULE_INFO_FILE=true
設定 BUILD_TINY_ANDROID=true , building system 產生一個簡單的 image ,以測試硬體的可用度。此功能用於移植的早期階段,以快速 bring up 。
HOST_BUILD_TYPE 和 TARGET_BUILD_TYPE 指定 building system 產生 binary 的目的為 debug 或 release 。透過設定此二變數,能產生包含 debug information 的 binry 。
o
debug
o
release
這些參數,也可設於 buildspec.mk 里,以避免開發過程不斷的重新指定。
Goals
一般編輯整個 Android 系統,就是使用 droid 這個 goal。 droid 會產生一個完整的系統,包括 bootloader、kernel、系統程序、模塊和應用程序。
showcommands 和 droid 功能相同,但 droid 在編譯過程不顯示所使用的指令。透過 showcommands 這個 goal, building system顯示過程中每一個步驟的詳細指令。
Makefile 的流程
o
初始化相關變數
o
偵測編譯環境和目標環境
o
決定目標 proct
o
讀取 proct 的設定
o
讀取 proct 所指定之目標平台架構設定
§
選擇 toolchain
§
指定編譯參數 (*-.mk)
o
清除輸出目錄
o
設定/檢查版本編號
o
讀取所有 BoardConfig.mk 檔案
o
讀取所有 mole 的設定
o
根據設定,產生必需的 rule
o
產生 image
以上的主要流程都是由 build/core/main.mk 所安排。
初始化和偵測
由 build/core/config.mk 所進行。 build/core/envsetup.mk 檢查 developer 的設定 (buildspec.mk) ,並檢查執行環境,以決定輸出目錄、項目。
build/core/config.mk 本身還依據參數,決定解譯時的相關參數。像是 compiler 的路徑、flags, lex 、yacc 的路徑參數等。
關於 proct 的相關設定,則是由 build/core/proct_config.mk 所處理,使用 build/core/proct.mk 提供之 macro 載入。根據AndroidProct.mk 的內容, proct_config.mk 決定了
o
PRODUCT_TAGS
o
OTA_PUBLIC_KEYS
o
PRODUCT_POLICY
o
......
Proct 設定的讀取
Android proct 的設定來自於 build/target/proct/AndroidProct.mk 和 vendor 子目錄下的 AndroidProct.mk 。 building system透過 find 指令,找出所有可能的 AndroidProct.mk。 AndroidProct.mk 里定義 PRODUCT_MAKEFILES 變數,列舉所有實際定義 proct 的 makefile。這些 makefile 各自定義獨立的 proct 。proct 相關參數,存成 PRODUCTS. .形式的變數。並將makefile 路徑存在 PRODUCTS 變數。因此,透過 PRODUCTS 能取得所有的 proct 路徑/名稱,並透過 PRODUCTS. .形式的變數取得內容。
Mole 設定的讀取
Mole 是指 native code 的軟體組件,而 Java application 則被稱為 package。 build/core/definitions.mk 定義 mole/package 相關macro ,讀取、檢查 mole/package 定義檔;分散 source tree 各處的 Android.mk 檔案。 build/core/main.mk 使用 find 指令,在這些子目錄下找出所有 Android.mk ,並將路徑存在 subdir_makefiles 變數里。最後,include 這些檔案。
這些 Android.mk 會 include 定義成變數 BUILD_SHARED_LIBRARY 、BUILD_PACKAGE 等,和其目的相配的 makefile。這些makefile 會變 Android.mk 定義之內容,存成 ALL_MODULES. .mk>.形式。例如, Android.mk 定義了 LOCAL_MODULE_SUFFIX,變會存成 ALL_MODULES. .mk>.LOCAL_MODULE_SUFFIX 。而 Android.mk 路徑,當樣會存於 ALL_MODULES 變數里
㈡ Unity3D打包Android 錯誤。UnityException: Building DEX Failed!
這個問題一般是jdk的版本低了,解決方法為:
1、安裝最新版本就。
2、如果更新成1.7的話要注意了,要刪除:
C:/windows/system32下的:
java.exe
javaw.exe
javaws.exe三個文件。
4、如果安裝了最新版本的jdk還報此錯的話,應該是在打包android的jar時路徑錯了,又一次發現Classes目錄下除了com以外還有其他的文件,所以打包成jar時在unity裡面調用報這個錯誤,最後把com同目錄下的其他東西(有可能是.apk,resources.ap_,classes.dex或者其他的)都刪了再打包結果就OK了。
㈢ unity2018安卓apk怎麼導出build
熱門頻道
首頁
博客
研修院
VIP
APP
問答
下載
社區
推薦頻道
活動
招聘
專題
打開CSDN APP
Copyright © 1999-2020, CSDN.NET, All Rights Reserved
unity導出apk
打開APP
這絕對是你看過最簡單的 unity 安卓版導出 原創
2022-04-30 21:57:42
9點贊
溫柔哥`
碼齡2年
關注
前言
相信點進來的小夥伴和我之前一樣,都被 unity 安卓版導出的問題弄得很是沒有辦法對吧,不過現在你可以跟那些不好的心情說拜拜了,因為看完以下教程你就可以順利導出了!
廢話不多說了,接下里就帶你一步步的開始導出吧!
導出步驟
(溫馨提示:博主是使用 unity 2019.1.9f1 的版本做的演示,不過其他的版本基本上是相同的操作步驟,不要擔心。)
(建議:你的項目里不要有中文,否則可能會出錯)
1.首先呢,要確保你的 unity 是從官網上下載的,不然後面的操作你可能會卡住哦。(如果你的 unity 並不是從官網上下載的,那麼你可以從 unity hub 中將你這個 unity 卸載,然後去官網下載一個新的 unity,在這里博主給大家提供一個unity下載所有版本的官網,找不到的小夥伴直接點擊此鏈接去下載就好了)
unity下載所有版本的官網
icon-default.png?t=M3K6https://unity.cn/releases/full/2019
2.接下里就要看看你的 unity 安裝的時候有沒有選擇 unity 自帶的 Andriod Build Support、Android SDK & NDK Tools
2.1 打開unityhub
2.2點擊你使用的 unity 版本的後面那個小齒輪,選擇添加模塊
2.3查看下方圖片內的模塊你是否安裝,如果沒有,選中並且安裝到你的電腦上就可以了
3.進入 untiy,點擊 Edit 下的 Preference
4.在Preference 的External Tools中 將下面的幾個都選中
5.接下來點擊 File --> Build Settings
6.找到 Android,將 Development Build 選中,點擊Switch PlatForm按鈕,最後點擊左下角的 Player Settings...
7.選中 Player 面板,點開 Publishing Setting,點擊 Keystore Manager...
8. 點擊 Keystore...選中 Create New,我們選擇在指定的路徑下創建一個 Key,點擊In Dedicated Location...之後選擇你的任意磁碟上的任意路徑下,只要你能記得住就可以
9.Alias 是給你新建的 key 起一個別名,password 和 Confirm password 輸入相同的你想要設置的密碼,Organization 填上你組織的名稱,可以先隨便起一個,之後點擊右下角的 Add Key
10.點擊 Select...選擇你剛剛在指定的路徑創建的 key ,在兩個 password 後輸入你設置的密碼之後就可以了
11.最後回到 Build Settings 面板,點擊 Build 選擇一個路徑,起一個名字就大功告成了
12.最後等待一段時間把生成的 apk 文件通過 QQ 等方式發送到自己的手機安裝就可以了!
點擊閱讀全文
打開CSDN,閱讀體驗更佳
...Apk包環境配置_思月行雲的博客_unity導出安卓apk環境...
2.確保unity導出安卓的工具已安裝 這是未安裝的狀態,點擊Open Download Page按鈕下載安裝即可,安裝路徑與unity安裝路徑一致 3.在unity首選項設置中添加SDK和JDK的路徑 4.導出 導出時遇到下面的問題:Unable to list target platforms. 解決...
Unity5.6+ 導出Android 應用程序apk的環境配置及導出過程_sty945的博客...
在unity首選項設置中添加SDK和JDK的路徑 打開File->preference->External Tools進行設置 導出設置 注意:在build之前我們需要設置player setting 我們需要設置Package name 和company name 然後我們就可以bulid了apk了 ...
Unity 3D從安裝到導出APK終於成功了-----小白表示心太累!!!!!
Unity vuforia從安裝到導出apk全過程,花了好久時間,終於被我成功了!!!!!
繼續訪問
unity 3d 程序導出為安卓(.apk)的步驟
1)安裝sdk,打開管理器更新工具,有必要的話下載想要的安卓版本 2)配置環境變數(詳見下一篇《android SDK安裝》) 3)連接unity,edit--perferences--external tools 中選擇路徑,路徑中不要包括中文和空格 4)設置步驟,file-->build setting-->player setting, 更改company name和
繼續訪問
Unity2018導出Android工程並自行生成apk(總)_ivy_0709的博客-CSDN博 ...
本文講解的是使用unity導出android工程以後,對android工程做一些修改,使用gradle打包apk。 unity構建使用的api介面都是BuildPipeline.BuildPlayer——打包apk(導出android工程或者是直接生成apk),ios,pc最終都是調用的這個介面。
unity導出安卓apk環境配置_Annora-W的博客
unity導出安卓apk環境配置 1.首先下載並安裝安卓SDK和JAVAJDK: (1)安卓SDK下載地址(需要翻牆): https://developer.android.com/studio/index.html?hl=zh-cn 安裝時記住安裝路徑在哪,其他的按照默認就行...
最新發布 Unity 支持安卓12 TargetApiVersion31
Unity TargetApiVersion31 安卓12
繼續訪問
Unity3D如何導出為APP安裝包(安卓版apk)教程.zip_3Dhome安裝包
Unity3D如何導出為APP安裝包(安卓版apk)教程.zip
Unity3d項目導出成.apk
1.File-->Build Settings . 2.選擇導出的平台.android 3.設置公司名字,項目名字,Buddle Identifier 4,開始Build,這個過程中會讓你選擇sdk的安裝路徑,, .
繼續訪問
Unity導出安卓obb包以及使用(基礎APK+OBB)
#obb簡介 OBB(Opaque Binary Blob)文件格式,是安卓游戲通用數據包。在一些大型游戲上較為常見,同時還附以Data文件,亦或是md5.dat文件出現。通常在游戲開始前,程序會自動將obb解包至/sdcard/Android/data或者是/android/obb目錄下,但也有游戲不會解包,直接讀取。 #前言 游戲要上架谷歌商店 除了要接好谷歌SDK外,谷歌還要求提交商店的apk必須在100M以下,對於游戲來說幾乎都會大於100M,所以提交商店apk拆分成基礎apk(小於100
繼續訪問
Unity中導出apk文件
一、JDK下載與配置 JDK下載 配置環境變數 二、Android SDK下載 一、通過Android Studio下載 二、直接下載Android SDK 三、導出APK文件 四、注意事項
繼續訪問
Unity中實現導出安卓工程並發布APK
——將項目切換為安卓平台 ——勾選上Export Project ——導出工程到指定文件夾下(只能導出到文件夾里) ——使用Andorid Studio打開項目,點擊構建APK(根據項目是否有簽名選擇不同的打包選項),等待打包成功即可。 ...
繼續訪問
Unity導出Android工程
前言 一個Unity游戲,要打包成android apk,有兩種方式,一種是直接在Unity上編譯出apk;一種是Unity導出android 代碼,然後放到AndroidStudio工程編譯。第一種很簡單,本文不做展開,來聊一下第二種。本文基於Unity 2020.3.13f1c1版本來說明,不同的版本可能使用上稍微有點差異。 1 導出 首先,需要讓工程支持arm v7和arm v8兩種架構,否則在某些機型上,會運行失敗。 做法如下:File -> Build Settings,打開面板後,左下角的
繼續訪問
Unity 導出Android詳細教程
在Unity中利用網易做App開發時,發布項目文件需要發布到Android平台,遇到一些問題,看了網上的一些資料,踩了一些坑,現在總結出來,希望有相同的開發者遇到時可以規避。 第一步、安裝JDK; 第二步、安裝Eclipse; 第三步、下載並安裝AndroidSDK; 第四步、在Unity中發布到Android平台。 一、安裝JDK 1、官網:http://www.Oracle.com/techn...
繼續訪問
Unity導出apk出現的問題,JDK,Android SDK,NDK,無「安裝模塊」
導出apk失敗 使用unity導出apk文件,會出現提示:需要合適版本的JDK、Android SDK和Android NDK,要找到、下載和安裝好合適的版本非常耗費時間, 網上很多教程指出可以直接在Unity Hub中安裝模塊(如下圖所示): (圖源:https://www.bilibili.com/read/cv10235284) 沒有「安裝模塊」的選項 但是會出現自己的Unity Hub界面沒有「安裝模塊」的選項,此時可以點進下面的連接,點選與自己的unity版本對應Unity Hub:https:
繼續訪問
Unity場景導出GLTF格式的文件方法
最近需要在Unity中解析GLTF文件,以及能夠導出Unity的場景信息。經過查詢,最後決定使用UnitGLTF這個開源庫。 1、首選下載代碼,git clone https://github.com/KhronosGroup/UnityGLTF.git 2、打開UnityGLTF項目 3、打開項目之後,選擇Samples下面的一個場景,在Console有超多的錯誤信息。 Assets\UnityGLTF\Runtime\Scripts\Extensions\SchemaExtensio
繼續訪問
Unity模型製作導出規范
一、模型製作流程 素材採集-模型製作-貼圖製作-場景塌陷、命名、展UV坐標-燈光渲染測試-場景烘培-場景調整導出 二、模型製作規范 1. 單位、比例統一 在建模前先設置好單位,在同一場景中會用到的模型的單位設置必須一樣,模型與模型之間的比例要正確,和程序的導入單位一致,即便到程序需要縮放也可以統一調整縮放比例。統一單位為米(Meters)。 2. 模型坐標統一 所有獨立的模型,以坐標原點(0,0,0)為中心。沒有特定要求下,必須以物體對象中心為軸心。 3. 刪除場景中多餘的面,在建..
繼續訪問
Unity中的場景導出
Unity中的場景導出 1、點擊創建場景,並命名為NewScene,然後保存場景 2、在此場景中,點擊上不窗口中的Assets->Export package… 3、在彈出的對話框選擇需要一並導出的內容,然後點擊Export…
繼續訪問
Unity工程導出Android項目並集成到已有Android項目
前言:閱讀本文檔,默認已具備Unity開發經驗,以及Android開發基礎知識。此文不再講解Unity和Android Studio等工具使用細節,本文使用Unity2018.4.13f版本。 1.Unity導出Android項目 1.1 Unity導出關鍵配置以及步驟 圖1 Unity項目切換到Android平台,並且勾選Export Project。 ...
繼續訪問
熱門推薦 Unity 導出apk
1.保存你的Scenes 2.點擊Buid Settings... 3.點擊Add Open Scenes 4.點擊Android,並點擊Switch Platform,然後點擊Player Settings... (應該有自帶安卓SDK吧我也記不到了,如果行不通的話自己去網路怎麼配置android SDK,還挺麻煩的。。。) 5.點擊Resolution and...
繼續訪問
Unity3D導出Android工程(Android中應用Unity3D)
Unity個人版是免費的,可以去官網下載Unity Hub再下載Unity個人版。個人版功能足以滿足個人學習Unity需求,如果有商業用途最好下載專業版。需要先下載Unity Hub,以便後續下載Unity開發Android相關開發組件。 官方下載地址通過Unity Hub新建一個空的3D工程 導入3D模型: 選擇Project面板中的Assert->右鍵Import New Asset->選擇要導入的模型文件(fbx、obj、3ds等格式皆可)。導入成功後即可將3D模型拖拽到場景中。 場景Scene操作
繼續訪問
Unity3D-導出特效到安卓項目流程
本文將針對將 Unity 的項目導出到 Android 平台的步驟進行一個總結。 首先點擊File-Building Settings,打開配置面板: 打開面板後,切換Android欄,准備導出項目,如果是第一次導出,那麼Unity沒有找到對應的開發環境配置,提示需要下載,以iOS為例: 在 Unity Hub 上,需要手動指定下載的依賴,包括Android SDK 和 NDK, 下載安裝完成後,需重啟Unity,再回到配置面板,此時已經可用了: 主面板提供了一些基礎的配置,其中最重要的是Export
繼續訪問
Unity導出安卓項目坑點
Unity 導出安卓工程,使用 Android Studio 打開時間太長了
繼續訪問
unity導出apk
android
c#
寫評論
23
43
9
踩
分享
前往CSDN APP閱讀全文
閱讀體驗更佳
CSDN
成就一億技術人
前往
Chrome瀏覽器
繼續
打開CSDN APP閱讀體驗更佳
㈣ android studio 怎麼導入工程
1首先,進入到安裝好路徑中,進入到bin的目錄下,可以找到一個為studio.exe的應用程序。
進入到Android studio的開發界面中,點擊菜單的中「file」的選項。
2在彈出下拉的菜單中,可以看到是為import project的選項,點擊進入。
進入到select your eclipse project folder,build gradle or settings.gradle中瀏覽電腦文件,3找到Android的項目並選中,點擊「ok」。
4在building 「」gradle project info,根據Android的項目的大小,需要等待一段時間。
這樣Android的項目就這樣直接導入到Android studio開發軟體工具中,這樣就可以進行編輯項目了。
㈤ unity 在電腦顯示是好的 building安卓之後 貼圖丟失 是什麼問題
電腦系統丟失的解決辦法就是重新做系統,可以按照以下的步驟進行:
1.下載winpe製作軟體(這里用大白菜做例子):
目前下載uefi版本最好。考慮最新機器會有ssd固態硬碟,這種就要考慮這個版本,兼容性更強。
2.准備一個u盤進行做winpe系統的空間(u盤最好4G以上,考慮系統鏡像文件比較大):
3.3.點擊打開下載並且安裝好的大白菜UEFI版u盤製作工具。這里要選擇zip-fat32的模式,兼容ssd硬碟進入winpe問題。如下圖所示
4.去官網下一個GHO鏡像文件,根據自己想要的系統下載鏡像文件,一般win764位較為常見。如圖
5.將下載好的鏡像導入u盤,插入做好的u盤進入winpe,按照自己不同品牌電腦,進入快速啟動,一般為F12進入,開機按F12,出現下面的界面:
6.選擇win8pe x 64之後,進入winpe桌面,系統自動彈出下面界面,如圖:
7.這個時候只要是選中的c盤分區,文件路徑也有你下載的gho文件,這個時候點擊確定即可。之後的界面是這樣的:
8.之後就等待安裝完成即可,如圖:
㈥ android building make出錯,怎樣還原重新編譯
make遇到缺什麼就安裝什麼
/usr/bin/ld: cannot find -lz
host Executable: aapt (out/host/linux-x86/obj/EXECUTABLES/aapt_intermediates/aapt)
/usr/bin/ld: cannot find -lz
collect2: ld returned 1 exit status
make: *** [out/host/linux-x86/obj/EXECUTABLES/aapt_intermediates/aapt] Error 1
解決方法: sudo apt-get install zlib1g-dev sudo apt-get install lib64z1-dev
/bin/bash: bison: command not found
Yacc: aidl <= frameworks/base/tools/aidl/aidl_language_y.y
bison -d -o out/host/linux-x86/obj/EXECUTABLES/aidl_intermediates/aidl_language_y.cpp frameworks/base/tools/aidl/aidl_language_y.y
/bin/bash: bison: command not found
make: *** [out/host/linux-x86/obj/EXECUTABLES/aidl_intermediates/aidl_language_y.cpp] Error 127
解決方法:sudo apt-get install bison
/bin/bash: flex: command not found
out/host/linux-x86/obj/EXECUTABLES/aidl_intermediates/aidl_language_y.cpp: In function 『int yyparse()』:
out/host/linux-x86/obj/EXECUTABLES/aidl_intermediates/aidl_language_y.cpp:1827: warning: deprecated conversion from string constant to 『char*』
out/host/linux-x86/obj/EXECUTABLES/aidl_intermediates/aidl_language_y.cpp:1970: warning: deprecated conversion from string constant to 『char*』
Lex: aidl <= frameworks/base/tools/aidl/aidl_language_l.l
/bin/bash: flex: command not found
make: *** [out/host/linux-x86/obj/EXECUTABLES/aidl_intermediates/aidl_language_l.cpp] Error 127
解決方法: sudo apt-get install flex
/usr/bin/ld: cannot find -lncurses
host Executable: adb (out/host/linux-x86/obj/EXECUTABLES/adb_intermediates/adb)
/usr/bin/ld: cannot find -lncurses
collect2: ld returned 1 exit status
make: *** [out/host/linux-x86/obj/EXECUTABLES/adb_intermediates/adb] Error 1
解決方法:sudo apt-get install libncurses5-dev
fatal error: GL/glx.h: No such file or directory
development/tools/emulator/opengl/host/libs/Translator/GLcommon/GLDispatch.cpp:22: fatal error: GL/glx.h: No such file or directory
compilation terminated.
make: *** [out/host/linux-x86/obj/STATIC_LIBRARIES/libGLcommon_intermediates/GLDispatch.o] Error 1
解決方法:sudo apt-get install libgl1-mesa-dev
sh: gperf: not found
target Generated: libwebcore <= external/webkit/Source/JavaScriptCore/create_regex_tables
Generating CSSPropertyNames.h <= CSSPropertyNames.in
sh: gperf: not found
calling gperf failed: 32512 at ./makeprop.pl line 140.
make: *** [out/target/proct/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebCore/css/CSSPropertyNames.h] Error 25
make: *** Deleting file `out/target/proct/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebCore/css/CSSPropertyNames.h'
解決方法:sudo apt-get install gperf
上述安裝,可以用一條命令完成:
sudo apt-get install git-core gnupg flex bison gperf build-essential \
zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
libgl1-mesa-dev g++-multilib mingw32 openjdk-6-jdk tofrodos \
python-markdown libxml2-utils xsltproc zlib1g-dev:i386
sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
㈦ android studio 創建項目一直停留在building gradle project info
沒有比它更爛的開發工具了,有了eclipse為什麼google還要開發這么爛的工具來,開發就好了,為什麼還沒完善就發布出來,沒完善就發布出來就算了,為什麼發布這么久還是這么爛?!第一次建一個工程在載入布局文件的時候打不開,設置sdk之後死掉。升級之後,新建工程,直接卡死,到你說這個界面來了,原來還有這么多的前輩遇到一樣的問題,可笑的studio。。。。。。
㈧ android studio 為什麼一直在building
應該是你的Android studio升級之後,grandle版本不一樣,改一下試試