網頁

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

2015年7月11日 星期六

[RPi][Android] Install RaspAnd


在 Raspberry 上, 安裝 RaspAnd, 試用 Android.
DSCN8652

需求

  • SD Card, 最少 16 G
  • raspand-android-lollipop-5.1-aptoide-247mb-150527.zip

步驟一, 以 GParted 製作 SD Card partition 分割

GParted 是一個圖形化的 partition 工具, 以下實際操作. 總共需要建立 4 個分割
partition 1 BOOT 512 MB fat32 boot
partition 2 /system 512 MB fat32/ext4  
partition 3 /cache 512 MB ext4  
partition 4 /data remained ext4  
安裝 Gparted
$ sudo apt-get install gparted
執行 Gparted
$ sudo gparted
gparted-01
右上角的 /dev/sda 的位置, 可以選擇要操作的磁碟代號. 如果不清楚, 可以用 fdisk 查詢  $ sudo fdisk –l
gparted-B01
選到我們要操作的磁碟代號後. 先刪除原有的 partition. 目前這個磁碟共有 4 個 partition, /dev/sdb1, /dev/sdb2, /dev/sdb3, /dev/sdb4 在 partition 的那一列上, 按右鍵, 選擇 unmount/delete, 通通刪除.gparted-A3
這時候, 上面會出現打勾 (執行), 箭頭 (取消) 這兩個符號. 按下打勾, 執行.
gparted-04
真的要執行嗎 ? 是的, 請按下 Apply.
gparted-05
等它執行完, 關閉.gparted-A4
接著, 建立新的 partition. 在橘色的那一列, 按右鍵, new, 建立新的 partition. gparted-07
注意, Free space preceding 要設定成最小. 建立完 4 個 partition.記得要打勾.
gparted-A5
這樣就完成了分割.
 gparted-09
在 partition 1 的上面按右鍵, 選擇 Manage Flags, 設定成 boot.gparted-10
gparted-B01
注意: 用 64 G 的卡, 實驗是失敗的. 後來換用 32 G 的卡, 就成功的跑起來. 但是不能確定和卡是不是有絕對的關係. 附圖的部份, 有些不是 32 G 的卡, 不過這些都只是操作相關, 不會有影響. 最終的結果請參考以上這一張.

步驟二, 複製檔案到 SD card

解壓縮 raspand-android-lollipop-5.1-aptoide-247mb-150527.zip
$ unzip raspand-android-lollipop-5.1-aptoide-247mb-150527.zip
進入 raspand 目錄
cd raspex-android-x86-lollipop-5.1-aptoide-150527
參考前面製作的 partition, 把 boot 複製到 partition 1, system 複製到 partition 2,
$ sudo mkdir /mnt/SD
$ sudo chmod 777 /mnt/SD1
$ sudo mount /dev/sdb1 /mnt/SD1
$ cd boot
$ cp * /mnt/SD1
再複製 system
$ sudo dd if=system.img of=/dev/sdb2 bs =1M

步驟三, 用 RaspAnd 開機

一開始就會出現 Android 的字樣. 過了很久之後, 大約 5 – 10 分鐘, 才會出現 Android 的操作畫面.

 


2015年7月6日 星期一

[Android] Introduction to ADB (Android Debug Bridge)


簡介

Android Debug Bridge (adb) 是一個多功能的命令列工具, 可以用來和模擬裝置和實體裝置間溝通. 它是一個包含 3 個元件的 client-server 的程式
  • client. client 運行在開發平台上, 可以從命令列執行. 其他的 Android 工具, 例如 ADT plugin 和 DDMS 也會使用到.
  • sever. server 是一個運行在開發平台的背景程式. 它用來管理 client 和模擬裝置或實體裝置上的 daemon 的通訊.
  • daemon, 運行在模擬裝置或實體裝置上的背景程式.

ADB 在那裡

adb 在 Android SDK 的目錄下的 platform-tools 目錄下. Android SDK 又在那裡呢 ? 如果使用 Android Studio, 可以在 Tool/Android/SDK manager 的這個畫面,
image
 

ADB 基本命令

  • adb install, 從開發平台, 不經過 Google Play Store, 直接安裝應用程式
  • adb uninstall, 從開發平台, 直接移除應用程式
  • adb push, 從開發平台複製檔案到實體裝置
  • adb pull, 從實體裝置複製檔案到開發平台
  • adb logcat, 列印實體裝置的偵錯訊息
  • adb shell, 從開發平台登入到實體裝置的 linux 提示.
  • adb shell command, 從開發平台執行實體裝置的特定命令

ADB 範例

首先, 看看手機上安裝了那些應用程式
adb shell pm list packages
image
注意, 命令後面加的 | more 只是因為避免畫面捲動太多. 實際上不見得需要.
然後看看它是安裝在那一個路徑. tw.com.greenmaple.triwebview 是我自己的測試 app, 所以請用你自己的, 或是其他的 app 代替.
adb shell pm path tw.com.greenmaple.triwebview
image
它是安裝在 /data/app/tw.com.greenmaple.triwebview-2/ 下面, 用 adb pull 把它抓下來
adb pull /data/app/tw.com.greenmaple.triwebview-2/base.apk
image
然後把它從實體裝置中解除安裝
adb uninstall tw.com.greenmaple.triwebview
image
再重新安裝
adb install base.apk
    image

    2014年11月18日 星期二

    [Android Studio] New Project


    Start Android Studio

    執行 studio64.exe (studio.exe), 並選擇 “New Project”
    image

    Fill Project property

    填寫 project 相關的資料.
    image

    Select Platform

    image
    image
    Accept and Next …
    image
    下載 SDK
    image

    image
    先選擇一個 Blank Activity:
    image
    Finish 之後, 出現 Gradle ….
    不過, 我有遇到 Java 連線被防火牆擋住的狀況. 不確定是不是和這個有關. 同意之後, 它才開始跑了起來.
    image
    image
    That’s it