原创 android之app debug/release檢查

在開發的過程中發佈和測試版本需要進行不同的處理。 例如測試版本打印log信息或者是輸出某些日誌文件,但是正式版本不希望輸出這些信息。 有一個比較簡單的方法是可以在代碼裏面檢測apk是debug還是release。 /** * 判

原创 android之文件存儲目錄介紹

android持久化方式 Android手機存儲分爲:內部存儲和外部儲存。 在Android4.4以前,手機機身存儲就叫內部存儲,插入的SD卡就是外部存儲。 但是在Android4.4以後這兩個存儲的定義又有了一些些變化,新的手機不再有外

原创 android之文件流使用

文件流 JAVA中針對文件的讀寫操作設置了一系列的流,其中主要FileInputStream,FileOutputStream,FileReader,FileWriter四種最爲常用的流。 FileInputStream FileInpu

原创 Android之Executor線程池介紹

Executor Executor是Java中的概念,是一個接口,真正的線程池實現是ThreadPoolExecutor。 它提供了一系列的參數來配置不同的線程池。 ThreadPoolExecutor ThreadPoolExecuto

原创 Android之Looper使用

looper介紹 Looper類別用來爲一個線程開啓一個消息循環。 默認情況下Android中新誕生的線程是沒有開啓消息循環的。(主線程除外,主線程系統會自動爲其創建Looper對象,開啓消息循環) Looper對象通過MessageQu

原创 Android Kotlin之withContext(協程)使用

withContext kotlin 中 GlobalScope 類提供了幾個創建協程的構造函數: launch: 創建協程 async : 創建帶返回值的協程,返回的是 Deferred 類 withContext:不創建新的協程,指

原创 android之GlobalScope(協程)使用介紹

什麼是協程 協程(Coroutines)是一種比線程更加輕量級的存在,正如一個進程可以擁有多個線程一樣,一個線程可以擁有多個協程。 有一點必須明確的是,一個線程的多個協程的運行是串行的。 如果是多核CPU,多個進程或一個進程內的多個線程

原创 Android Studio之Gradle手動下載

Gradle下載 今天實驗的時候,突然發生了gradle下載失敗的問題,於是來調查下解決辦法。 錯誤信息: Error:Unable to find method 'com.google.common.cache.CacheBuilder

原创 Gradle和Maven倉庫介紹

Gradle 介紹 Gradle是一個基於JVM的構建工具,是一款通用靈活的構建工具,支持maven, Ivy倉庫,支持傳遞性依賴管理,而不需要遠程倉庫或者是pom.xml和ivy.xml配置文件,基於Groovy,build腳本使用Gr

原创 android之getDeclaredFields等函數介紹

函數介紹 函數名 介紹 getFields() 獲得某個類的所有的公共(public)的字段,包括父類中的字段。 getDeclaredFields() 獲得某個類的所有聲明的字段,即包括public、private和p

原创 kotlin之委託介紹

委託 委託模式是軟件設計模式中的一項基本技巧。 在委託模式中,有兩個對象參與處理同一個請求,接受請求的對象將請求委託給另一個對象來處理。 委託模式是一項基本技巧,許多其他的模式,如狀態模式、策略模式、訪問者模式本質上是在更特殊的場合採用了

原创 android之Retrofit使用

Retrofit是什麼 Github地址 Retrofit基於okhttp封裝的網絡請求框架, 網絡請求的工作本質上是 OkHttp 完成,而 retrofit 僅負責網絡請求接口的封裝。 Retrofit優勢,就是簡潔易用,解耦,擴展性

原创 Android之Google Gson介紹

Gson GSON 是 Google 提供的用來在 Java 對象和 JSON 數據之間進行映射的 Java 類庫,可以快速的將一個 Json 字符轉成一個 Java 對象,或者將一個 Java 對象轉化爲 Json 字符串。 gson

原创 android之class<?>介紹

Class<T>類型 Class<T>代表這個類型所對應的類 Class<?> Class<?>表示類型不確定的類 Class.forName() 被定義爲返回 Class<?>。 類常量 X.class 被定義爲具有類型 Class<X

原创 Android之獲取packageinfo相關

根據PackageInfo對象獲取APP信息 PackageInfo類包含AndroidManifest.xml文件的信息。 常用字段 含義 String packageName 包名 ActivityInfo[] ac