原创 用命令行將遠程服務器的 MySQL 表數據導出到本地

第一步:root 身份 ssh 登錄到遠程機器 ssh root@server_ip_address 「server_ip_address」換成你的遠程服務器的 ip 地址 第二步:遠程機器上進入 MySQL 控制檯 mys

原创 Android 架構組件設計思想總結

Google 爲幫助 Android 開發者更快更好地開發 App,推出了一系列組件,這些組件被打包成一個整體,叫作 Android Jetpack,其包含的組件如下圖所示: 舊 support 包也被整合進了 Jetpack

原创 嘗試 mybatis 返回 map 後的無功而返

mybatis 不熟,掉坑裏了,好久才爬出來,記錄一下填坑過程。 背景很簡單,需要統計不同狀態下的訂單數,很自然就想到了用 ORDER BY,寫了下面這個 SQL(真實 sql 比這個複雜很多): SELECT status,

原创 Fresco源碼解析 - DataSource怎樣存儲數據

datasource是一個獨立的 package,與FB導入的guava包都在同一個工程內 - fbcore。 datasource的類關係比較簡單,一張類圖基本就可以描述清楚它們間的關係。 DataSource 是一個

原创 解決 appcompat 1.1.0 導致 webview crash 的問題

Android SDK 太不讓人省心了,正式版本居然也埋雷。 前段時間把 support 升級到了 androidx,appcompat 自動升級了新版本 androidx.appcompat:appcompat:1.1.0。 簡

原创 Android Data Binding 的一個bug

跟着官方教程學習數據綁定的用法,功能確實非常強大,這是 Android 向 MVVM 邁出的一大步,也是 Native 的開發方式逐漸向 Web 靠攏的一小步。 其中一個綁定方式是直接使用資源數據,例如: android:pad

原创 Fresco源碼解析 - Hierarchy / View / Controller

Fresco 是一個典型的 MVC 模型,只不過把 Model 叫做 DraweeHierarchy。 M : DraweeHierarchy V : DraweeView C : DraweeController Draw

原创 Fresco源碼解析 - DraweeView

DraweeView 是 Fresco 的“門面”,負責顯示由 DraweeHierarchy 提供的數據(Placeholder、Actual Image、Progress Drawable etc),DraweeContro

原创 爲ViewPager添加一個indicator

注意: CirclePageIndicator不會覆蓋 ViewPager 的 OnPageChangeListener ViewPager是Android提供的一個良心組件,有了它分分鐘就可以實現了一個水平滑動的分頁功能,

原创 Fresco源碼解析 - 本地編譯

第一次寫專欄,如有表述不好或者理解錯誤的地方,請各位讀者不吝賜教,本人一定虛心接受並第一時間改正。 作爲專題第一篇,先從最簡單的開始,順便找找感覺。 Fresco 是 facebook 在今年的 F8 大會上宣佈開源的一個用

原创 Kotlin 教程之「接口」

接口 Kotlin 的接口非常類似於 Java8。可以包含抽象方法的聲明以及方法的實現。接口與抽象類的區別是不能存儲狀態。接口可以有屬性,但是必須聲明爲抽象類型或者實現了訪問器。 接口通過關鍵字 interface 來定義: in

原创 Kotlin 教程之「返回和跳轉」

返回和跳轉 Kotlin 支持三個結構化的跳轉表達式: return 默認返回就近的封閉(enclosing)函數或者匿名函數 break 中斷就近的封閉循環 continue 繼續執行就近封閉循環的

原创 Android中如何優雅地自定義一個View

Android中自定義View的實現比較簡單,無非就是繼承父類,然後重載方法,即便如此,在實際編碼中難免會遇到一些坑,我把自己遇到的一些問題和解決方法總結一下,希望對廣大碼友們有所幫助。 注意點① 用xml定義Layout時,

原创 Fresco源碼解析 - 初始化過程分析

使用Fresco之前,一定先要進行初始化,一般初始化的工作會在Application.onCreate()完成,當然也可以在使用Drawee之前完成。 Fresco本身提供了兩種初始化方式,一種是使用使用默認配置初始化,另一種是

原创 Kotlin 教程之「控制流」

控制流:if, when, for, while if 表達式 Kotlin 的 if 是一個表達式,也就是說,它可以返回一個值。因此三元操作符(condition ? then : else)就失去用武之地了,因爲普通 if 就