2011年1月21日 星期五

javaws ./androidscreencast.jnlp fail message

javaws ./androidscreencast.jnlp
netx: Unexpected java.io.IOException: /home/nelsonchung/.netx/cache/http/androidscreencast.googlecode.com/svn/trunk/AndroidScreencast/dist/androidscreencast.jnlp (No such file or directory) at net.sourceforge.jnlp.JNLPFile.openURL(JNLPFile.java:254)

androidscreencast
http://code.google.com/p/androidscreencast/




透過Facebook分享

2011年1月19日 星期三

加快Android開發速度 - 開發driver 不需要重新build system.img

修改gps程式
每次都要重新產生libhardware_legacy.so
然後在用make snod產生新的system.img
在從server把檔案抓下來後
還要在燒錄到sd卡上

這個過程大概要五到十分鐘
雖然可以拿來看網頁
但是急的時候可真的是等不及阿

這時候你可以單獨的更新你的so到sd卡上

步驟如下adb shell mount -o remount rw /system
cp /mnt/nelsonchunggps1004/myandroid9.1/out/target/product/imx51_bbg/system/lib/libhardware_legacy.so ./
adb push libhardware_legacy.so /system/lib
sync
adb shell reboot


  • 將system目錄remount成read/write


adb shell mount -o remount rw /system

  • 將資料copy到當下目錄

cp /mnt/nelsonchunggps1004/myandroid9.1/out/target/product/imx51_bbg/system/lib/libhardware_legacy.so ./

  • 利用adb push將資料傳送到sd卡上

adb push libhardware_legacy.so /system/lib

  • 同步一下

sync

  • 重新開機

adb shell reboot


也可以在PC端作到
將sd卡插入讀卡機

步驟如下
cp /mnt/nelsonchunggps1004/myandroid9.1/out/target/product/imx51_bbg/system/lib/libhardware_legacy.so ./
sudo cp libhardware_legacy.so /media/system/lib
sync

透過Facebook分享

usb hub insert

usb hub 插上之後 會出現裝置在 /sys/bus/usb/devices




插入前


usb1 1-0:1.0 usb2 2-0:1.0


插入後



usb1 1-0:1.0 usb2 2-0:1.0 2-1 2-1:1.0 2-1.4 2-1.4:1.0


透過Facebook分享

2011年1月17日 星期一

Write Bluetooth AP on Android

參考網站

所有的bluetooth API都在android.bluetooth  package下

BluetoothAdapter
允許你查詢local的資料(ex. MAC address), 搜尋設備, 初始化連線

首先使用BluetoothAdapter的getDefaultAdaper得到local device的handle
用意在於確認local設備是否存在(or 你可以使用getAddress得到local device MAC address)

之後得到的handle就可以使用startDiscovery
官方說會預設12秒搜尋時間

你可以先註冊兩個message
ACTION_FOUND and ACTION_DISCOVERY_FINISHED
註冊用意在於
ACTION_FOUND:有找到設備的時候通知
ACTION_DISCOVERY_FINISHED: 搜尋結束的時候通知



        // Register for broadcasts when a device is discovered
        IntentFilter filter = new IntentFilter(BluetoothDevice.ACTION_FOUND);
        this.registerReceiver(mReceiver, filter);

        // Register for broadcasts when discovery has finished
        filter = new IntentFilter(BluetoothAdapter.ACTION_DISCOVERY_FINISHED);
        this.registerReceiver(mReceiver, filter);




此外寫個接收端

private final BroadcastReceiver mReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
            String action = intent.getAction();
            if (BluetoothDevice.ACTION_FOUND.equals(action)) {
            } else if (BluetoothAdapter.ACTION_DISCOVERY_FINISHED.equals(action)) {
            }
}






透過Facebook分享