2010年12月21日 星期二

[Android] 發佈apk


在 Package Explorer 裡的點選 AndroidManifest.xml  


並在 Exporting 裡找 Export an unsiged APK and sign it manually

2010年8月10日 星期二

[Android] 關於藍芽




AndroidManifest.xml
---------------------------------------------------------------------
<manifest …>
    ……………
    ……………
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
    <uses-permission android:name="android.permission.BLUETOOTH" />
    ……………
    ……………    
</manifest>


AndroidBluetooth.java
---------------------------------------------------------------------
import android.app.Activity;
import android.bluetooth.BluetoothAdapter;
import android.content.Intent;
import android.os.Bundle;

public class Android_Bluetooth extends Activity {
    private static final int REQUEST_ENABLE_BT = 0;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
        if (mBluetoothAdapter != null) {
            if (!mBluetoothAdapter.isEnabled()) {
                Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
                startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT);
            }
        }
        else{
            tv1.setText("not bluetooth sensor");
        }
        
    }
}




在使用之前要先在 AndroidManifest.xml裡的 manifest 加入這兩行

import android.bluetooth.BluetoothAdapter;
要開啟藍芽前先要引入 BluetoothAdapter

BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
建立一個新的 BluetoothAdapter 物件以 mBluetoothAdapter 命名


if (mBluetoothAdapter != null) {

}
這個用法是可以去檢查裝置是否有藍芽


if (!mBluetoothAdapter.isEnabled()) {

            Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
            startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT);
}
這是用來判斷該裝置的藍芽是否開啟了,開啟傳True 否則 False
如果沒有開啟會跳出訊息畫面,詢問使用者藍芽是開啟



mBluetoothAdapter.enable(); 
也可以直接用直接開啟





String res="";
Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
// If there are paired devices
if (pairedDevices.size() > 0) {
    // Loop through paired devices
    for (BluetoothDevice device : pairedDevices) {
        // Add the name and address to an array adapter to show in a ListView
        res += device.getName() + " " + device.getAddress() +"\n";
    }
}

這段是可以把已經 配對過的手機(名稱、MAC) 都紀錄起來





2010年8月6日 星期五

[GAE] 時區設定 Asia/Taipei

在GAE裡的時間是以 格林威治時間 為準


若要調整成現在 Asia/Taipei 


from datetime import timedelta, datetime

Asia_Taipei_datetime = datetime.now() + timedelta(hours=8)



from datetime import timedelta, datetime
要引入的套件


Asia_Taipei_datetime = datetime.now() + timedelta(hours=8)

主要拆成datetime.now()  跟 timedelta(hours=8)


datetime.now()
因為GAE裡的時間是以 格林威治,所以在這函數所抓到的時間是以格林威治為準

timedelta(hours=8)
在來 Asia/Taipei 跟格林威治所訂置的時間,剛好相差8小時,所以要再加上8小時


dateNow = datetime.now() + timedelta(hours=8)
因此兩個相加就會等於 Asia/Taipei 的時間(若是其他時區位置也是同樣方法)

2010年7月29日 星期四

[Android] 使用Eclipse開發



首先 ,先下載 Eclipse Download (在此以 version :3.6.0 做說明)


Install new software

加入 http://dl-ssl.google.com/android/eclipse/ 點選全部安裝 
(若不會可以參考 這篇 )



Android SDK  SDK Downloads 


原先下載都會有已存在的SDK的版本 1.5 ,1.6 ,2.0.1....


不過這次好像沒有 需要自行 install 需要的 Android 版本


(可以參考 這篇)

2010年7月16日 星期五

[GAE] 在 Eclipse 安裝PyDev


在 Eclipse 安裝 PyDev,可用 Eclipse 開發 Pyhon 專案


首先 ,先下載 Eclipse Download (在此以 version :3.6.0 做說明)

執行後選 [ Help -> Install New Software... ]
點選 [ Add... ]
在 [Location: ]  http://pydev.org/updates



安裝後在 Eclipse 功能表選擇 [ window -> Preferences -> Pydev -> Interpreter - Python ]
接著按下 [ New ] 選擇 Python 的安裝目錄,並選擇 [ python.exe ]











選擇 [ File -> Project... -> Pydev -> Pydev Project ]
在 [ Grammar Version ] 選擇 2.5 版本。然後記得取消建立src目銀的選項














專案建立後,為在讓專案的檔案編使用 UTF-8
在專案上右鍵選擇 [ Properties -> Resource ]











然後一樣左邊目錄 [ PyDev - PYTHONPATH ]
將hello專案的根目錄加入到 PYTHONPATH











接著在專案上按右鍵 [ New -> File ] 建立app.yaml














並將內容修改


app.yaml
application: hello
version: 1
runtime: python
api_version: 1

handlers:
- url: /
  script: main.py


在建立 main.py 選擇 [ New -> Pyev Module ]













並將內容修改
main.py
print 'Content-Type: text/plain'
print ''
print 'Hello, world'



在執行程式之前,必須先設定Goolge SDK
選擇 [ New -> Folder ]














連結建立完後,在專案上右鍵,選擇 [ Run As -> Run Configurations...]
在左邊目錄找 [ Python Run (點兩下)  ]
在 [ Project ] 輸入 hello
在 [ Main Module ]  找dev_appserver.py










接著切換到 [ Arguments ] 設定參數
將 [ Program arguments: ]  設為 .
在 [ working directory ] 設成 workspace










執行後 出現
INFO     2010-07-15 20:26:11,663 appengine_rpc.py:159] Server: appengine.google.com
INFO     2010-07-15 20:26:11,671 appcfg.py:357] Checking for updates to the SDK.
INFO     2010-07-15 20:26:15,536 appcfg.py:366] Update check failed: <urlopen error The read operation timed out>
INFO     2010-07-15 20:26:15,661 dev_appserver_main.py:431] Running application hello on port 8080: http://localhost:8080


[GAE] Google App Engine (GAE) 部署


首先先至Google申請帳號 點圖申請GAE

Google 應用服務引擎技術提供

download Google SDK

由於Google App Engine 目前的運作環境是用 Python 2.5.2 ,所以你可選擇下載「 Python 2.5.x 」版本來安裝

 


安裝python 影像處理函式庫 PIL