顯示具有 ADT 標籤的文章。 顯示所有文章
顯示具有 ADT 標籤的文章。 顯示所有文章

2015年8月25日 星期二

如何透過 adb command 取得Android CPU 資訊

        將手機連上電腦後在 console Mode 下執行 "adb shell cat /proc/cpuinfo" 即可得到如下訊息,如果手機是四核心則會出現四次一樣的訊息。

~$ adb shell cat /proc/cpuinfo

processor : 0
vendor_id : GenuineIntel
cpu family : 6
model  : 90
model name : Intel(R) Atom(TM) CPU  Z3560  @ 1.00GHz
stepping : 0
microcode : 0x34
cpu MHz  : 500.000
cache size : 1024 KB
physical id : 0
siblings : 4
core id  : 0
cpu cores : 4
apicid  : 0
initial apicid : 0
fpu  : yes
fpu_exception : yes
cpuid level : 11
wp  : yes
flags  : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes rdrand lahf_lm 3dnowprefetch ida arat epb dtherm tpr_shadow vnmi flexpriority ept vpid tsc_adjust smep erms

[參考鏈結]

2014年10月4日 星期六

建立使用者自訂的 Android 裝置

        當透過 Android Virtual Device (AVD) Manager 建立 AVD 時,Device 只能選擇已內建好的裝置,如下圖所示:

        當這些內建裝置的解析度與硬體設定剛好符合你的需求時並沒有任何問題,但如果想要不一樣的設定;如解析度、記憶體大小、Keyboard...等等。這時你就必須自己制訂符合需求的 Android Device,建立的步驟如下:

  1. 開啟  Android Virtual Device (AVD) Manager 切換到 Device Definitions,選擇一個與你需求最接近的 Device後,按 Clone 按鈕,如下圖所示:(PS: 使用 ADT 23.0.4.1468518 按 Create Device... 按鈕並無法成功建立使用者自訂裝置)。

  2. 在 Clone Device 畫面,填入你所需的設定值,如下圖所示:

  3. 建立完成後,你會在 Device 清單畫面中看到你剛剛所定義的裝置,往後你就可以建立你剛剛所自訂的 Android 虛擬裝置。

        當你建立完自訂的 Android 裝置後,你可以在 ~/.android/devices.xml 檔案中找到你剛剛所建立的資訊。

2013年12月2日 星期一

修改 Android Emulator 的 Abstracted LCD density

      如果你用 ADT 來編輯目前 AVD 的 Abstracted LCD density 值時,你會發現在 Hardware 欄位那邊你只能下拉選擇數值而不能填入你想要的值,如下圖所示:
    注意:因為這個 AVD 我是用舊版的 ADT 所產生的,所以還看的到Hardware 的屬性設定。新版的,你可以在 Device Definitions 頁面,按 【New Device...】在新增裝置時設定,但我找不到可以設定 LCD density的數值,它似乎會根據你所設定螢幕解析度的是屬於 ldpi 或者 mdpi 來填入預設的數值。不過修改 LCD density 的方式是一樣的。

     從上圖你可以看到只有 120 、160、240...等數值可以選擇,而且你無法修改。修改的方式是到你的 .android 目錄下找到 AVD 資料夾,然後開啟 config.ini 檔案,修改 【hw.lcd.density】的數值即可。如下圖所示:


2013年6月26日 星期三

解決 Export Signed Application Package... 出現 " ... is not translated in ..." 的問題

    今天想嘗試執行 Export Signed Application Package...時,出現  "... is not translated in..."的 Fatal Error,如下圖所示:

    而其實引起這個問題的原因與解法就寫在右邊的訊息視窗中,可以參考上面的圖示。而下面是我自己驗證過確實可以解決這個問題。

解法 一:
    執行 Window -> Preferences,點選 Android -> Lint Error Checking,
    將 Lint 的 Missing Translation 項目從 Fatal 改為 Warning. 如下圖所示:
   

解法 二:
     將 translatable="false" 加入倒出現錯誤訊息的字串中,如下圖所示:



[關鍵字]
Android is not translated in 

[參考鏈結]



如何新增 Android XML 檔案

      在很多時候我們需要自己新增 Android XML 檔案,例如要支援多國語言、針對不同的螢幕大小、或者螢幕操作的方向 (port直向 / land 橫向)...等等的替代選擇性資源內容。
      透過 ADT 的工具我們可以很簡單的建立新的 Android XML 檔案,方法如下:

1. 點選工具列的按鈕,如下圖所示:

2. 選擇要加入的資源型態:

3. 填入檔案名稱,這邊我們不需要填入副檔名,當建立後 ADT 會幫我加入。另外如果要建立替代選擇性資源,可按下圖的 Next 按鈕繼續設定裝置設定屬性。否則,直接按 Finish 即可在預設的資料夾(如: layout、value、drawable...etc. )內產生該檔案。

1-2. 如果不點選工具列的按鈕,也可以透過點選專案,右鍵-> Android Tools -> New Resources File... 來叫出 步驟 2 的新增 Android XML 對話框。


1-3. 步驟 2 的新增 Android XML 對話框的方式也可以透過點選專案,右鍵-> New-> Android XML File 來執行。

    另外,如果你想要新增的是翻譯,則可以透過 Android Graphical Layout 來快速產生簡單的替代選擇性資源資料夾 (只能設定 Language 與 Region,無法設定其他條件 如 ldpi/mdpi 或者 port/land...etc.)與空的 strings.xml 檔案,實際做法請參考下圖:





