原创 混淆Proguard文件

1,Proguard基本介紹 壓縮和優化使得編譯後apk包更小混淆可以保證代碼在被反編譯後很難讀懂,防止逆向工程 2,ProGuard生成文件 mapping.txt —> 表示混淆前後代碼的對照表,這個文件非常重要。如

原创 DropMenuWidget(下拉二級菜單)

概述 1,使用效果 2,源碼結構 3,場景 4,使用方法 5,源碼分析 6,github地址 1,使用效果 1)下拉菜單 2)二級列表 3)整合 2,源碼結構 app:爲示例工程 LibSe

原创 Android源碼_Activity加載View

0,主體簡介 從ActivityThread到開始加載Activity時,如何將View加載出來 1,時序圖 2,細節點 2-1),setContentView中的layoutResId是如何加入DecorView的 publ

原创 Android源碼_Activity啓動

0,主體簡介 參考:Android6.0 系統源碼 從ActivityThread到Activity啓動的onCreate、onStart、onResume生命週期 1,時序圖 2,細節點 暫無 3,總結 ActivityThread.

原创 Android_國密_SM2、SM3、SM4

因業務要求,RSA、AES、MD5等加密方式,要合規,需要替換成,SM2、SM3、SM4。因此,個人整理資料,實現了一份。   一:參考 https://github.com/gotoworld/hsd-cipher-sm -- 代

原创 Android_指紋支付_安全問題_前後端交互邏輯

具體代碼不詳細介紹,可以自己去看這些資料,只詳細介紹最終的客戶端和服務器端交互邏輯。 /********************************************1,參考*************************

原创 Android_接入微信demo(分享、支付、登錄)_簽名無效

解決的問題:接入微信時,從官網下載的demo,運行後提示簽名無效。 解決的方案: 1)自己申請一個賬號,使用自己的包名和簽名,然後再寫個人測試程序 2)直接使用微信的demo,測試實際效果   方案1,需要申請賬號,走複雜的流程;以及寫個

原创 Android Studio發佈aar到Jcenter,插件找不到

參考: https://www.jianshu.com/p/5be222e98efc?from=jiantop.com // gradle使用 https://github.com/nuuneoi/JCenter/blob/master/

原创 Java_集合_HashSet(2)

問題:儲存方式,如何實現自增,如何查詢數據,如何獲取整體大小由於HashSet比較簡單,就貼單個簡化源碼public class HashSet<E> extends AbstractSet<E> implements Set<E

原创 Android中Looper原理

參考:https://www.zhihu.com/question/34652589 // Handler https://blog.csdn.net/rock_joker/article/details/76735333 // Linu

原创 圖片壓縮

參考框架:https://github.com/Curzibn/Lubanhttps://github.com/zetbaitsu/Compressor個人實現(kotlin語言)https://github.com/yline/as_x

原创 Java的UML類圖(一)

參考:http://www.cnblogs.com/samchen2009/p/3315999.html 1,總圖案:2,逐個介紹2) 實現:Realization實現就是實現定義的接口協議,通常使用implements關鍵字6) 繼承:

原创 Java的UML類圖(二)

參考:http://www.cnblogs.com/samchen2009/p/3315999.html 前言    本文依次逐個介紹 “實現”、“繼承”、“依賴”、“引用”、“聚合”、“組合”;每一個以案例的形勢進行表述1,實現:Rea

原创 Java_集合_ArrayList(4)

1,儲存方式public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.Se

原创 Android_混淆_常用混淆(3)

1,整體分類#-----------------------------------實體類----------------------------------------- # TODO ADD2 #-------------------