亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android——優化

發布時間:2020-08-09 04:54:46 來源:網絡 閱讀:408 作者:wauoen 欄目:移動開發
  1. 內存優化:

(1) NDK 和 JNI

(2)對于圖片處理使用openGL的texture;

2.bitmap優化:

在生成bitmap時根據bitmap的大小判斷是否進行縮放,縮放代碼:

BitmapFactory.Options opts = new BitmapFactory.Options();
opts.inJustDecodeBounds = true;
BitmapFactory.decodeFile(path,opts)
//獲取寬高
int width = opts.outWidth;
int height = opts.outHeight;
//重新獲取bitmap對象前要將:
opts.inJustDecodeBounds = false;

3.代碼的優化:
(1)靜態變量太多會引起內存泄露;

(2)使用Application context:如果想保持一個長期生命的對象時需要一個context對象,則調用getApplicationContext()使用Application context;

(3)及時關閉資源,eg:cursor;

(4)使用Bitmap后及時調用recyle()方法回收bitmap對象;

(5)對Adapter優化,使用Holder;

(6)代碼的微優化:

    盡量減少創建新對象;

    將類、方法、變量的可見性設為最低;

    針對字符串的拼接使用StringBuffer代替String;

    不要在循環中申明臨時變量,不要在循環中捕獲異常;

    如果對于線程安全沒有要求,盡量使用線程不安全的集合對象;

    使用集合對象如果事先知道其大小,則可以在構造方法中設置初始大小;

    文件讀取操作,需要使用緩存類及時關閉文件;

    慎用異常,使用異常會導致性能降低;

    如果程序頻繁創建線程,則可以考慮使用線程池;

4.Android UI優化:

(1)盡量使用系統資源;

(2)使用系統的Style要在使用的資源面前在“?android”,而不是@android////

(3)查看系統資源:進入android-sdk\platforms\android-8\data\res;

(4)抽取相同的布局;

(5)精簡UI層次:

    merge標簽的使用,所有Activity的根節點都是FrameLayout,如果所創建Layout是FrameLayout則使用merge標簽作為根節點,其他布局則不可用;

    使用merge標簽的兩個限制:

    merge只能作為xml布局的根標簽;

    當inflater以merge為開頭的布局文件時,必須指定一個父ViewGroup并且必須設置attachToRoot為true;

(6)界面延遲加載技術:

    ViewStub是一個隱藏的不占用內存文件的視圖對象,可以運行時延時健在布局資源文件。當ViewSub被設置為可見或者調用inflate()方法時才會真的區加載這個布局資源文件;

(7)crash的處理:應用超時無響應;

Thread.setDefaultUnCaughtExceptionHandler(Thread.unCaughtExceptionHandler)


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

东宁县| 通山县| 汽车| 孟津县| 周至县| 额敏县| 杭锦旗| 廊坊市| 雅安市| 新蔡县| 探索| 福鼎市| 枞阳县| 黄大仙区| 广宁县| 买车| 常宁市| 望谟县| 磴口县| 林州市| 惠来县| 原平市| 敦化市| 泾源县| 河西区| 大城县| 泸西县| 格尔木市| 呼伦贝尔市| 桂东县| 获嘉县| 磐石市| 宁波市| 襄垣县| 商洛市| 弋阳县| 海丰县| 紫阳县| 朝阳县| 忻城县| 房产|