東坡下載:內(nèi)容最豐富最安全的下載站!

幫助|文件類型庫|最新更新|下載分類|排行榜

編程相關(guān)破解相關(guān)編程工具反編譯安裝制作程序源碼軟件補(bǔ)丁數(shù)據(jù)庫Visual Studiovc++visualbasicdreamweaver

首頁編程開發(fā)編程工具 → SDKHotfix(SDK 熱修復(fù)工具包) 1.3 最新免費(fèi)版

SDKHotfix(SDK 熱修復(fù)工具包)

SDKHotfix(SDK 熱修復(fù)工具包)1.3 最新免費(fèi)版

  • 大。11.1M
  • 語言:中文
  • 平臺:WinAll
  • 更新:2019-11-06 19:1
  • 等級:
  • 類型:編程工具
  • 網(wǎng)站:暫無
  • 授權(quán):免費(fèi)軟件
  • 廠商:
  • 產(chǎn)地:國產(chǎn)軟件
好用好玩 50%(0)
坑爹 坑爹 50%(0)
軟件介紹軟件截圖相關(guān)軟件軟件教程網(wǎng)友評論下載地址

相關(guān)推薦: SDKHotfix

    SDKHotfix(SDK 熱修復(fù)工具包)是一款讓 SDK 開發(fā)者能快速賦予 SDK 熱修復(fù)的能力.

    SDKHotfix(SDK 熱修復(fù)工具包)特點(diǎn)

    5 分鐘即可讓你的 SDK 擁有熱修復(fù)的能力

    節(jié)省踩坑和開發(fā)成本

    hook and create Gradle Task

    Kotlin + groovy

    熱修復(fù)

    非對稱加密+對稱加密

    擴(kuò)展美團(tuán) Robust 開源庫,使其具有其他熱更庫不具備的補(bǔ)丁回滾功能

    數(shù)據(jù)和監(jiān)控思維

    優(yōu)點(diǎn)

    無兼容問題

    實時生效

    修復(fù)成功率高達(dá)99.9%

    在用戶規(guī)模千萬級別的app中驗證過,可信賴

    支持補(bǔ)丁異常自動失效,不用再擔(dān)心補(bǔ)丁造成crash啦~

    待改進(jìn)

    在編譯階段插件侵入了產(chǎn)品代碼,對運(yùn)行效率、方法數(shù)、包體積還是產(chǎn)生了一些副作用。(可指定某些class無需插入方法,減少插樁數(shù))

    so和資源的替換目前暫未實現(xiàn)

    對于只有字段訪問的函數(shù)無法直接修復(fù),可通過調(diào)用處間接修復(fù)

    上傳GradleTask尚未在MAC環(huán)境下測試

    上傳的補(bǔ)丁支持按包名存檔

    要商用的小伙伴要注意,建議換成自己的后端接口或自己續(xù)費(fèi)一個bmob應(yīng)用,因為bmob云函數(shù)服務(wù)超過40天需要收費(fèi),所以本項目需要定期更新應(yīng)用秘鑰。

    使用方法

    1. 添加配置和開關(guān)

    1.1 在項目gradle.properties中添加開關(guān)和配置

    # 接入第一步:添加配置和開關(guān)
    # Application模式,Robust需要是Application才能插入代碼和打補(bǔ)丁
    isAppModule=false
    # Application模式下開啟這個就可以打補(bǔ)丁
    isPatchModule=false
    # 你的業(yè)務(wù)sdk的包名
    sdkPackageName=com.feelschaotic.samplesdk
    # 是否開啟混淆,一般情況下sdk默認(rèn)不混淆
    isProguard=false
    # 業(yè)務(wù)sdk版本號,請保持三位,且無后綴,且在打包前就要確定好版本,確保版本打在包中
    SDK_VERSION=0.0.1
    # 業(yè)務(wù)sdk的upload_artifact_id
    SDK_ARTIFACT_ID=MY-SAMPLES-SDK

    1.2 在 sdk build.gradle 中加入配置 替換原有的 apply plugin: 'com.android.library'

    //注意!!一定要放在文件最前面
    // apply plugin表示該項目會使用指定的插件,sdk對應(yīng)的是com.android.library
    if (isAppModule.toBoolean()) {
       apply plugin: 'com.android.application'
       if (isPatchModule.toBoolean()) {
           //制作補(bǔ)丁時將這個打開,auto-patch-plugin緊跟著com.android.application
           apply plugin: 'auto-patch-plugin'
       }
       apply plugin: 'robust'
    } else {
       apply plugin: 'com.android.library'
    }

    apply from: rootProject.getRootDir().getAbsolutePath() + "/packPlugin.gradle"

    1.3 加入 buildConfigField

    // 視情況而定,如果你在初始化熱更sdk時的傳入的版本號有另外的取值方式,也可以不加此buildConfig
    android {
    defaultConfig {
      buildConfigField "String", "SDK_VERSION", "\"${SDK_VERSION}\""
      buildConfigField "String", "SDK_ARTIFACT_ID", "\"${SDK_ARTIFACT_ID}\""
    }
    }

    1.4 在 sdk build.gradle 中配置簽名

    android {
      // 簽名的配置
       signingConfigs {
           debug {

           }
           // release版本的簽名
           release {
               // 簽名的一些信息
               keyAlias 'key0'
               keyPassword '123456'
               storeFile file('./hotfix.jks')
               storePassword '123456'
           }
       }
    }

    1.5 配置混淆

    復(fù)制粘貼配置到 sdk build.gradle

    android {
      buildTypes {
           innerTest {
               //...
               matchingFallbacks = ['debug', 'release']
           }
           release {
               signingConfig signingConfigs.release
               minifyEnabled isProguard.toBoolean()//此處取的isProguard就是1.1在項目`gradle.properties`中添加的isProguard開關(guān)
               proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
           }
       }

        sourceSets {
              main {
                  // Application和Library清單文件處理方式不同
                  if (isAppModule.toBoolean()) {
                      manifest.srcFile 'src/main/debug/AndroidManifest.xml'
                  } else {
                      manifest.srcFile 'src/main/release/AndroidManifest.xml'
                  }
              }
          }
    }

    復(fù)制粘貼示例sdk的lib-proguard-rules.pro到業(yè)務(wù)SDK module目錄下,修改文件中的包名

    接著配置好sdk自己的混淆規(guī)則

    android {
       defaultConfig {
           consumerProguardFiles 'lib-proguard-rules.pro'
       }
    }

    2. 導(dǎo)庫

    在 sdk 的 build.gradle 中引入庫

    implementation 'com.github.feelschaotic:SDKHotFix:XX-RELEASE'

    XX為最新SDK版本號,例如implementation 'com.github.feelschaotic:SDKHotFix:1.3-RELEASE'

    注:最新版本見README標(biāo)志 

    在根項目build.gradle中加入maven配置

    repositories {
       //接入第二步:增加maven配置
       maven { url "https://mvnrepository.com/" }
    }
    ...
    allprojects {
       repositories {
           maven { url "https://mvnrepository.com/" }
       }
    }

    再添加classpath配置

    // Application模式下引入Robust腳本插件
      if (isAppModule.toBoolean()) {
           classpath 'com.github.feelschaotic:Robust.gradle-plugin:0.4.87.5-RELEASE'
           classpath 'com.github.feelschaotic:Robust.auto-patch-plugin:0.4.87.5-RELEASE'
      }

    4. 復(fù)制示例項目的腳本和文件

    4.1 復(fù)制 MainActivity.java 到 sdk module 的 java\包名 目錄下(目的是為了application打包配置不報錯)

    4.2 復(fù)制 debug 和 release 2 個文件夾到 main 目錄下,修改里面的 AndroidManifest.xml,更改為你自己業(yè)務(wù)SDK的包名

    <manifest package="${packageName}"
             xmlns:android="http://schemas.android.com/apk/res/android"
             xmlns:tools="http://schemas.android.com/tools">

    4.3 復(fù)制 robust.xml 到sdk module 根目錄,更改下包名

    4.4 復(fù)制 packPlugin.gradle 到項目的根目錄

    5. 初始化熱更庫

    val config: HotfixConfig = HotfixConfig.Builder().debug(true)
                   .appVersion(BuildConfig.VERSION_NAME)
                   .packageName(BuildConfig.APPLICATION_ID)
                   .build()
           HotfixManager.init(application, config)

    6. 添加權(quán)限

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />

    7. 加入混淆

    -keep class com.alibaba.sdk.android.oss.** { *; }
    -dontwarn okio.**
    -dontwarn org.apache.commons.codec.binary.**

    PC官方
    安卓官方手機(jī)版
    IOS官方手機(jī)版

    SDKHotfix(SDK 熱修復(fù)工具包)截圖

    下載地址

    SDKHotfix(SDK 熱修復(fù)工具包) 1.3 最新免費(fèi)版

    熱門評論
    最新評論
    第 4 樓 四川成都鐵通ADSL 網(wǎng)友 姜棲遲 發(fā)表于: 2019/11/23 3:29:04
    噗噗噗 為bts給滿分隨手搜bts居然還有游戲 kkkk

    支持( 0 ) 蓋樓(回復(fù))

    第 3 樓 CZ88.NET 網(wǎng)友 取個名字還真難 發(fā)表于: 2019/11/21 19:06:33
    就是服裝還有頭發(fā)有點(diǎn)少,其它的都還不錯

    支持( 0 ) 蓋樓(回復(fù))

    第 2 樓 陜西楊凌中國水土保護(hù)學(xué)院 網(wǎng)友 萌噠噠的女票 發(fā)表于: 2019/11/16 23:20:40
    內(nèi)容有點(diǎn)少,不是也是可以!

    支持( 0 ) 蓋樓(回復(fù))

    第 1 樓 美國CZ88.NET 網(wǎng)友 424800m 發(fā)表于: 2019/11/10 21:59:03
    全是廣告在閃,看著就惡心

    支持( 0 ) 蓋樓(回復(fù))

    發(fā)表評論 查看所有評論(4)
    昵稱:
    表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
    字?jǐn)?shù): 0/500 (您的評論需要經(jīng)過審核才能顯示)

    編輯推薦

    本類軟件必備

    編程UltraEditvc++6.0Notepad++編譯VBILSpyHopper數(shù)據(jù)MySQLoracleaccess設(shè)計DreamweaverfireworksFlash

    報錯

    請簡要描述您遇到的錯誤,我們將盡快予以修正。

    轉(zhuǎn)帖到論壇
    輪壇轉(zhuǎn)帖HTML方式

    輪壇轉(zhuǎn)帖UBB方式