magicbaby810 / HotfixFlutter

使用Tinker或Sophix实现Flutter热更新,兼容flutterboost
400 stars 51 forks source link

sync了最新的代码,原生的helloworld页面可以用bugly平台更新patch,但是flutter的页面不能热更新。看了logcat里没有flutterpatch的log,应该是没有执行到。 #1

Closed StephenWY closed 3 years ago

StephenWY commented 4 years ago

hannibal这个库还有什么特别的设置才会自动执行flutterpatch里的hook方法?

magicbaby810 commented 4 years ago

能发下你的hannibal配置吗?

StephenWY commented 4 years ago

大神,hannibal的配置跟你的readme里写的一样的,你的代码拉下来没改过这部分配置。 根目录下的build.gradle: buildscript { repositories { google() jcenter() maven { url 'http://download.flutter.io' } maven { url 'https://dl.bintray.com/magicbaby/maven' } } dependencies { classpath "com.android.tools.build:gradle:3.4.1"

    classpath 'com.tencent.bugly:tinker-support:1.1.5'

    classpath 'com.sk.hannibal:hannibal:1.0.1.2'
    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}

}

app的build.gradle: apply plugin: 'com.android.application' apply from: 'tinker-support.gradle'

android { compileSdkVersion 29 buildToolsVersion "29.0.3"

defaultConfig {
    applicationId "com.sk.hotfixflutter"
    minSdkVersion 21
    targetSdkVersion 29
    versionCode 2
    versionName "2.1"

    testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}

signingConfigs {
    release {
        storeFile file(RELEASE_STORE_FILE)
        keyPassword RELEASE_STORE_PASSWORD
        keyAlias RELEASE_KEY_ALIAS
        storePassword RELEASE_KEY_PASSWORD
    }
}

buildTypes {
    release {
        signingConfig signingConfigs.release

        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
    }

    debug {
        signingConfig signingConfigs.release
    }
}

lintOptions {
    abortOnError false
}

compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
}

}

dependencies { implementation fileTree(dir: "libs", include: ["*.jar"]) implementation 'androidx.appcompat:appcompat:1.1.0' implementation 'androidx.constraintlayout:constraintlayout:1.1.3' implementation 'androidx.multidex:multidex:2.0.1' //testImplementation 'junit:junit:4.12' //androidTestImplementation 'androidx.test.ext:junit:1.1.1' //androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'

implementation project(':flutter')
implementation project(':flutter_boost')

// 指定tinker依赖版本(注:应用升级1.3.5版本起,不再内置tinker)
implementation 'com.tencent.tinker:tinker-android-lib:1.9.14.6'

implementation 'com.tencent.bugly:crashreport_upgrade:latest.release'
implementation 'com.tencent.bugly:nativecrashreport:latest.release'

}

apply plugin: 'hannibal'

import com.hannibal.gradle.utils.MethodLogAdapter import org.objectweb.asm.ClassVisitor import org.objectweb.asm.MethodVisitor import org.objectweb.asm.Opcodes

import org.objectweb.asm.*

hannibal { adjustFlutterBoost = true insertClassFullName = 'com.sk.hotfixflutter.FlutterPatch' }

StephenWY commented 4 years ago

能发下你的hannibal配置吗?

参见上一条comment。另外logcat里有如下log: 2020-06-28 10:12:54.212 11221-11221/? W/Tinker.UpgradePatchRetry: onPatchRetryLoad patch file: /data/user/0/com.sk.hotfixflutter/tinker_temp/temp.apk is not exist, just return

magicbaby810 commented 4 years ago

能发下你的hannibal配置吗?

参见上一条comment。另外logcat里有如下log: 2020-06-28 10:12:54.212 11221-11221/? W/Tinker.UpgradePatchRetry: onPatchRetryLoad patch file: /data/user/0/com.sk.hotfixflutter/tinker_temp/temp.apk is not exist, just return

这可能是tinker补丁没下发到手机上,提供下你的联系方式,我帮你查查

StephenWY commented 4 years ago

能发下你的hannibal配置吗?

参见上一条comment。另外logcat里有如下log: 2020-06-28 10:12:54.212 11221-11221/? W/Tinker.UpgradePatchRetry: onPatchRetryLoad patch file: /data/user/0/com.sk.hotfixflutter/tinker_temp/temp.apk is not exist, just return

这可能是tinker补丁没下发到手机上,提供下你的联系方式,我帮你查查

谢谢,我微信17187462016

magicbaby810 commented 4 years ago

能发下你的hannibal配置吗?

参见上一条comment。另外logcat里有如下log: 2020-06-28 10:12:54.212 11221-11221/? W/Tinker.UpgradePatchRetry: onPatchRetryLoad patch file: /data/user/0/com.sk.hotfixflutter/tinker_temp/temp.apk is not exist, just return

这可能是tinker补丁没下发到手机上,提供下你的联系方式,我帮你查查

谢谢,我微信17187462016

加了

Beson58616 commented 4 years ago

你好 可以请教你一个问题吗?

magicbaby810 commented 4 years ago

你好 可以请教你一个问题吗?

嗯?