換了Android手機後就一直在想是不是也會有這樣的軟體呢?找了很久,終於在Market找到了,而且功能比P990i上的強多了,驚喜之餘不敢藏私,特寫一篇教學文,希望能有更多人享受到Android手機帶來的便利。
這個軟體名子叫Locale(真是簡潔有力),各位可以在Market上搜尋到,或掃描以下QR code

安裝完後執行

這是主畫面,先按下右下角「Configure Defaults」,這裡是設定如果沒有任何情境符合的話,手機就設定成這裡的狀態

Defaults畫面,按下下方「Add Default」增加一個設定

Display:設定畫面的明暗
Network:設定無線網路及藍芽的開關
Notification:提醒功能,當進入這個情境時手機可跳出訊息、發出聲響或震動以提醒使用者
Ringtone:可以改變預設鈴聲
Volume:改變聲音大小
Wallpaper:更換桌布

把需要的設定一個一個加上去

如果需要刪除某個設定,可以點選「Manage」頁籤,然後按著要刪除的項目右邊的點點狀ICON,拖到下方垃圾桶就可以了。

設好後按下Menu鍵再按「Save」就可儲存,或直接按返回(箭頭)鈕也會自動儲存
設好了預設值就可以來設定一些情境了
回到主畫面按下「Add Situation」

設定情境的畫面,最上面是名稱,中間是狀況設定,最下面是手機設定
簡單的說就是當符合中間的狀況時,就把手機設定成下面的狀況
先來設定個簡單的
我希望當手機快沒電時可以自動調按螢幕亮度,同時關閉Wi-Fi及藍芽:
先輸入狀況名稱,就打 快沒電 好了

按下「Add Condition」新增一個狀況,可以看到有很多狀況可以選
Battery是電池容量變化時
Calendar是當行事曆中某事件發生時
Contact是當某聯絡人打電話來時
Location是到達某地時
Time是到某時間時

我們先點選「Battery」,並且調整至30%

點選上面的下拉選單,裡面有「小於」、「大於」、「未插電時」及「插電時」,我們選擇「小於」
這個狀況設定的意思就是說,當電池容量低於30%時

接著按返回鍵回到上一頁,可以看到剛剛的設定已經有進去了
再來按「Add Setting」設定符合狀況時手機要做什麼事

這個畫面就跟「Default」一樣了

依序設定畫面亮度、Wi-Fi及藍芽的開關

也可以視需要加入提醒
Status Bar是會在狀態列顯示訊息
Vibrate是手機會震動提醒
Alarm則是發出聲音提醒

完成設定後一樣按返回鍵回到主畫面

可以看到多了一個快沒電的設定,前面的開啟按鈕可以快速切換這個情境是否生效
接下來我們設一個情境是,當你到辦公室時自動把音量調到2,並且把Wi-Fi打開
一樣按下「Add Condition」新增一個狀況
按下「Location」設定地點

接下來會出現這個畫面,意思是手機會使用以下三種方法決定你現在的位置
Network:這裡指的是電信網路,也就是以基地台的位置決定
Wi-Fi:以你附近的AP位置決定
GPS:以衛星來定位
雖然GPS定位最準,但是不見得手機的GPS和Wi-Fi都是一直開著的,所以我們還是選擇Network定位
確定你的手機GPS及Wi-Fi是否已關閉,沒有的話可以按左邊兩個按鈕進去修改
之後按下「Done」

一段時間後就會抓到你的位置,可以拖動指標設定其他位置
如果抓到的位置真的差很遠,大概是基地台辨識有問題,通常過一會再測就好了
(基地台定位會跟你實際位置有一段差距是正常的,這裡所謂差很遠的意思是人在台灣卻抓到美國去)

設好後可以看到他抓到一個大略的地址
再來就自己增加Setting啦

終於設好啦
locale大約是每10分鐘測一次手機狀態,所以若是狀態沒變的話不要急,稍等一下
要是真的沒變再進去調整一下地點試試
建議不同情境可以設定不同的桌布,這樣馬上就可以知道手機現在是處於什麼情境下

最後,情境是有先後順序的喔,同樣的狀況發生時會以排在較上面的情境優先,順序可以進入「Manage」調整
小弟已經試用一個星期,目前都能正確的切換到適當的情境
在辦公室時小聲,開會時靜音,家人打電話來時鈴聲最大,回家時開Wi-Fi
這些全都不需要手動切換,一切都用Locale幫你自動搞定!
9/30新增:
Locale還有一些好用的Plug-in可以裝,讓他可以做更多事

在主畫面時按下「MENU」鍵,再點選右下角「Get Plug-ins」

然後就可以看到很多Plug-in
這裡面比較實用的有:
Local SMS Plug-in:可以發送簡訊給特定的人
Locale Wake On Lan plug-in:傳送開機指令給區網某部電腦
Locale HTTP Reguest Plug-in:傳送Http訊息給網站
Astrid Task/Todo List:俗稱小章魚的待辦事項軟體,可以配合Locale顯示某分類的待辦事項
各位可以安裝來試試看
另外Android上的編寫Script軟體ASE也支援Locale了,但是因為ASE沒有放上Market所以比較容易被忽略
使用ASE就可以利用撥號程序達到自動轉接來電的目的
現在就先來安裝ASE吧
直接掃描QR code,或到官網下載皆可

QR code
官網下載區:http://code.google.com/p/android-scripting/downloads/list
用QR code的話記得這只是下載安裝檔而已,下載完成後還必須要去訊息列點選才會安裝喔

裝好ASE後還要安裝解譯器,在主畫面按下MENU,選擇Add interpreter

選擇Python 2.6.2 (為什麼選擇Python?因為Python用到的符號少,適合直接在手機上輸入,如果您熟悉其他Script語言的話也可以另外選擇安裝)

之後ASE會自動下載檔案並完成安裝,好了後會回到主畫面,至此就算完成安裝ASE了
接下來我們試著編寫一個Script,可以把手機來電轉接到市內電話上
查了一下中華電信(http://www.cht.com.tw/PersonalCat.php?Module=NormalArticle&CatID=695&PageID=1142)
知道設定轉接的代號是 **21*區域號碼及電話號碼#
所以如果我們要將來電轉接到0212345678這個電話,就要讓手機撥號送出**21*0212345678#,這一串代碼
取消轉接就是##21#
在主畫面按下MENU鍵,選擇Add Script

接著選擇Python 2.6.2

然後進入編寫Script模式,上面是檔名,下面就是要寫的Script
請用手機輸入以下Scipt:
==============[我是分隔線]==============
inport android
droid = android.Android()
droid.callNumber("**21*0212345678")
droid.exit()
==============[我是分隔線]==============
記得0212345678要改成自己的市內電話號碼喔
然後輸入檔名
完成後記得一定要按MENU鍵選擇Save才會存檔喔
然後再輸入以下Script,用來取消轉接設定
==============[我是分隔線]==============
inport android
droid = android.Android()
droid.callNumber("##21#")
droid.exit()
==============[我是分隔線]==============
一樣輸入檔名存檔
接著點選檔名就可以執行Script

轉接成功!!

取消轉接

再來回到Locale,可以看到Add Setting裡面有ASE的選項了,再來就不用多說了吧
Locale結合Plug-in之後應用層面更廣了,期待大家好好的使用她讓自己的生活更輕鬆簡單!!
註:
有關ASE中Python更多的指令可以來官網看(請按我)
ASE也提供了TTS(Text-to-speech)套件可以免費安裝(請按我)
另外關於轉接電話的部分小弟一直試不出如何轉接到分機中,希望有高人可以幫忙解決,感謝