原创 面試Java基礎之ArrayList和LinkedList的區別

前言       我們在面試的時候,經常遇到面試官問的Java基礎問題,今天記錄一個經常被問到的問題————ArrayList和LinkedList的區別。 二者區別      我們先說結論,然後再從源碼角度去看具體實現。 前者

原创 EventBus源碼解析(一)———EventBus的註冊通過反射方式查找訂閱者

文章列表 EventBus源碼解析(一) EventBus源碼解析(二) EventBus源碼解析(三) 前言 在公司項目中經常用到EventBus庫,它使消息的傳遞變得相當簡單,但是隻會用是不行的,今天就來分析一下EventBu

原创 自定義自動換行功能的LinearLayout

前言 最近項目中有個需求,就是可以給用戶動態添加標籤。標籤最大的特點就是橫向排列,並且可以自動換行,而且標籤的內容自定義,所以標籤的長度是不固定的。 網上這種開源的一抓一大把,懶得找了,所以自己實現了一個。 先看一下效果 分析問題

原创 EventBus源碼解析(三)———EventBus的註冊編譯期獲取訂閱者信息

文章列表 EventBus源碼解析(一) EventBus源碼解析(二) EventBus源碼解析(三) 前言 在EventBus源碼解析(一)中,我們着重介紹了基本使用方法,解析了EventBus的註冊流程的源碼。 在Event

原创 EventBus源碼解析(二)———EventBus事件發送

文章列表 EventBus源碼解析(一) EventBus源碼解析(二) EventBus源碼解析(三) 第一篇文章中我們講到了事件的註冊,本篇文章講解,事件是如何發送出去的。EventBus的post方法系列。 Post方法 /

原创 隱式啓動Activity----------IntentFilter的匹配規則

啓動Activity的方法有顯示啓動和隱式啓動,顯示啓動很簡單,不在說明;平時使用隱式啓動使用的少,以至於他的匹配規則運用不熟練,今天在此記錄一下。 隱式啓動Activity的時候,需要在Intent中添加過濾規則,這個過濾規則需

原创 Android8.0發送廣播注意事項

今天在做項目的時候,用到廣播,需要發送一個自定義廣播,測試機的版本是8.0。結果發送的廣播收不到,在此記錄一下。 廣播接收器使用的是靜態註冊 <receiver android:name="com.test.broadcast.B

原创 記錄一下Android事件分發機制

前言 現在網上已經很多事件分發機制解析的文章了,很多文章講的很詳細。但是發現每次看完相關的文章後,當時看的挺明白,過後就忘,算了還是自己寫篇文章記錄一下,加深印象。加深理解。 儲備知識 看本篇文章就默認的認爲你已經掌握了以下幾點:

原创 EventBus源碼解析(一)

前言 在公司項目中經常用到EventBus庫,它使消息的傳遞變得相當簡單,但是隻會用是不行的,今天就來分析一下EventBus的源碼。看看它到底是什麼原理。 基本用法 由淺入深,還是先來看一下EventBus是怎麼用的,已經把Even

原创 Java基本類型佔位數總結

經常把Java基本類型的字節數和位數等一些信息搞混,今天做一個表格,總結一下。 類型 字節數 位數 表示範圍 byte 1字節 8位 -128~127 = -272^727~272^727-1 short 2字節 1

原创 系統“內存重啓”後,Activity和Fragment的生命週期淺談

前言 昨天定位一個線上問題,涉及到Activity和Fragment的生命週期調用先後順序的問題,今天拿來記錄一下這個問題。 正常流程 先看官方給出的生命週期流程圖。 Activity生命週期流程圖 Fragment生命週期流程

原创 OkHttp3源碼分析

前言 平常開發Android App的時候,經常用到OkHttp,不能只停留在會用的階段,還要知道其原理。今天就來分析一下OkHttp3的源碼。 基本用法 以post請求爲例,基本用法如下: OkHttpClient clien

原创 Mac通過SSH完成免輸入密碼登錄阿里雲服務器

前言 剛買的阿里雲服務器,如果想在服務器上搞點什麼東西,需要先登錄進服務器,每次還得手動輸入密碼,太麻煩了。所以想通過ssh快捷登錄,記錄一下配置過程。 主要分三步: 1、拿到mac上的公鑰和私鑰 2、將公鑰放到服務器

原创 Android之webview遇到的問題記錄

問題一、cookie同步問題 有一個需求,在android中需要通過webview打開h5頁面,並且需要把登錄狀態帶到h5頁面中,可以通過給webview要加載的url設置cookie的方式,同步登錄狀態。代碼如下: public voi

原创 Android撥打電話等功能實現及其延伸

前言 項目中經常用到點擊一個button,直接撥打電話的功能。今天就由此功能系統的記錄一下相關知識點。 一、撥打電話功能 有兩種方法: 第一種如下: Intent intent = new Intent(Intent.ACTION_CA