摘要:
1.Bitmap在Android虛擬機中的內存分配 1 在Android3.0之前,Bitmap的內存分配分為兩部分,一部分是分配在Dalvik的VM堆中。而像素數據的內存是分配在Native堆中,而到了Android3.0之后。Bitmap的內存則已經所有分配在VM堆上。這兩種分配方式的差別在于,
閱讀全文
摘要:
1> 索引 雖然索引的目的在于提高數據庫的性能,但這里有幾個情況需要避免使用索引。使用索引時,應重新考慮下列準則: 2> 事務 對于事務,就是數據庫的一次原子性的執行操作。原子性的執行操作為數據的整體性執行帶來的可靠安全性。在SQLite中,如果我們默認事務(會為每個插入和更新都創建一次事務,并且在
閱讀全文
摘要:
a.Bitmap.recycle(),Cursor.close,inputStream.close() b.大量加載Bitmap時,根據View大小加載Bitmap,合理選擇inSampleSize,RGB_565編碼方式;使用LruCache緩存 c.使用 靜態內部類+WeakReference
閱讀全文
摘要:
1.使用系統為我們提供了幾個抽象的標簽 ①include:重用 ②viewstub:按需加載 注意: ③merge:減少布局層數
閱讀全文
摘要:
1.具體代碼: 服務端實現: 可以看到onTransact有四個參數 code , data ,replay , flags code 是一個整形的唯一標識,用于區分執行哪個方法,客戶端會傳遞此參數,告訴服務端執行哪個方法; data客戶端傳遞過來的參數; replay服務器返回回去的值; flag
閱讀全文
摘要:
1、概述 Binder能干什么?Binder可以提供系統中任何程序都可以訪問的全局服務。這個功能當然是任何系統都應該提供的,下面我們簡單看一下Android的Binder的框架 Android Binder框架分為服務器接口、Binder驅動、以及客戶端接口;簡單想一下,需要提供一個全局服務,那么全
閱讀全文
摘要:
前言 開發一個app時,常用Activity和Fragment,由于操作方便Fragment越來越受歡迎,這樣就避免不了Activity和Fragment、Fragment和Fragment之間的通信,我們知道Fragment和Fragment之間不能直接進行通信的,而是通過Activity進行通信
閱讀全文
摘要:
線程池的優點 1、線程是稀缺資源,使用線程池可以減少創建和銷毀線程的次數,每個工作線程都可以重復使用。 2、可以根據系統的承受能力,調整線程池中工作線程的數量,防止因為消耗過多內存導致服務器崩潰。 線程池的創建 corePoolSize:線程池核心線程數量 maximumPoolSize:線程池最大
閱讀全文
摘要:
前言 Content Provider做為四大組件之一,通常情況下并沒有其他的組件使用頻繁,但這不能作為我們不去深入學習它的理由。關于Content Provider一篇文章是寫不完的,這一篇文章先來介紹它的啟動過程。 1.query方法到AMS的調用過程 在Android IPC機制(四)用Con
閱讀全文
摘要:
對于CA機構頒發的證書Okhttp默認支持 可以直接訪問 但是對于自定義的證書就不可以了(如:https ://kyfw.12306.cn/otn/), 需要加入Trust 下面分兩部分來寫,一是信任所有證書,二是信任指定證書,訪問自簽名的網站 一、信任所有證書 1. 在你的module 下 bui
閱讀全文