原创 static和volatile的使用

1.static保證唯一性,就是在主內存中是唯一的變量。 2.volatile是保證可見性,就是指在工作線程和主內存的數據的一致性,改變了工作線程中volatile修飾的變量,那麼主內存也要發生更新。 所以,volatile和static

原创 passcodeview的簡單使用

最近做一個密碼鍵盤,使用了GitHub的開源庫,倉庫地址爲:https://github.com/kevalpatel2106/PasscodeView 做一個類似界面,如圖: passcodeview的簡單使用: git clone項

原创 Android事件分發機制

一、什麼是Android事件分發機制 Android事件分發機制是Android最基本的機制之一,不論是按鍵的事件,還是消息的事件,在Android的系統運行中,事件的分發均採用同一種思想來實現。 我們這裏通過分析android的按鍵事件

原创 ProcessList.java文件解讀

package com.android.server.am; import static com.android.server.am.ActivityManagerDebugConfig.TAG_AM; import static

原创 android進程生命週期和ADJ

原文地址:https://shimo.im/docs/D42dNHt99Zw5Yvkd/ 一、進程生命週期 在回收資源的時候,系統會根據進程的重要性來從低到高的回收,劃分爲5個級別: 1.前臺進程(Foreground process

原创 GSON格式插件:GsonFormat

  一、Postman Postman是接口測試工具,基於Chrome的插件(自備梯子)。 該工具可以獲取服務器的數據,發送數據到服務器獲取返回結果等操作。 該工具使用教程請查看文檔。   我們將Postman獲得的json數據通過Gs

原创 Git原理筆記(一)

VCS: version control system 參考文檔   一、底層命令(Plumbing)和高層命令(Procelain) 高層命令即我們常用的那些git命令。 除去這些命令,以UNIX風格使用或者由腳本調用的命令,一般稱爲底

原创 descendantFocusability用法

這個屬性主要是爲了解決焦點問題。 兩種情況: 1.ListView的item有Button時,點擊item無響應。 2.在ScrollView時,裏面包裹的內容超過了屏幕的長度,當進去scrollView直接自動滑動到最底部。   這兩個

原创 RelativeLayout屬性詳解

官網地址   第一類屬性 屬性值爲true或者false android:layout_centerHrizontal 水平居中 android:layout_centerVertical 垂直居中 android:layout_cent

原创 多線程之Thread、Runnable、Callable、Future、FutureTask

  一、知識基礎: 1.Thread、Runnable、Callable:都是線程 2.Thread特點:提供了線程等待(wait)、線程睡眠(sleep)、線程禮讓(yield)等操作。 3.Runnable和Callable特點:都是

原创 MB/s、Mb/s、Mbps區別

1Kb = 1024bit 1KB = 1024Byte 1Mb = 1024Kb 1MB = 1024KB   1Byte = 8 bit 1MB = 8 Mb 1Mb = 0.125MB   【本質:都是1Byte = 8 bit的換

原创 Git分支相關命令

將本地分支提交到遠端命令:git push origin [name] 切換分支命令: git checkout [name] 刪除本地分支命令:git branch -d [name] 【強制刪除使用大寫字母D】 刪除遠端分支命令:gi

原创 網絡測速全解析之一:自定義View基礎知識(九)

一、MotionEvent講解: 單點觸控: 事件 簡介 ACTION_DOWN 手指 初次接觸到屏幕 時觸發。 ACTION_MOVE 手指 在屏幕上滑動 時觸發,會多次觸發。 ACTION_UP 手指 離開屏幕 時觸發。 ACTION

原创 網絡測速全解析之一:自定義View基礎知識(八)

一、事件分發機制詳解: 大佬名言:所有的源碼都是爲了適應具體的應用場景而寫的,只要能夠理解運用場景,理解源碼也就十分簡單了。 核心問題是:正確理解在實際場景中事件分發機制的作用。   常見事件 事件 簡介 ACTION_DOWN 手指 初

原创 網絡測速全解析之一:自定義View基礎知識(二)

一、Canvas 畫布操作: 畫布操作的意義在於幫忙我們用更容易理解的方式做出想要的效果。 (所有的畫布操作都隻影響後續的繪製,對之前的繪製內容沒有影響) 1.畫布操作 (1)位移(translate) translate是平移操作,基於