Android開發技術周報 Issue#50

mxd2 9年前發布 | 33K 次閱讀 Android

 

新聞

  1. Android系統兩大漏洞曝光:影響超10億臺設備

    安全研究人士周四披露了谷歌Android移動操作系統的兩大嚴重漏洞,這些漏洞令超過10億臺Android設備面臨被黑的風險。研究人士稱,這意味著“幾乎每臺Android設備”都會受到影響,無論其所搭載的是1.0版本Android系統還是最新的5.0版本。

教程

  1. 10行配置從Android Studio + Gradle構建體系遷移到非死book的BUCK構建體系

    0行配置從Android Studio + Gradle構建體系遷移到非死book的BUCK構建體系,且保持兩者同時兼容使用,編碼使用AS,享受安卓最強大IDE的功能,打包、安裝、測試用BUCK,享受安卓最快構建系統的暢快淋漓,兩者互不干擾。從此媽媽再也不用擔心我在編譯安卓工程時睡著了,而且真的只要10行!

  2. Android 中 View 炸裂特效的實現分析

    前幾天微博上被一個很優秀的 Android 開源組件刷屏了 - ExplosionField,效果非常酷炫,有點類似 MIUI 卸載 APP 時的動畫,先來感受一下。ExplosionField 不但效果很拉風,代碼寫得也相當好,讓人忍不住要拿來好好讀一下。ExplosionField 繼承自 View,在 onDraw 方法中繪制動畫特效,并且它提供了一個 attach2Window 方法,可以把 ExplosionField 最為一個子 View 添加到 Activity 上的 root view 中。

  3. Android應用Loaders全面詳解及源碼淺析

    在Android中任何耗時的操作都不能放在UI主線程中,所以耗時的操作都需要使用異步實現。同樣的,在ContentProvider中也可能存在耗時操作,這時也該使用異步操作,而3.0之后最推薦的異步操作就是Loader。

  4. 使用Google官方support-annotation利器

    support-annotations是android官方提供的support projects中的一員,提供了非常多有用的annotations來幫助我們提高我們的代碼質量和api的健壯性!這個lib非常輕量級,以 annotation為主,幾乎所有的annotations的Retention都是CLASS,沒有任何Runtime overhead,21.0.0總共方法數只有3,而22.2.0增加了Thread、CheckResult等高級支持,總方法數也只有20

  5. Android應用程序通用自動脫殼方法研

    Android應用程序相比傳統PC應用程序更容易被逆向,因為被逆向后能夠完整的還原出Java代碼或者smali中間語言,兩者都具有很豐富的高層語義信息,理解起來更為容易,讓程序邏輯輕易暴露給技術能力甚至并不需要很高門檻的攻擊者面前。因此Android應用程序加固保護服務隨之應運而生。從一開始只有甲方公司提供服務到現在大型互聯網公司都有自己的加固保護服務,同時與金錢相關的Android應用程序例如銀行等也越來越多開始使用加固保護自己,這個市場在不斷的擴大。

  6. 美團Android資源混淆保護實踐

    Android應用中的APK安全性一直遭人詬病,市面上充斥著各種被破解或者漢化的應用,破解者可以非常簡單的通過破解工具就能對一個APK進行反編譯、破解、漢化等等,這樣就可以修改原有代碼的邏輯、添加新代碼、添加或修改資源、或者更有甚者植入病毒等等,從而破壞原有APK的安全和用戶體驗,最終傷害到用戶和原有的開發者。

  7. dexopt的源碼跟蹤

    一般都是從AndroidStudio run出來的apk安裝到手機,這里從 adb shell pm install -r xxx.apk 開始看起:找到android/frameworks/base/cmds/pm/src/com/android/commands/pm /pm.java pm命令的源碼,main函數調用了new Pm().run(args);找到 runInstall()方法 哦剛才的常用參數 "-r" 表示覆蓋安裝模式 INSTALL REPLACE EXISTING,runInstall()方法最終會調用

  8. 其實你不知道MultiDex到底有多坑

    遭遇MultiDex,愉快地寫著Android代碼的總悟君往工程里引入了一個默默無聞的jar然后Run了一下, 經過漫長的等待AndroidStudio構建失敗了。

  9. 基于非死book Buck改造Android構建系統之基本概念

    使用非死book Buck對已有的Android項目進行改造,首先需要理解Buck的一些基本概念,在這個的基礎上,我們才能既快又好的進行改造工作。本文就先來介紹4 個主要的概念,它們對于編寫Buck構建腳本至關重要:構建規則(Build Rule)、構建目標(Build Target)、構建文件(Build File)、構建目標模式(Build Target Pattern)

代碼&開源庫

  1. Init

    nit幫助Android應用調度復雜的任務流(如應用初始化流程),如下一節圖示的那種任務流,處理類型、優先級、多進程(像是每個進程都會執行application的onCreate),任務依賴,提高應用啟動效率。

  2. Timber

    一個很漂亮的Material Design風格音樂播放器。

  3. AndroidTDDBootStrap

    一個Android TDD 實現項目,使用了一系列表新技術以及最佳實踐。

  4. RxPermissions

    一個可讓你通過RxJava來操縱Android M permission模型的庫。

  5. YahooNewsOnboarding

    一個模仿雅虎新聞功能介紹引導效果的Demo。

  6. Pancakes

    一個可以讓你像FragmentManager管理Fragment那樣去管理View的庫。

  7. smooth-app-bar-layout

    Smooth 版本的Google Support Design AppBarLayout。

  8. android-vts Android 安全隱患測試套件。

  9. PianoView

    仿最美應用的琴鍵控件。

  10. MIUIv6-UninstallAnimation

    仿MIUI卸載動畫控件 改進使用了貝塞爾曲線,過度更加自然。

  11. ChangeSkin

    基于插件式的Android換膚框架,支持app內和或者外部插件式提供資源的換膚方案,無需重啟Activity。

 本文由用戶 mxd2 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!