-
Notifications
You must be signed in to change notification settings - Fork 3.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Gradle sync failed with AGP 7.1.1 #1634
Comments
AGP7.0在版本1.9.14.19才支持的。升级吧。 |
1.9.14.19也不行,更新说明说是支持了AGP7、R8,实测并没有解决,除了这两个问题外还有一个Manifest钟tinkerid更新的问题 |
你新建项目接入试试,我已经成功接入了。 |
你接入1.9.14.19、Gradle 7.0后,开启固定资源ID,没有遇到too late to modify additionalParameter的问题吗? 还有这个开启R8的问题,R8 outlining 与 Tinker 存在兼容性问题 ,AGP7强制开启R8,如果使用,暂时可以在混淆规则中禁用优化,可临时解决-dontoptimize 还有一个随机出现的TinkerId未更新的问题,没遇上吗 , 这几个问题,我解决方案都比较挫,大佬你们都是咋处理的? |
但是com.tencent.bugly.tinker-support。这个插件只支持AGP4。有没有办法使用AGP7呢。不用com.tencent.bugly.tinker-support而是使用com.tencent.tinker.patch吗。我想用bugly管理,不使用bugly提供的插件有影响吗 |
参考tinker-support的代码逻辑,我们自实现了一套逻辑,无痕替换了tinker-support。上面提到的问题除了R8外,其他固定资源Id、TinkerId未更新等问题刚适配了。 |
你们用bugly管理后台管理补丁包吗。tinker-support代码都没有开源啊。。你们反编译做的吗。这要不少的工作量吧。有点想弃坑,用sophix了。。。 |
我刚看到文档,原来生成MF文档 这里有介绍tinker-support的工作产出。按照这个写的吧。 |
老铁实现tinker-support有开源的么,不会写插件 |
FAILURE: Build completed with 3 failures. 1: Task failed with an exception.
============================================================================== 2: Task failed with an exception.
============================================================================== 3: Task failed with an exception.
==============================================================================
|
提交了 pr,官方一直没收录,解决 tinker id 不更新问题 #1550 |
提交了 pr,官方一直没收录,解决 tinker id 不更新问题 #1550 |
问题是 ,你怎么保证 基础包和 patch包混淆一直那 ? |
我自己试了一下 , 如果开启混淆 ,只添加 -dontoptimize 生成的patch 很会很大 , 目前发现要想解决只能禁用混淆 , 添加 -dontobfuscate |
hallo, where do you add -dontoptimize and -dontobfuscate ? |
AGP 升级到 7.0 以上gradle sync失败。
异常类型:编译异常
tinker版本:如: 1.9.14.18
gradle版本:如:7.2
tinker-sample-android/build.gradle
classpath 'com.android.tools.build:gradle:3.5.3' 改为 classpath 'com.android.tools.build:gradle:7.1.1'
tinker-sample-android/gradle/wrapper/gradle-wrapper.properties
distributionUrl=https://services.gradle.org/distributions/gradle-6.1.1-all.zip 改为 distributionUrl=https://services.gradle.org/distributions/gradle-7.2-bin.zip
Caused by: com.android.build.gradle.internal.dsl.AgpDslLockedException: It is too late to modify additionalParameters
It has already been read to configure this project.
Consider either moving this call to be during evaluation,
or using the variant API.
at com.android.build.gradle.internal.dsl.decorator.LockableList.add(LockableList.kt:83)
at com.android.build.gradle.internal.dsl.AaptOptions.additionalParameters(AaptOptions.java:166)
at com.android.build.api.dsl.AndroidResources$additionalParameters.call(Unknown Source)
at com.tencent.tinker.build.gradle.task.TinkerResourceIdTask.injectStableIdsFileOnDemand(TinkerResourceIdTask.groovy:90)
at com.tencent.tinker.build.gradle.task.TinkerResourceIdTask$injectStableIdsFileOnDemand.call(Unknown Source)
at com.tencent.tinker.build.gradle.TinkerPatchPlugin$_apply_closure1.doCall(TinkerPatchPlugin.groovy:132)
The text was updated successfully, but these errors were encountered: