Android遊戲之LogCat調試日誌系統

Android遊戲之LogCat調試日誌系統

APP調試最常用是『斷點調試』(break).但如果想睇大量數據變化則力有不逮.可以通Log()不斷把數據輸出到LogCat窗口以此觀察數據變化.通過『View->Tool Windows->Logcat』顯示Logcat窗口.更可以通過濾器隨時顯示5種特定信息.

函式 顏色 簡介
Log.d(String tag, String msg); 藍色 代表debug調試
Log.v(String tag, String msg); 黑色 代表verbose囉嗦之意.一般信息輸出
Log.i(String tag, String msg); 綠色 代表information提示性消息
Log.w(String tag, String msg); 藍色 代表warning警告信息
Log.e(String tag, String msg); 紅色 代表error錯誤消息

 

Android遊戲之Activity模板

Android遊戲之Activity模板

Android是Linux系統.於其上運行APP都是Linux進程.Android APP沒有main入口函式.所以Android系統啟動APP時以Main Activity作為APP入口點.要理解Android APP運行需理解Activity生命週期.睇上圖左邊從Create到Destroyed完成整個生命週期.

Activity.onCreate():在創建時Activity加載界面並分配資源,如讀取音頻和3D模型.只會在啟動時被調用一次.

Activity.onStart():在onCreate()之後被調用或onRestart()之後調用

Activity.onRestart():用於重置Activity在onStop()之後被調用.

Activity.onResume():用於恢復(總會被調用)Activity在onStart()之後被調用或onPause()之後被調用

Activity.onPause():暫停(總會被調用).當Activity進入後臺時被調用

Activity.onStop():停止.當APP進入後臺時被調用.在onPause()之後調用.

Activity.onDestroy():銷毀.當APP退出時調用.若調用onPause()或onStop()之後onDestroy()將不會被調用.

為讓遊戲結構變得簡單.只需重寫onCreate()、onResume()和onPause()三個函式.下面是用於遊戲開發MainActivity.java模板

public class MainActivity extends Activity {

@Override

protected void onCreate(Bundle savedInstanceState) {

// 初此遊戲資源

super.onCreate(savedInstanceState); //創建Activity時調用

setContentView(R.layout.main); // 把佈局填充給Activity

}

@Override

protected void onResume() {

// 恢復遊戲線程

super.onResume();

}

@Override

protected void onPause() {

// 暫停遊戲線程

super.onPause();

}

}

當你生成MainActivity.java文檔後需要在AndroidManifest.xml文檔中聲明為入口Activity

<activity android:name=”.MainActivity” android:label=”@string/app_name”>

<intent-filter>

<action android:name=”android.intent.action.MAIN” />

<category android:name=”android.intent.category.LAUNCHER” />

</intent-filter>

</activity>

Android Studio啟動Android應用

Android Studio啟動Android應用Debug
Android Studio啟動Android應用Variableh
Android Studio啟動Android應用
Android Studio啟動Android應用ADB
Android Studio啟動Android應用ADB

創建Android應用項目需要在手機上啟動.

  1. 對項目進行編譯工具欄Build/Mak Project
  2. 將手機與電腦連接(USB線)
  3. 設定/更多設定/開發者選項
  4. 啟動『開啟開發人員選項』
  5. 啟動『USB調試』連接USB後啟用偵錯模式
  6. 啟動『USB安裝』允許通過USB安裝應用
  7. 啟動『USB調試』(安全設定)允許通過USB調試修改權限或虛擬觸碰
  8. 編輯配置文檔Run->Edit Configurations->app->General
  9. Module選app
  10. Deploy選Default APK
  11. Launch選Default Activity
  12. Target選USB Device
  13. 在手機上啟動工具欄Run->Run

 

未能正確在手機上調試APP多為ADB(Android Debug Bridge)未正確安裝

  1. 下載Android SDK Platform-Tools(包含EXE)
  2. 系統『Path』變數必須需正確設置. 『%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools;』
  3. 下載並正確安裝Google USB Driver.這點很重要很多時就是Android ADB Interface驅動無正確安裝.
  4. 『系統內容->硬體->裝置管理員->ADB Interface』若有嘆號則代表驅動未正確安裝
  5. 下載驅去頁Get the Google USB Driver 最新驅動Download the Google USB driver下載後解壓縮到D:\Android\usb_driver
  6. 最後強制安裝驅動.『系統內容->硬體->裝置管理員->ADB Interface->更新驅動程式->瀏覽電腦上驅動程式軟體(手動尋找並安裝驅動程式軟體)->讓我從電腦上裝置取動程式清單中挑選(此清單會顯示已安裝並且與裝置相容驅動程式軟體,以及與裝置屬￿同類別所有驅動程式軟體)->從磁片安裝->打開(USB drect)->選擇(Android ADB Interface)』

 

