2011年9月12日 星期一

Android學習筆記 - Broadcast

ACTION_BATTERY_CHANGED 充電中
ACTION_BATTERY_LOW 電量低
ACTION_BATTERY_OKAY 電量正常
ACTION_POWER_CONNECTED 充電
ACTION_POWER_DISCONNECTED 拔除充電

ACTION_BOOT_COMPLETED 開機完成
ACTION_REBOOT 重新啟動
ACTION_SHUTDOWN 關機
ACTION_SCREEN_OFF 螢幕關閉
ACTION_SCREEN_ON 螢幕開啟

ACTION_CAMERA_BUTTON Camera按鈕被按

ACTION_HEADSET_PLUG 耳機被插上或拔下

ACTION_CONFIGURATION_CHANGED Configuration(orientation, locale...)改變
ACTION_DATE_CHANGED 日期被改變
ACTION_INPUT_METHOD_CHANGED 輸入法改變
ACTION_LOCALE_CHANGED 地區改變
ACTION_TIMEZONE_CHANGED 時區改變
ACTION_TIME_CHANGED 時間改變
ACTION_TIME_TICK 時間被變更
ACTION_WALLPAPER_CHANGED 背景被變更

ACTION_GTALK_SERVICE_CONNECTED Gtalk連線建立
ACTION_GTALK_SERVICE_DISCONNECTED Gtalk連線中斷

ACTION_NEW_OUTGOING_CALL 播打電話

ACTION_PACKAGE_ADDED 安裝一個新的程式
ACTION_PACKAGE_CHANGED 即有的程式被變更
ACTION_PACKAGE_DATA_CLEARED 程式的資料被清除
ACTION_PACKAGE_FIRST_LAUNCH 程式第一次被執行
ACTION_PACKAGE_RESTARTED 程式被重新執行
ACTION_PACKAGE_INSTALL 安裝程式
ACTION_PACKAGE_REMOVED 程式移除
ACTION_PACKAGE_REPLACED 程式被取代

ACTION_UMS_CONNECTED USB Mount
ACTION_UMS_DISCONNECTED USB Unmount
ACTION_USER_PRESENT wake up


2011年9月7日 星期三

Android學習筆記 - 取得偏好設定(SharedPreferences)

程式中取得偏好設定的方式主要有二個:(假設程式的packageName : tw.nicky)
1. PreferenceManager.getDefaultSharedPreferences(context);
    取得預設的偏好設定,此偏好設定會儲存在
    (/data/data/tw.nicky/shared_prefs/tw.nicky_preferences.xml)

2. context.getSharedPreferences("name", MODE_PRIVATE);
    此偏好設定會儲存在
    (/data/data/tw.nicky/shared_prefs/name.xml)
    第二個參數代表此偏好設定的存取模式
     MODE_PRIVATE : 只有此程式可以存取
     MODE_WORLD_READABLE : 其它程式也可以讀取
     MODE_WORLD_WRITEABLE : 其它程式可以寫入
 
     存取模式也可以混著使用,如:
     MODE_WORLD_READABLE + MODE_WORLD_WRITEABLE : 表示其它程式可讀取寫入

    假設你將存取模式設定為MODE_WORLD_READABLE
    那麼其它的程式,則可透過以下語法來讀取你的偏好設定
    context= createPackageContext("tw.nicky",CONTEXT_IGNORE_SECURITY );
    prefs = myContext.getSharedPreferences(WRITE, MODE_PRIVATE);