Sunday, July 14, 2013

Android 學習筆記 2013-07-05 / Android Service and Native Service

1) Android Service 和 Native Service
Android Service 和 Native Service基本上位於同個層級, 往上就是Android Framework裡面的Manager們(ex. Sensor Service->Sensor Manager, Wifi Service->Wifi Manager), 注意Service和Manager是用IPC(Inter Processing Communication)在做溝通, Android Service是用Java來實作的Service, 而Native Service是用C/C++ 實作的Service
當Android Framework需要用到下層的硬體資源時(這裡用LED當例子)
a.會先用hw_get_module從HAL層取得硬體的stub(stub是Android設計的代理人proxy, 讓上層能夠使用下層以Linux Kernel架構的硬體資源, 用stub的原因是為了廠商的權利關係以及普及化)
b.HAL層就會回傳這個stub的物件
c.call back "open" method, 這時stub物件裡面定義的open函數就會被call到, 然後進行初始化(initialization)以及函數實體化的動作

No comments:

Post a Comment