Service Class:背景作業的程式。
要使用的話需在AndroidManifest.xml 進行註冊,Tag 為 Service
主要三個函式,onCreate( ) , onStartCommand( ), onDestroy( ).
Service 分兩種,一種為 local service (Started Service), 內部通訊 透過Content.startService () 啟動;另一種為 remote Service (Bound Service), 用在不同的應用程式中,主要透過 Context.bindService( ) 啟動。
AndroidManifest.xml
呼叫 Service 方式,startService, stopService
在閱讀的過程中,感覺 Service 與 Thread 很雷同,但依據Android 本身的架構問題,它們是不同的東西。
Thread 是獨立於 Activity, 如果關了 Activity , 但卻沒關閉程式中的 Thread ,Thread 還是不會被註消掉;同時在 Activity 可能沒被啟動,但是某些功能還需要作業,就需要透過 Service,無法直接控制 Thread,
因此在 Service 中創建及控制 Thread 可解決上述的問題,任何 Activity 都可控制同一個Service,而系統也只建立一個對應的 Service Instance.
但都要注意的時,Thread 的狀態控制,不用時,就記的註消掉。
Application Object 會在專 案程式 process 執行最先被建立,並且是唯一一個(Singleton),因此用來維護 global application state. tag 為 Applicaton
自訂的 application object 必須要繼承自
Application
。之後程式可以透過Activity.getApplication()
或 Service.getApplication()
來取得:AIDL (Android Interface Definition Language).
O'REILLY Learning Android.
http://www.cnblogs.com/zhxiang/archive/2012/02/07/2341914.html (Service)
【Android】Thread与Service的差异 ( 魔豆先生 )
http://imsardine.simplbug.com/note/android/application-object.html
http://www.ozzysun.com/2010/11/android-service.html
http://www.ozzysun.com/2010/11/android-service_02.html
0 意見:
張貼留言