原创 對於Android的Activity啓動模式的一些總結和理解

安卓Activity的啓動模式 1.1   兩種啓動方式 1.      在AndroidMainfest.xml中啓動 例如: AndroidMainfest.xml.xml中設置Activity的launchMode=“singleT

原创 WebView加載自定義error頁面,解決自定義error頁面但是原始error頁面一閃而過的問題

一般來說,webView加載自定義error頁面是這樣做:例如,我下面的代碼在error之後加載了緩存頁面. mWebView.setWebViewClient(new WebViewClient() { @Ov

原创 ViewPager嵌套Fragment時Fragment的生命週期問題

我是StackFlow的搬運工~ ViewPager嵌套Fragment的時候,Fragment的onResume()和onPause()不能很好的反應出Fragment的可見和不可見.網上也有網友說可以用setUserVisibleHi

原创 Android 5.0以上通過UsageStatsManager類 獲取應用使用情況(精品)

轉自:http://www.jianshu.com/p/f88b6a9f7462 在Android5.0之後API 出現了UsageStatsManger類 來獲取用來提供給應用手機相關組件的使用統計,編譯版本最少要SDK21.(註明

原创 樹及樹的遍歷(二)-----二叉樹前序、中序、後序遍歷非遞歸寫法的透徹解析

遞歸寫法,只要理解思想,幾行代碼。可是非遞歸寫法卻很不容易。這裏特地總結下,透徹解析它們的非遞歸寫法。其中,中序遍歷的非遞歸寫法最簡單,後序遍歷最難。我們的討論基礎是這樣的: ? 1 2 3 4

原创 Android N的URL類的變化

在做項目的時候,由於我使用到了URL類的反射,然後在Android N上適配發現報錯 No field streamHandlers in class java.net.URL 於是,查看了23和24的源碼,發現URL類有一些變化: 23

原创 使用uiautomator做UI測試

在Android 4.1發佈的時候包含了一種新的測試工具–uiautomator,uiautomator是用來做UI測試的。也就是普通的手工測試,點擊每個控件元素 看看輸出的結果是否符合預期。比如 登陸界面 分別輸入正確和錯誤的

原创 Mac下AndroidStudio中手動配置Gradle

由於網絡原因,Gradle在AndroidStudio中的更新會非常慢,所以試着離線配置Gradle 首先先進入Gradle官網http://gradle.org/gradle-download/下載最新gradle包,如果官網打開速度慢

原创 android熱更新機制

本文轉自:http://dev.qq.com/topic/57a31921ac3a1fb613dd40f3 Android 不僅系統版本衆多,機型衆多,而且各個市場都各有各的政策和審覈速度,每次發佈一個版本對於開發同學來講都是

原创 Android 4.4以下ListView addHeader和addFooter放在setAdapter之後導致異常的原因分析和解決

問題重現: 在Android 19之前,ListView的addHeader和addFooter必須在setAdapter之前調用,否則就會有異常,Android 19以及之後是沒有這個問題的。異常的具體表現爲: 1.在setA

原创 樹及樹的遍歷(一)

樹(Tree) 樹,顧名思義,長得像一棵樹,不過通常我們畫成一棵倒過來的樹,根在上,葉在下。不說那麼多了,圖一看就懂: 當然了,引入了樹之後,就不得不引入樹的一些概念,這些概念我照樣儘量用圖,誰會記那麼多文字? 樹這種結構還可

原创 安卓自定義View詳解

安卓自定義View 知識點:1.ViewRoot和DecorView2.MeasureSpec3.measure layout draw4. 定義View ViewRoot和DecorView