原创 DokuWiki學習筆記

爲dokuWiki添加模板 方式一步驟: 1. 下載模板 地址 2. 將檔案(通常包含全部所需的檔案)解壓縮到 lib/tpl/ 文件夾1) 3. 使用設定管理員選擇新的樣

原创 Android 源碼解析

廢話不多說直接上github的地址 Android源碼解析

原创 TabLayout 與ViewPager 搭配tab內容不顯示問題

遇到這個問題請在setupWithViewPager 之後在給每個tab設置內容不然會被重置 viewPager.setAdapter(pagerAdapter); tabLayout.setTa

原创 ReactNative學習筆記一

重點: github地址 在運行demo的時候可能會運到一些問題: 出現:ReactAndroid:downloadBoost error問題, 解決辦法:下載 boost_1_63_0.tar.gz 放到react-na

原创 Cornerstone 將已忽略文件恢復

如果你用的Cornerstone管理的你的SVN倉庫,當你想把某一次忽略的文件從忽略列表中恢復正常的時候請看本教程,大神請繞過。 View ------   然後你忽略的文件就會重新在列表中出現

原创 Handler 源碼解析

這篇文章是跟蹤源碼看handler是如何發消息的。 從sendMessage(Message msg)開始吧 public final boolean sendMessage(Message msg) {

原创 Atlas 源碼解析(二)

總結:Atlas hook Resource流程 1.在軟件啓動的時候hook系統的Resource對象 2. 調用Resource 對象的getAssets()方法獲取AssetManager對象(暫時稱爲舊的的as對象) 3.

原创 Atlas 源碼解析(一)

簡述:這篇文章僅僅介紹atlas的基本實現原理。 這是atals中bundle加載過程包括class 和 resource 第15步: if(!installingBundles.containsKey(location) &&

原创 數據結構之隊列的實現

java 實現 /** * Created by duia on 2018/5/4. * 鏈表實現隊列 */ public interface IQueue<T> { /** * 入隊 * @pa

原创 OSGI 角度理解Atlas 類加載機制

前言: 要想明白Atlas的類加載機制,就要了解OSGI 框架,因爲查看Atlas源碼會發現Atlas的核心思想就是OSGI。 OSGI osgi 的主要特點是有靈活的類加載器框架,osgi的bundle類加載器之間只有規則沒有固

原创 Android 之Application和Resource 實例化過程

Application 實例化過程 //我們的ActivityThread就是通過這個Handler來通知啓動Application的 //並且Activity也是它通知啓動的具體可以看ActivityThread中各種handle開

原创 JNI 持續總結

java 調用Native代碼 編寫一個java類,並且在某些方法簽名的修飾中加上native 修飾符。 使用javac 命令編譯第一步中的java類,使之成爲一個class文件。 使用javah命令將第二步的class文件作爲輸入

原创 c 語言經典100題

// 題目:有1、2、3、4個數字,能組成多少個互不相同且無重複數字的三位數?都是多少? #include <stdio.h> int main(int argc, const char * argv[]) { printf(

原创 ThreadLocal 源碼簡介

簡單介紹線程內部存儲數據存儲類 ThreadLocal ThreadLocal的誕生或者說ThreadLocal要解決的問題 有些時候一個線程中的任務過於複雜,這可能表現爲函數調用棧比較深以及代碼入口 的多樣性, 在這種情況下我們又需要

原创 Atlas通信方式之——RemoteTransactor

簡述: Atlas提供了3中通訊方式分別是:RemoteTransactor、RemoteView、RemoteFragment. RemoteTransactor是RemoteView、RemoteFragment 通訊方