2020年12月7日 星期一

Android Studio - 匯出 Android Debug APK 流程(七)

Android Studio - 匯出 Android Debug APK 流程(七):

一般在 Android 程式開發完成後,都會希望 Android 程式能夠分享給其他用家,所以需要將 APP 程式變成可供用家自行安裝的 APK 程式版本,而 Android Studio 可以匯出 APK(Debug / Release APK) 和上架發行 APK。

匯出 Android APK
  • 操作系統:Windows 7 64-bit 版本
  • 開發環境:Android Studio 4.0.1 版本
  • 原程式:C:\Development\Development_Android\Android_Project\HelloWorld
  • 程式:C:\Development\Development_Android\Android_Project\HelloWorld

除錯版 APK(Debug Version)與發行版 APK(Release Version)區別
Debug 通常稱為除錯版本,通過一系列編譯選項的配合,編譯的結果通常包含除錯資訊,而且不做任何優化,以為開發人員提供強大的應用程式除錯能力。 Release 通常稱為釋出版本,是為使用者使用的,一般客戶不允許在釋出版本上進行除錯。所以不儲存除錯信息,同時,它往往進行了各種優化,以期達到程式碼最小和速度最優。為使用者的使用提供便利。

(1) Debug 程式通常比 Release 程式要慢,尤其是處理視訊方便 Release 要比 debug 快很多。在 release 模式對程式進行除錯的時候,經常會遇到變數雖然初始化了,但是在檢視其值的時候,卻發現是一個隨的數並不是初始化的值,有時候在對變數進行監視的時候了,會出現找不到變數的情況。

(2) Debug 跟 Release 在初始化變數時所做的操作是不同的,Debug 是將每個位元組位都賦成 0xcc, 而 Release 的賦值近似於隨機。在宣告變數後馬上對其初始化一個預設的值是最簡單有效的辦法,否則專案大了你找都沒地方找。程式碼存在錯誤在 Debug 方式下可能會忽略而不被察覺到。debug 方式下陣列越界也大多不會出錯,在 Release 中就暴露出來了,這個找起來就比較難了。

(3) 只有 Debug 版的程式才能設定斷點、單步執行、使用 TRACE/ASSERT 等除錯輸出語句。Release 不包含任何除錯資訊,所以體積小、執行速度快。

Android APK 生成流程
匯出除錯版 APK 選擇 Build → Build Bundles(s) / APK(s) → Build APK(s),點選便可生成除錯版 APK,等待生成成功,可在模組目錄的 app/build/outputs/apk/debug 目錄下找到 app-debug.APK 的檔案,此檔案便是除錯版 APK。

選擇 Build →Build Bundles(s) / APK(s)→ Build APK(s)
生成除錯版 APK
模組目錄的 app/build/outputs/apk/debug 目錄下找到 app-debug.APK 的檔案
將 APK 下載到手機內,然後雙擊 APK 安裝,便可安裝程式在手機。

將 APK 下載到手機內
然後雙擊 APK 安裝,選擇使用 Package Installer
選擇 Install
Hello World 應用程式運行
Hello World 應用程式的 ICON
Unsigned APK(1987kB)在C:\Development\Development_Android\Android_Project\HelloWorld\app\build\outputs\apk\debug\ app-debug.apk

2020年 12月 7日 天氣報告
氣溫:1.0@ 08:00
相對濕度:百分之 61%
天氣:局部有雲

沒有留言:

張貼留言