若ADB依然未能正確運行可嘗試手動重啟.win+r輸入CMD啟動命令行窗口

1.停止ADB服務

adb kill-server

2.啟動ADB服務

adb start-server

3.查看目前連接Android 設備

adb devices

Android Studio新建Android項目

Android Studio新建Android項目
Android Studio新建Android項目SDK
Android Studio新建Android項目Activity
Android Studio新建Android項目Build

Android Studio新建Project『項目』與Eclipse類似.下面將創建空項目用於遊戲製作.

  1. 啟動Android Studio
  2. 點擊Start a new Android Studio project
  3. Application name應用名使用全小寫如aa
  4. Company domain公司域名如net
  5. Project location工程目錄路徑D:\Android\aa
  6. Package name包名建議使用反向域名語法創建包名.『應用名+域名』以防Java類名衝突.按Edit輸入『bookcard.aa』
  7. 單擊NEXT選擇生成應用設備類型和SDK版本.設備類型有『手機』『平板』『穿戴設備』『電視』『汽車』『物聯網』
  8. 選擇Android SDK最新版本是API-28甘樣只有最新版本Android設備才能運行.而且Android向前(舊版本)兼容.所以你應儘量使用低版本SDK依度選擇API-14 Andorid4.0舊設備已經很難在市面見到.按Help me choose可查看Android各板本市場佔有率
  9. 安卓即時應用程序『Include Android Instant app support』無需勾選
  10. 單擊NEXT選擇模板.這裡選擇Empty Activity不含用戶界面只創建XML佈局
  11. 單擊NEXT生成主Activity文件.『Activity Name』填MainActivity 勾選『Generate Layout File』生成佈局文檔
  12. 『Layout Name』佈局名填main勾選Backwards Compatibility(AppCompat) 『向兼容』
  13. 最後單擊Finish生成Project

Android Studio導入Eclipse項目

Android Studio導入Eclipse項目
Android Studio導入Eclipse項目

雖然Eclipse ADT和Android Studio有不同目錄結構與配置.但可通過其自帶『Import Project』完成工程轉換

  1. 使用『Import Project(Gradle,Eclipse ADT,etc.)』導入Eclipse項目
  2. 選擇Eclipse項目目錄路徑『Select Eclipse or Gradle Project to Import』如G:\Android\aa
  3. 選擇導入目標目錄路徑『Import Destination Directory』如D:\Android\aa
  4. 若目錄不存在則生成『Directory Does Not Exist』
  5. 勾選Replace jars with dependencise,when possible『替換附屬jars』
  6. 勾選Replace library sources with dependencies,when possible『替換附屬Lib文檔』
  7. 勾選Create Gradle-style(camelCase)module names『創建漸變風格模塊名稱』
  8. 如果出現項目無法轉換 如properties Library reference .. could not be found只需要編輯project.properties刪掉無穩到Library即可
  9. 按Finish轉換項目

Android Studio下載與安裝

安裝JAVA
安裝Android Studio
安裝Android Studio
安裝Android Studio
Android Studio下載與安裝Path

以前開發Android遊戲一直使用Eclipse ADT插件進行.因為換左台新電腦覺得是時候轉入『Android Studio』懷抱.只因它是Google親生仔.而且已中止為Eclipse ADT插件和Android Ant編譯系統更新開發.而且Android Studio比起Eclipse啟動速度快很多(因為無需載入所有項目)

安裝JAVA

  1. 首先要下載Java SE(Standard Edition) Development Kit簡稱(JDK) 下載jdk-10.0.1_windows-x64_bin.exe(JDK10只有x64版本)
  2. 單擊開此安裝JDK,勾選『Public JRE』和『Development Tools』、『Source Code』
  3. 安裝路徑選擇默認即可C:\Program Files\Java\jdk-10.0.1\
  4. 為JAVA設定Windows環境路徑.按『Win + Pause Break』鍵打開『系統』/進階系統設定/環境變量/系統變數(S)/
  5. 按『新增』系統變數.『變數名稱』輸入JAVA_HOME『變數值』輸入JAVA安裝路徑『C:\Program Files\Java\jdk-10.0.1\』按『確定』保存
  6. 編輯『Path』系統變數追加『%JAVA_HOME%\bin;』 按『確定』保存

 