2013年6月12日 星期三

解決 Android Emulator 無法啟動的問題

      今天想要透過 Android Virtual Device Manager 啟動 AVD,但是啟動的過程發生警告的訊息如下:
       Starting emulator for AVD 'Android_4.0.3'
       WARNING: Data partition already in use. Changes will not persist!
       WARNING: SD Card image already in use: C:\Documents and    
       Settings\Josh\.android\avd\Android_4.0.3.avd/sdcard.img
       ko:Snapshot storage already in use: C:\Documents and
       Settings\Josh\.android\avd\Android_4.0.3.avd/snapshots.img
或者參考下圖

上網查了一些資料,也嘗試了一些方法但是目前唯一有效的就是在 "Using Eclipse for androidSDK, when I go to run, I get WARNING: Data partition already in use. Changes will not persist!" 看到的解決方法,就是刪除在 .android\avd\[your_device].avd 資料夾底下的所有
XXX.XXX.lock 的資料夾,請參考下面圖檔。 刪除後,模擬器終於又恢復作用囉。


2013年6月8日 星期六

ADT 設定 Preview All Screens 與 All Locales 查看所有Layout 與 語言的效果

        當我們要開發多國語言或者給多個不同螢幕大小裝置的 App 時,我們可以先透過 設定 Preview All Locales 與 Preview All Screens 來查看其顯示的效果。設定後的結果請參考下面的圖示。


移除 [Accessibility] Missing contentDescription attribute on image 的警告

       不知何時加入 ImageView 時 Eclipse 在編輯 XML 視窗或者 Graphical Layout 視窗都會出現 Lint 的警告提示,如下圖:

       該警告是從 ATD 16 以後當你沒有設定 contentDescription 屬性給  ImageButton 與 ImageView 時,Lint 會提出 Missing contentDescription attribute on image 的警告。

       contentDescription 屬性的作用主要是要提供一些眼睛不方便的使用者,當使用者移到該物件上面或者點選此物件時,Android  的 Accessibility service 就可以透過 TTS 播放出 contentDescription  中的敘述,這些使用者即使看不見,目前所點選到的物件提供甚麼樣的服務。 詳細的資料可以參考 Accessibility Making Applications Accessible

      即使你對這個警告不理會的話程式還是依然可以順利執行,如果你覺得這個警告非常礙眼又不想要花費腦筋給該物件適當的敘述,你可以很簡單的直接填入下面的敘述到 ImageButton 與 ImageView的屬性當中,即可移除該警告:

android:contentDescription="@null"


[其他參考鏈結]





2013年6月1日 星期六

透過Eclipse 更新 Plug-in 後出現 Type R cannot be resolved to a variable

      今天透過 Eclipse "Check for updates" 去更新一些 plugin 後,在編譯 Android 時總是出現 "Type R cannot be resolved to a variable" 的問題,如下圖所示:

      我確定更新前是可以編譯成功,但不知為何更新完後卻無法編譯 Android project 了,之前更新都沒有遇到這樣的狀況;回想起來更新完後 Eclipse 有跳出一個視窗,但內容我倒是沒去注意,想說跟以前一樣要我重新啟動 Eclipse ,沒想到這次踩到地雷了...Orz.
    幸好似乎有不少人有類似的情況,上網 Google 了一下找到了─"Type R cannot be resolved to a variable" after Android SDK updated"。
     解決方式就是開啟 Android SDK Manager,沒意外應該會出現有可更新項目,將那些項目更新後就解決問題了。

    發生 Type R cannot be resolved to a variable 有很多原因,最主要是因為 R.java 無法自動產生出來,但是為何無法產生可能要去查看看 res 目錄下是否有任何錯誤。
    下面鏈結我是從 "“R cannot be resolved to a variable”?" 討論串中擷取出來的,如果發生的症狀並非與上面一樣的話,或許可以從下面找到你要的解答。

2013年5月24日 星期五

Android Graphical Layout 設定Fullscreen 與 直/橫 模式


  • 透過 Android Graphical Layout 切換 Portrait Mode 與 Landscape Mode:
  1. 點選專案中 Layout 的 XML 檔案
  2. 點選 Graphical Layout tab menu (基本上預設會選擇此選項,如果你有點選過 查看 xml 檔案的 tab menu,擇點選時還是會先開啟 查看 XML 的 tab menu,這時可以再點選Graphical Layout)
  3. 可以點選下圖中的圖示或者旁邊下拉的箭頭,選擇 Switch to Landscape,就可以將 Layout 切換成 Landscape Mode (如果則是做切換,可以直接按該圖示即可)。

  • 透過 Android Graphical Layout 將 Layout 特定成 Full Screen 的樣式來檢視:
  1. 在 Graphical Layout 下,點選 AppTheme後會彈出下拉選單。
  2. 選擇 Theme -> Theme.Black.No.TitleBar.FullScreen  即可;基本上你只要設定XXX.No.TitleBar.FullScreen 即可讓 Layout 呈現 Full Screen 的樣式來檢視。注意,這只是讓你檢視 Layout 在 Full Screen 下元件的布局,並不會因此讓你的Application變成 FullScreen。



  • 設定 Theme.Black.No.TitleBar.Fullscreen的效果如下