picasso(context context, dispatcher dispatcher, cache cache, listener listener,
requesttransformer requesttransformer, listextrarequesthandlers, stats stats,
bitmap.config defaultbitmapconfig, boolean indicatorsenabled, boolean loggingenabled)
allrequesthandlers.add(new contactsphotorequesthandler(context));
allrequesthandlers.add(new mediastorerequesthandler(context));
allrequesthandlers.add(new contentstreamrequesthandler(context));
allrequesthandlers.add(new assetrequesthandler(context));
allrequesthandlers.add(new filerequesthandler(context));
allrequesthandlers.add(new networkrequesthandler(dispatcher.**********, stats));
requesthandlers = collections.unmodifiablelist(allrequesthandlers);
this.stats = stats;
this.targettoaction = new weakhashmap();
this.targettodeferredrequestcreator = new weakhashmap();
this.indicatorsenabled = indicatorsenabled;
this.loggingenabled = loggingenabled;
this.referencequeue = new referencequeue();
this.cleanupthread = new cleanupthread(referencequeue, handler);
this.cleanupthread.start();
}
在picasso構造的過程中:啟動了乙個執行緒cleanupthread
private
static
class
cleanupthread
extends
thread
@override
public
void
run() else
} catch (interruptedexception e) catch (final exception e)
});break;}}
}void shutdown()
}
public
class
pushservice
extends
service }}
@override
public
void
ondestroy()
}
while迴圈裡面的poll()方法並不是阻阻塞的,因此會一直重複的跑這段**導致cup即使在手機鎖屏的時候仍然高速的在執行著迴圈** Android 耗電優化
一 監視電量的變化和充電狀態 當你通過降低後台任務的更新頻率來降低其對電量的影響時,檢測當前的電量和充電狀態都是乙個好的開始好的嘗試。應用的更新對電量的影響最好由剩餘電量和充電狀態決定。充電時,應用的更新操作對電量的影響可以忽略不計,此時你應該最大化你的重新整理頻率。相反的沒有充電時,降低你應用的更...
android app 優化總綱
布局優化 響應優化 記憶體優化 電量優化 網路優化 2 測試布局是否需要優化 使用工具hierarchy viewer,和lint 3 測試響應是否需要優化 響應優化的範疇 避免anr和卡頓 目測可以。4 測試是否需要記憶體優化 記憶體需要優化的範疇 記憶體洩漏,記憶體溢位,記憶體抖動 leakca...
AndroidAPP效能優化
布局優化 android布局優化之merge include viewstub使用與原始碼分析 android抽象布局 include merge viewstub android layoutinflater原理分析,帶你一步步深入了解view 一 優化 譯 android效能優化 避免記憶體洩露...