原创 Android Dex分包原理、方案和加解密

      the_q系列:1、ant方式進行dex分包《Android Dex分包》 2、Android Dex分包—Gradle方式 3、android Dex文件的加載 Android Studio中Dex分包方案 Android

原创 Android打包apk原理與流程

Android Dex分包    一、Ant原始命令行打包流程。 首先總結一下apk打包的一個大致流程,方便後邊大家理解。 大致分爲三步,每一步中又包含了一些詳細的操作步驟: 打包生成.dex文件。 打包生成resouse.zip文件。

原创 Java分佈式跟蹤系統Zipkin

Java分佈式跟蹤系統Zipkin系列 Java分佈式跟蹤系統Zipkin(十):Zipkin源碼分析-ElasticsearchStorage Java分佈式跟蹤系統Zipkin(九):Zipkin源碼分析-MySQLStorage J

原创 Android WebSocket的使用

Android WebSocket實現即時通訊功能 Android WebSocket 長連接推送 Android使用OkHttp WebSocket 基於okhttp和RxJava封裝的自動重連的WebSocket github:htt

原创 高等數據加密——非對稱加密算法

對稱加密算法僅有一個密鑰,既可用於加密,亦可用於解密。而非對稱加密算法擁有兩個密鑰,一個用於加密,另一個則用於解密。相比對稱加密算法的單鑰體系,非對稱加密算法的雙鑰體系更爲安全。但非對稱加密的缺點是加解密速度要遠遠慢於對稱加密。 目前,J

原创 終極武器——數字證書

數字證書也稱電子證書,由數字證書頒發認證機構(CA)簽發才具備可認證性。數字證書採用了公鑰基礎設施(PKI),使用了相應的加密算法確保網絡應用安全性: 非對稱加密算法用於對數據進行加密/解密操作,確保數據的機密性。 數字簽名算法用於數據進

原创 android Okio

深入理解okio的優化思想 Android 善用Okio簡化處理I/O操作  

原创 JNI開發(一) 靜態註冊與動態註冊

靜態註冊 原理: 根據函數名來建立 java 方法與 JNI 函數的一一對應關係; 實現流程: 編寫 java 代碼; 利用 javah 指令生成對應的 .h 文件; 對 .h 中的聲明進行實現;弊端: 編寫不方便,JNI 方法名字必須遵

原创 JNI開發(三)局部引用、全局引用和弱全局引用

這篇文章比較偏理論,詳細介紹了在編寫本地代碼時三種引用的使用場景和注意事項。可能看起來有點枯燥,但引用是在JNI中最容易出錯的一個點,如果使用不當,容易使程序造成內存溢出,程序崩潰等現象。所以講得比較細,有不足的地方,還請見諒!《Andr

原创 JNI開發(二)方法簽名與Java通信

本篇文章將通過以下兩部分內容來介紹JNI開發: Android NDK開發 JNI類型簽名和方法簽名 JNI實現java與c/c++相互通訊 一、Android NDK開發 JNI類型簽名和方法簽名 在Java存在兩種數據類型: 基本類型

原创 5年Android提升面試題

在博主認爲,對於Android面試以及進階的最佳學習方法莫過於刷題+博客+書籍+總結,前三者博主將淋漓盡致地揮毫於這篇博客文章中,至於總結在於個人,實際上越到後面你會發現面試並不難,其次就是在刷題的過程中有沒有去思考,刷題只是次之,這又是

原创 Java併發編程:ConcurrentLinkedQueue

簡介 在併發編程中我們有時候需要使用線程安全的隊列。如果我們要實現一個線程安全的隊列有兩種實現方式一種是使用阻塞算法,另一種是使用非阻塞算法。使用阻塞算法的隊列可以用一個鎖(入隊和出隊用同一把鎖)或兩個鎖(入隊和出隊用不同的鎖)等方式來實

原创 Java併發編程:synchronized、Lock、Volatile

Java併發編程:Lock Java併發編程:volatile關鍵字解析    雖然多線程編程極大地提高了效率,但是也會帶來一定的隱患。比如說兩個線程同時往一個數據庫表中插入不重複的數據,就可能會導致數據庫中插入了相同的數據。今天我們就來

原创 Java加密體系-java.security包

一、JCA/ JCE JCA(Java Cryptography Architecture) 是Java體系結構,提供了基本Java加密框架,比如證書、數字簽名、消息摘要、祕鑰對生成器等,在java.security包中實現。 JC

原创 Router(三):自定義XML協議

前言 之前我們把ARouter的原理分析了一遍,如果你是剛啓動的新項目,建議立刻使用,哪天運營有這個需求了,你就可以牛逼的對他說,我早就已經做好了。 但是老項目就會有一丟丟的尷尬,所以我們要在ARouter的基礎上,獨立深度鏈接的功能,然