編輯:Android開發教程
1.1.1 SurfaceComposerClient
圖 11?28 每個應用程序在SurfaceFlinger中都對應一個Client
SurfaceFlinger運行於SystemServer這一系統進程中,需要UI界面顯示的應用程序則通過binder服務與它進行跨進程通信。在音頻系統的學習中,每一個AudioTrack在AudioFlinger中都可以找到一個對應的Track實現。這種設計方式同樣適用於顯示系統,即任何有UI界面的程序都在SurfaceFlinger中有且僅有一個Client實例。
Client這個類名並沒有完全表達出它的含義,因為在Android系統的很多其它地方你都可以找到同名的類。應用程序與SurfaceFlinger間的接口是ISurfaceComposerClient,Client的父類是BnSurfaceComposerClient,它是這一接口的本地端實現。
/*frameworks/native/include/gui/ISurfaceComposerClient.h*/
class ISurfaceComposerClient : public IInterface
{ …
virtual sp<ISurface>createSurface( surface_data_t* data, const String8& name, DisplayIDdisplay,
uint32_t w,uint32_t h, PixelFormat format, uint32_t flags) = 0;
virtual status_t destroySurface(SurfaceID sid) = 0;
};
一、為何寫作此文你是不是經常看到很多書籍中說:不能在子線程中操作ui,不然會報錯。你是不是也遇到了如下的疑惑(見下面的代碼): (Bundle savedI
注1:以下這些功能都是本人以MIUI ROM為例來講述的,如果你的Android沒有類似功能,可能是版本關系。部分功能需要安裝App來實現。注2:以下所述的優/缺點,全部
Android 是最常用的智能手機平台,XML 是數據交換的標准媒介,Android 中可以使用標准的XML生成器、解析器、轉換器 API,對 XML 進行解析和轉換。X
Search (搜索)是Android平台的一個核心功能之一,用戶可以在手機搜索在線的或是本地的信息。Android平台為所有需要 提供搜索或是查詢功能的應用提供了一個