安裝Android Studio

  1. 打開下載 Android Studio頁面. Windows有x64安裝版android-studio-ide-173.4819257-windows.exe
  2. 單擊安裝Android Studio 並且確保電腦能連結互聯網.因為安裝過程需要下載所需文檔
  3. 構選Android Virtual Device
  4. 安裝路徑選擇默認即可C:\Program Files\Android\Android Studio
  5. 首次啟動會睇到Complete Installation對話框.因為是全新安裝勾選Do not import settings不導入設置
  6. 第一次啟動時若出現『Unable to access Android SDK add-on list』因為沒有安裝Android SDK.按Cancel後逐安裝
  7. 介面有Intellij和Darcula可選
  8. 勾選Android Virtual Device和Performance(Intel HAXM)HAXM是虛擬引擎加強運行x86 Android虛擬機表現
  9. 最後下載Android SDK完成安裝.要保正常連結com
  10. 為Android Studio設定Windows環境路徑.按『Win + Pause Break』鍵打開『系統』/進階系統設定/環境變量/系統變數(S)/
  11. 按『新增』系統變數.『變數名稱』輸入ANDROID_HOME『變數值』輸入Android SDK安裝路徑如『C:\Android\Sdk』. 按『確定』保存.如果你唔知SDK安裝路徑可同過『FILE->Other Settings->Default Project Structure->Android SDK location』睇到
  12. 編輯『Path』系統變數追加『%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools;』 按『確定』保存
  13. 啟動Android Studio
  14. 下載『SDK Tools』按『File->Settings->Android SDK->SDK Tools』
  15. 勾選Android SDK Build-Tools
  16. 勾選Android SDK Platform-Tools
  17. 勾選Android SDK Tools
  18. 勾選Google Play APK Expansion library
  19. 勾選Google Play Licensing library
  20. 勾選Google Play services
  21. 勾選Google USB Driver
  22. 勾選Google WEB Driver
  23. 按Apply自動下載安裝

 

若在手機上調試APP必須正確安裝ADB

  1. 下載Android SDK Platform-Tools
  2. 系統『path』變數必須需正確設置.
  3. 下載並正確安裝Google USB Driver.
  4. adb.exe devices 查看是否正確連接手機

 

 

小米MAX2

小米MAX2

台『小米2S』經常報空間不足,點刪APP都一樣.而且可部機跌過落地,影相經常花屏.是時侯要換個台手機.睇來睇去都是『小米MAX2』擁有『128GB固態硬盤』『4GB記憶體』先是1699紋.喂一不足時款式以落後.拿到手後想通過『一鍵換機』將電話簿『連絡人』移到『小米MAX2』點知按『我是新手機』WIFI馬上關閉.你需要重新『開啟WLAN』.後來通過『同步』『連絡人』,支持快充台機只是微微發熱.

 

Android桌面已鎖定

Android桌面已鎖定

近日台Android電話在刪除或移動APP時,彈出『桌面已鎖定』大驚難道中毒?細想之下應該是桌面被鎖定,通過下面設定即可修復

  1. 打開『設定』
  2. 打開『系統和設備/桌面與近期任務』
  3. 禁用『桌面佈局/鎖定桌面佈局』

小米電視4A人工智能語音55英寸小測

小米電視4A人工智能語音55英寸小測
小米電視4A人工智能語音55英寸小測

我老竇屋企台20年前29寸電視終於離開左我,需要穩一台質量性能都要過得去電視.鑒於LCD屏幕都是進口, 話買杂牌子也可了, 睇咗多個杂牌子RAM與硬盤都較小.唯有小米人工智能語音版有內存2GB硬盤32GB.在官網3599單價+200運費=3799元.但要20天內發貨.

於是與老竇去小米的專賣店梯下臺實機,雖然這台吾是無邊框設計但梯起來還可以.與是走去櫃檯問價格,報價2499單價+200運費=2699元.大驚以為店員搞錯細問之下,原來小米專賣店特權降價1100最後今晚,與老竇商量後馬上下單,8月27號晚落單8月30號下午送到,小米自有車所以無需經外面物流公司.

腳架與專賣店唔一樣在果度睇是一對叉,不過與官網上是一致.音頻輸出擴音機比較麻煩.手頭上無S/PDIF線,使用HDMI轉AV需要買轉換器,而藍牙大部分的功放都無這個接口.只能用個藍牙小音箱試左下.

清晰度要看最小矢量字體.而影片因為屏幕較大看分辯率細的效果吾會好,但如果片源分辯率高它的效果就可以梯出來.另外分辨率較高的片都要付費.較新都要VIP!暈…令外它帶有高頻頭可以自已裝條魚骨天線.

另外語音功能按住搖控器第二個按扭講話但意義不大

 

Android存儲空間不足

Android存儲空間不足
Android存儲空間不足

一般的Android存儲空間不足都是由於WebView的緩存和APP的下載的數據造成的,通過清理垃圾助手的工具一般可得到解決.但我遇到一個極端例子,把所有外加安裝的軟件刪除,在使用垃圾助手也會報存儲空間不足.它主要體現在果D使用WebView的應用無法打開圖片.後來我無意義之間得到修復.

  1. 設置/設備/應用/Google Play服務
  2. 結束運行
  3. 刪除

存儲空間不足的問題消失了.但我要警告.著是一個極端例子,而且此方法只適用於大陸被切割Google Play服務的Android手機,並且如造成系統的破壞與我無關.