編輯:關於Android編程
這是Android4.0之後的新Api,大多數人可能沒有在意這一改動。但是對於一些框架的設計使用卻有非常重要的意義的。
public interface ActivityLifecycleCallbacks { void onActivityCreated(Activity activity, Bundle savedInstanceState); void onActivityStarted(Activity activity); void onActivityResumed(Activity activity); void onActivityPaused(Activity activity); void onActivityStopped(Activity activity); void onActivitySaveInstanceState(Activity activity, Bundle outState); void onActivityDestroyed(Activity activity); }重點在於
getApplication().dispatchActivityCreated(this, savedInstanceState);每當來到Activity的生命周期回調的時候,Activity都會將事件分發到Application對應的方法,而Application則會調用我們實現的ActivityLifecycleCallbacks接口。這樣使得我們可以在外部監聽到每個Activity的生命周期。 這樣的話,用處如下: 1.日志,保存記錄Activity的活動,以及做一些測試。
2.框架設計中,如Http請求框架,需要提供在Activity被銷毀時,cancel仍在隊列中的請求。
3.框架使用中,如EventBus,Xutils等IOC框架,需要在OnCreate和OnDestory中注冊和卸載的場景。可以使用ActivityLifecycleCallbacks避免顯式在Activity中調用其Api。
至於在4.0以下獲得相同效果,則需要代理系統框架中的Instrumentation類。
Object mainThread = KernelObject.declaredGet(application.getBaseContext(), "mMainThread"); Field instrumentationField = KernelReflect.declaredField(mainThread.getClass(), "mInstrumentation"); instrumentation = new MyInstrumentation(); KernelObject.copy(KernelReflect.get(mainThread, instrumentationField), instrumentation); KernelReflect.set(mainThread, instrumentationField, instrumentation);
Picasso是Square公司開源的一個Android圖形緩存庫,地址http://square.github.io/picasso/,可以實現圖片下載和緩存功能。它的
內存洩漏和內存溢出是安卓開發中經常碰到的問題,如何能夠快速有效的發現並追蹤內存洩漏或者內存溢出的源頭,是每個開發者都需要掌握的技巧,今天我給大家帶來常見的內存分析工具使用
(一)概述(二)常用屬性與基礎實例從官方的API我們可以看到這樣一個類的關系圖:常用屬性詳解 :對應在java我們可以調用下述方法:先看看系統給我們提供的進度條吧運行效果
android繪制圓形圖片的兩種方式看下效果先下面有完整的示例代碼使用BitmapShader(著色器)我們在繪制view 的時候 就是小學上美術課 用水彩筆在本子上畫畫