原创 Proguard源碼分析(四) 壓縮

上一次我們講了seed文件,這次我們說壓縮,對應的輸出文件是usage,可以通過命令-printusage usage.txt來配置 壓縮的目的是爲了刪除一些我們不使用的類和方法,從而達到字節碼壓縮的目的。 這裏我貼出我的微博:http

原创 子墨對酒《三國殺》裏論模式(二)門面模式

學 習模式的人對門面模式都不會太陌生,如果說工廠模式是對對象的高層次抽象的話,那麼門面模式就是對對象,就是一種更高層次的抽象。這麼說可能不好理解,我 們舉個很好理解的例子,我們知道cpu的目的是爲了運算,而運算我們又分成解釋和計算。這分

原创 Android應用程序資源的編譯和打包過程分析 (轉自老羅的博客)

    我們知道,在一個APK文件中,除了有代碼文件之外,還有很多資源文件。這些資源文件是通過Android資源打包工具aapt(Android Asset Package Tool)打包到APK文件裏面的。在打包之前,大部分文本格式的

原创 Android各版本新增功能一覽(轉)

Android3.0新增功能:主要增加全息主題     1、Fragments:較activity粒度小的擁有獨自生命週期的模塊。可作爲acitivity的一部分,activity通過FragmentManager管理獨自的fragme

原创 Proguard源碼分析(三)Seed文件

Seed文件就是保持住的類文件,直白一點就是不被混淆的文件,他主要是通過printSeeds() 方法實現 這裏我們要引入一個類ClassVisitor 。這個我們要區分ClassPoolVisitor ClassPoolVisitor

原创 Java中循環嵌套跳出的高效寫法

(下面寫的這些並不是Jdk的新特性,也不是Java某個版本提供的語法糖,不過是java語言早就提供的書寫技巧,但是卻被一直忽略的技巧)最近代碼中總能用到循環嵌套的情況,大致模板如下:forech1(..){

原创 子墨對酒《三國殺》裏論模式(肆)單例模式

當設計模式的觀點被衆人所推崇的時候,單例模式似乎已經成了掌握設計模式時候要掌握的基礎模式。當然我並不認爲設計模式中有基礎和非基礎之分,我只覺得模式的應用有普遍和非普遍之別。單例模式的普遍並不體現在應用場景多

原创 子墨對酒《三國殺》裏論模式(三)適配器模式

如果你是一個Android程序員,那麼你一定對適配器模式情有獨鍾。如果你還不知道 適配器模式爲何物,你還陶醉在自己對AdapterView子類運用的有多熟的暗中自喜中,希望這篇文章能給你當頭棒喝。人們常常舉電腦適配器的例子作爲 適配器模

原创 Proguard源碼分析(六)前文總結

目前,我們讀了Proguard的代碼,相信已經開始對訪問者模式和裝飾器模式有很深的理解,現在我們再帶着這兩個模式認真的回顧下代碼,因爲只有這樣,我們才能更好的進行下面的代碼閱讀。但是如果你還帶着疑問,不妨看下前面的章節,或者看一些有關設計

原创 java class文件結構(轉)

學習Java的朋友應該都知道Java從剛開始的時候就打着平臺無關性的旗號,說“一次編寫,到處運行”,其實說到無關性,Java平臺還有另外一 個無關 性那就是語言無關性,要實現語言無關性,那麼Java體系中的class的文件結構或者說是字

原创 Proguard源碼分析(二)輸出文件

ProGuard outputs thefollowing files after it runs: dump.txt···描述apk文件中所有類文件的內部結構  PrintStream ps = createPrintStream(c

原创 gvim的安裝以及配置 (轉)

將自己的安裝和配置過程記錄下來供參考:安裝: sudo apt-get install vim-gtk vim-doc cscope 創建啓動項 sudo cat > /usr/share/applications/gvim.de

原创 Proguard 源碼分析 (七) 混淆

本章我們講Proguard非常重要的一個步驟:混淆Obfuscator 混淆的目的很明顯,是爲了混淆語義。 我們能輕車熟路的找到混淆的源頭: Obfuscator 的execute方法 我們來看一下就行混淆器給我們設置了怎樣的訪問者:

原创 NotificationManager和Notification的使用總結(轉)

這幾天一直在修改twigee的源代碼,其中一個要加入的功能是常駐Notification欄,以前寫的時候只能出現 在“通知”這一組中,想把它放在“正在運行”組中卻不知道怎麼放,查了下官方文檔,找到了方法,在notification的f

原创 Linux Shell編程學習筆記(一)變量和文件描述符

看了<Unix的設計思想>,情不自禁希望重新學習我曾經忽視的linux的shell腳本編程。我並不是隨波逐流,也不是那種頑固的技術黨,只是很純粹的想了解這麼技術,如果你有什麼好的想法,也可以跟我交流,下面是我的微博地址: http://