gpt4 book ai didi

android - 签名apk错误: proguard can't find referenced class android. arch.core.util.Function after com.firebaseui :firebase-ui-database update to 2. 3.0

转载 作者:太空宇宙 更新时间:2023-11-03 13:43:51 24 4
gpt4 key购买 nike

更新后

compile 'com.firebaseui:firebase-ui-database:0.4.0'

compile 'com.firebaseui:firebase-ui-database:2.3.0'

我能够在我的测试设备上编译和运行我的应用程序,但是当我尝试生成签名的 apk 时,我在“messages gradle build”中得到了这个。我希望这是一个 proguard 问题:

Information:Gradle tasks [:app:assembleRelease]
Warning:android.arch.lifecycle.Transformations: can't find referenced class android.arch.core.util.Function
Warning:android.arch.lifecycle.Transformations$1: can't find referenced class android.arch.core.util.Function
Warning:android.arch.lifecycle.Transformations$2: can't find referenced class android.arch.core.util.Function
Warning:there were 16 unresolved references to classes or interfaces.
Warning:Exception while processing task java.io.IOException: Please correct the above warnings first.
Error:Execution failed for task ':app:transformClassesAndResourcesWithProguardForRelease'.
> Job failed, see logs for details
Information:BUILD FAILED in 11s
Information:1 error
Information:5 warnings
Information:See complete output in console

我试过增量版本更新,但也没有用。例如:

 compile 'com.firebaseui:firebase-ui-database:2.0.0' 

甚至不会同步,给出合并错误消息。

我还更新了我的其他 SDK,但 firebaseui 行现在会触发它。这是我在评论中被问及的部分应用程序 gradle:

dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')

compile 'com.android.support:design:26.1.0'
compile 'com.android.support:appcompat-v7:26.1.0'

compile 'com.google.android.gms:play-services-drive:11.4.0'
compile 'com.google.android.gms:play-services-plus:11.4.0'
compile 'com.google.android.gms:play-services-location:11.4.0'
compile 'com.google.android.gms:play-services-auth:11.4.0'
compile 'com.google.android.gms:play-services-wallet:11.4.0'
compile 'com.google.android.gms:play-services-games:11.4.0'

compile 'com.android.support:support-v4:26.1.0'
compile 'com.android.support:support-v13:26.1.0'

compile 'com.google.firebase:firebase-core:11.4.0'
compile 'com.google.firebase:firebase-invites:11.4.0'
compile 'com.google.firebase:firebase-ads:11.4.0'
compile 'com.google.firebase:firebase-database:11.4.0'
compile 'com.google.firebase:firebase-auth:11.4.0'
compile 'com.google.firebase:firebase-config:11.4.0'
compile 'com.google.firebase:firebase-messaging:11.4.0'
compile 'com.google.firebase:firebase-crash:11.4.0'
compile 'com.google.firebase:firebase-analytics:11.4.0'
compile 'com.google.firebase:firebase-appindexing:11.4.0'

compile 'com.firebaseui:firebase-ui-database:2.3.0'
}

这是评论中也提到的我的 proguard 规则,我尝试在末尾添加了几行。我已经尝试过各种语法但没有效果。

-renamesourcefileattribute SourceFile
-keepattributes Signature
-keepattributes SourceFile
-keepattributes LineNumberTable
-keepattributes *Annotation*
-keep class com.android.**
-keepclassmembers class com.android.**

最佳答案

我发现错误消息中的 proguard 引用是一个转移注意力的问题。这是在我的 proguard-rules 文件中添加了数十条额外规则无济于事之后。添加 auth 编译后:

compile 'com.firebaseui:firebase-ui-database:2.3.0'
compile 'com.firebaseui:firebase-ui-auth:2.3.0'

我能够构建一个已签名的 apk(在此过程的早期,添加此行导致了错误,因此我放弃了它)。奇怪的是,与

compile 'com.firebaseui:firebase-ui-database:0.4.0' 

我不需要授权编译。

此外,在添加 auth compile 之后,我必须将应用程序 gradle 中的所有编译版本“26.1.0”更改为“26.0.1”以避免合并错误,大概是使用新的 auth compile。尽管有“更新版本可用 26.1.0”的建议,但它为我提供了这些编译。我正在使用的最新 buildToolsVersion 是:

buildToolsVersion "26.0.1" 

无论 java 编码技能如何,这些都是通过艰苦的经验在 android 开发中克服的障碍。

关于android - 签名apk错误: proguard can't find referenced class android. arch.core.util.Function after com.firebaseui :firebase-ui-database update to 2. 3.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46385196/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com