1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        推薦兩個非常實用的開源項目,提高開發(fā)效率!

        共 2392字,需瀏覽 5分鐘

         ·

        2020-08-15 12:21

        熱文推薦:

        1.SDK-Analysis

        前言

        隨著對 apk 內(nèi)部集成 SDK 調(diào)研需求的增加,實現(xiàn)自動化檢測 apk 包中 SDK 集成情況的功能是很有必要的。因此,筆者創(chuàng)建了 SDK-Analysis 這個項目,目的就是自動化拆解 apk 包,并查找其是否集成所要了解的 SDK。

        支持功能

        目前支持 8 家 SDK 的檢測:數(shù)盟,數(shù)美,極光,友盟,Mob,TalkingData,網(wǎng)易易盾,易觀方舟;具體步驟:

        • 解壓 apk 文件

        • 通過 baksmali 解壓 dex文件

        • 查找 apk 中所需要的 SDK集成情況,并打印結(jié)果

        基礎(chǔ)使用

        將代碼下載到本地后:

        1. 將要解析的 apk 放入項目的 a目錄下,可以支持 n 個apk的解析工作

        2. 根據(jù)自身情況修改文件路徑,本示例以如下:

          #?要解析的?apk?文件路徑
          pathsour?=?'D:\\MyProgects\\Python\\SdkAnalysis\\apk\\'
          #?baksmali.jar
          baksmali?=?'D:\\MyProgects\\Python\\SdkAnalysis\\baksmali.jar'
        3. 根據(jù)自身情況修改輸出文件路徑,本示例如下:

          reportPath?=?"D:\\MyProgects\\Python\SdkAnalysis\\logout\\UmengSDKReport.txt"
        4. 總結(jié)要查找的 SDK 的特征值:

          #?sdk?feature
          #?友盟
          umengStr?=?"com.umeng"

          #?極光
          JAnalyStr?=?"JAnalyticsInterface"??#?極光統(tǒng)計
          JPushStr?=?"JPushInterface"????????#?極光推送
          JMessageStr?=?"JMessageClient"?????#?極光IM
          JShareStr?=?"JShareInterface"??????#?極光分享

          #?個推
          GTStr?=?"getui"
          GTStr_1?=?"GTIntentService"
          GTStr_2?=?"GetuiPushService"
          #?個數(shù)
          GSStr_1?=?'GsManager?'
          GSStr_2?=?'GsConfig?'
          #?個像
          GI?=?'GInsightManager?'

          #?TalkingData
          TalkingDataStr?=?"TCAgent"
          #?Mob
          MobSDKStr?=?"MobSDK"
          #?數(shù)盟
          DUSDKStr?=?"cn\shuzilm\core"
          #?數(shù)美
          SMSDKStr?=?"SmAntiFraud"
          #?易觀方舟
          YGSDKStr?=?"AnalysysAgent"
          #?網(wǎng)易易盾
          WANGYIStr?=?"watchman"

        注意:經(jīng)分析,推送類 SDK 與大多數(shù)其他的分析類 SDK 不同,只是實現(xiàn)簡單的發(fā)送和接受功能。而其他的sdk大多具備完整數(shù)據(jù)能力,因此對極光和個推的 SDK 類別做了區(qū)分。

        至此,我們可以開啟 apk 解析之旅了,啟動項目。

        輸出文件

        報告輸出以 SDK 為單位,打印集成 SDK 的應(yīng)用包名(下載后的apk名稱),這樣可以更方便的看到對應(yīng) SDK 都被哪些 apk 所集成。

        項目中報告的路徑如下:

        輸入圖片說明

        以 JGSDKReport 為例,內(nèi)部結(jié)構(gòu)如下:

        <==========================?極光?SDK?集成情況?===========================>
        app?name?====>?com.kuaikan.comic_5.40.0_540000???JPush?SDK
        app?name?====>?com.kuaikan.comic_5.40.0_540000???JAnalytic?SDK

        內(nèi)容主要有APP名稱,所集成的SDK名;可根據(jù)自身需求修改輸出格式。

        注意

        • 由于 ?baksmali 在解包的時候速度會稍微慢一下,請耐心點;

        • 由于解包后的文件比較大,記得及時清理

        項目地址

        github地址:https://github.com/knight-li/SDK-Analysis

        2.常用的數(shù)據(jù)結(jié)構(gòu)和算法封裝庫celib

        celib是使用ANSI C開發(fā)的一個擴展類庫(c extend library),包含了一些常用的數(shù)據(jù)結(jié)構(gòu)和算法的封裝,可以用于應(yīng)用或者學(xué)習(xí)。

        目前已經(jīng)包含的封裝如下:

        (01). 動態(tài)數(shù)組。

        (02). bitmap。

        (03). 布隆過濾器。

        (03). 二叉樹。

        (04). 基本壓縮函數(shù)(RLE和LZE算法)。

        (05). 常用的Hash函數(shù)(BKDR,FNV,DJB,ELF,bobJenkins,Murmur,crc32)。

        (06). 哈希表(hashmap)。

        (07). 雙向鏈表。

        (08). 基本的數(shù)學(xué)操作函數(shù)。

        (09). MD5(字符串md5, 文件md5)。

        (10). 排序(插入,希爾,歸并,快速,桶式,Bit桶式)。

        (11). 字符串API(類Java的StringBuffer字符串緩沖, token, 截取, 查找/替換)。

        (12). 一些簡單的內(nèi)存操作函數(shù)。

        項目地址

        官方首頁:http://code.google.com/p/cx-util/downloads/list


        如有收獲,歡迎分享?

        「點贊「評論?

        看完本文有收獲?請轉(zhuǎn)發(fā)分享給更多人

        ? 開發(fā)者全社區(qū)?

        5T技術(shù)資源大放送!包括但不限于:Android,Python,Java,大數(shù)據(jù),人工智能,AI等等。關(guān)注公眾號后回復(fù)「2T」,即可免費獲??!
        瀏覽 57
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            欧美60部三级未删减版 | 亚洲爱 | 亚洲黄色小视频 | 99热这里只有精品5 | 国产又粗又黄又爽又硬的成人用品 | 国产在线观看黄 | 精品偷拍在线 | 国产在线一区二区三区 | 天天插天天射久久 | 女人被舔全过程 |