gpt4 book ai didi

android - 更新 Android studio 3.5 获取 proguard 警告

转载 作者:行者123 更新时间:2023-11-29 16:29:17 25 4
gpt4 key购买 nike

自从我将 Android Studio 从 3.4 更新到 3.5 后,我在项目中遇到了错误。错误列表如下,proguard 文件中似乎缺少规则。

但是一旦我制定了这些规则:

-dontnote androidx.**
-dontwarn androidx.**

该项目正在无限 build 中,不会完成。我等了 30-40 分钟,一点结果也没有。 (通常项目构建时间为4-5min)

Note: there were 6 duplicate class definitions.
(http://proguard.sourceforge.net/manual/troubleshooting.html#duplicateclass)
Note: the configuration refers to the unknown class 'com.amazonaws.auth.AWS4Signer'
Warning: androidx.appcompat.widget.ActivityChooserView: can't find referenced method 'void saveAttributeDataForStyleable(android.content.Context,int[],android.util.AttributeSet,android.content.res.TypedArray,int,int)' in program class androidx.appcompat.widget.ActivityChooserView
Warning: androidx.appcompat.widget.AppCompatTextViewAutoSizeHelper: can't find referenced method 'boolean isHorizontallyScrollable()' in library class android.widget.TextView
Warning: androidx.appcompat.widget.AppCompatTextViewAutoSizeHelper: can't find referenced method 'android.text.TextDirectionHeuristic getTextDirectionHeuristic()' in library class android.widget.TextView
Warning: androidx.appcompat.widget.ButtonBarLayout: can't find referenced method 'void saveAttributeDataForStyleable(android.content.Context,int[],android.util.AttributeSet,android.content.res.TypedArray,int,int)' in program class androidx.appcompat.widget.ButtonBarLayout
Warning: androidx.appcompat.widget.DrawableUtils: can't find referenced method 'android.graphics.Insets getOpticalInsets()' in library class android.graphics.drawable.Drawable
Warning: androidx.appcompat.widget.DrawableUtils: can't find referenced class android.graphics.Insets
Warning: androidx.appcompat.widget.DrawableUtils: can't find referenced class android.graphics.Insets
Warning: androidx.appcompat.widget.DrawableUtils: can't find referenced class android.graphics.Insets
Warning: androidx.appcompat.widget.DrawableUtils: can't find referenced class android.graphics.Insets
Warning: androidx.appcompat.widget.DrawableUtils: can't find referenced class android.graphics.Insets
Warning: androidx.appcompat.widget.DrawableUtils: can't find referenced class android.graphics.Insets
Warning: androidx.appcompat.widget.ListPopupWindow: can't find referenced method 'void setEpicenterBounds(android.graphics.Rect)' in library class android.widget.PopupWindow
Warning: androidx.appcompat.widget.ListPopupWindow: can't find referenced method 'void setIsClippedToScreen(boolean)' in library class android.widget.PopupWindow
Warning: androidx.appcompat.widget.MenuPopupWindow: can't find referenced method 'void setTouchModal(boolean)' in library class android.widget.PopupWindow
Warning: androidx.appcompat.widget.SearchView: can't find referenced method 'void refreshAutoCompleteResults()' in program class androidx.appcompat.widget.SearchView$SearchAutoComplete
Warning: androidx.camera.camera2.impl.compat.CameraManagerCompat$AvailabilityCallbackExecutorWrapper$1: can't find referenced method 'void onCameraAccessPrioritiesChanged()' in library class android.hardware.camera2.CameraManager$AvailabilityCallback
Warning: androidx.recyclerview.widget.RecyclerView: can't find referenced method 'void saveAttributeDataForStyleable(android.content.Context,int[],android.util.AttributeSet,android.content.res.TypedArray,int,int)' in program class androidx.recyclerview.widget.RecyclerView
Warning: androidx.viewpager2.widget.ViewPager2: can't find referenced method 'void saveAttributeDataForStyleable(android.content.Context,int[],android.util.AttributeSet,android.content.res.TypedArray,int,int)' in program class androidx.viewpager2.widget.ViewPager2

Warning: there were 6 unresolved references to classes or interfaces.
You may need to add missing library jars or update their versions.
If your code works fine without the missing classes, you can suppress
the warnings with '-dontwarn' options.
(http://proguard.sourceforge.net/manual/troubleshooting.html#unresolvedclass)
Warning: there were 5 unresolved references to program class members.
Your input classes appear to be inconsistent.
You may need to recompile the code.
(http://proguard.sourceforge.net/manual/troubleshooting.html#unresolvedprogramclassmember)
Warning: there were 7 unresolved references to library class members.
You probably need to update the library versions.
Alternatively, you may have to specify the option
'-dontskipnonpubliclibraryclassmembers'.
(http://proguard.sourceforge.net/manual/troubleshooting.html#unresolvedlibraryclassmember)

这些是混淆规则:

# Add project specific ProGuard rules here.
# By default, the flags in this file are appended to flags specified
# in <android sdk path>/tools/proguard/proguard-android.txt
# You can edit the include path and order by changing the proguardFiles
# directive in build.gradle.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html

# Add any project specific keep options here:

# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}

# Additional config for retaining stacktrace coherence
-dontskipnonpubliclibraryclassmembers
-keepattributes LineNumberTable, SourceFile, Exceptions, RuntimeVisibleAnnotations, AnnotationDefault

# Enums
-keepclassmembers enum * { *; }

# This is for retaining proper names of custom Exceptions
-keep public class * extends java.lang.Exception

# Remove log calls
-assumenosideeffects class android.util.Log {
public static *** d(...);
}
-assumenosideeffects class timber.log.Timber {
public static *** d(...);
}

# Android
-dontnote android.**
-dontnote com.android.**
## Do not obfuscate but allow shrinking of android-oauth-client
-keepnames class com.wuman.android.auth.** { *; }

# ButterKnife
-keep class butterknife.** { *; }
-dontwarn butterknife.internal.**
-keep class **$$ViewBinder { *; }
-keepclasseswithmembernames class * {
@butterknife.* <fields>;
}
-keepclasseswithmembernames class * {
@butterknife.* <methods>;
}

# OK
-dontwarn javax.annotation.**
-keepnames class okhttp3.internal.publicsuffix.PublicSuffixDatabase
-dontwarn org.codehaus.mojo.animal_sniffer.*
-dontwarn okhttp3.internal.platform.ConscryptPlatform

# Crashlytics
-keep class com.crashlytics.** { *; }
-dontwarn com.crashlytics.**
-dontnote io.fabric.**

# Nucleus (requires default empty constructor, ProGuard removes them)
# https://github.com/konmik/nucleus/issues/126
-keepclassmembers class * extends nucleus5.presenter.Presenter {
<init>();
}
-dontwarn nucleus.view.NucleusActionBarActivity
-dontnote nucleus5.**

# Google
-keep class com.google.android.gms.common.api.** { *; }
-dontnote com.google.**
# For using GSON @Expose annotation
-keepattributes *Annotation*

# Firebase
-dontnote com.firebase.**

# Amazon AWS Pinpoint
## Class names are needed in reflection
-keepnames class com.amazonaws.**
-keepclassmembers public class com.amazonaws.auth.AWS4Signer {
public <init>(...);}
## Request handlers defined in request.handlers
-keep class com.amazonaws.services.**.*Handler
## The following are referenced but aren't required to run
-dontwarn com.fasterxml.jackson.**
-dontwarn org.apache.commons.logging.**
## Android 6.0 release removes support for the Apache HTTP client
-dontwarn org.apache.http.**
## The SDK has several references of Apache HTTP client
-dontwarn com.amazonaws.http.**
-dontwarn com.amazonaws.metrics.**
## Spinner indicator
-keep class com.wang.avi.** { *; }
-keep class com.wang.avi.indicators.** { *; }

# Branch.io
-dontwarn com.google.firebase.appindexing.**
-dontwarn com.android.installreferrer.api.**

# Subsampling Scale View
-dontnote com.davemorrissey.**

# RxJava
-dontnote io.reactivex.**

# Realm
-dontnote io.realm.**

# Facebook
-dontnote com.facebook.**

# Dagger
-dontnote dagger.internal.**

# Experimental
-dontwarn **Lambda**

# org.apache.http.legacy (see https://issuetracker.google.com/issues/37070898)
-dontnote android.net.http.*
-dontnote org.apache.commons.codec.**
-dontnote org.apache.http.**

# MapWize
-dontwarn com.mapbox.**
-dontwarn com.unity3d.player.UnityPlayer
-keep class com.navisens.** {*;}
-keep class org.json.** {*;}

# ChatKit
-keep class * extends com.stfalcon.chatkit.messages.MessageHolders$OutcomingTextMessageViewHolder {
public <init>(android.view.View, java.lang.Object);
public <init>(android.view.View);
}
-keep class * extends com.stfalcon.chatkit.messages.MessageHolders$IncomingTextMessageViewHolder {
public <init>(android.view.View, java.lang.Object);
public <init>(android.view.View);
}
-keep class * extends com.stfalcon.chatkit.messages.MessageHolders$IncomingImageMessageViewHolder {
public <init>(android.view.View, java.lang.Object);
public <init>(android.view.View);
}
-keep class * extends com.stfalcon.chatkit.messages.MessageHolders$OutcomingImageMessageViewHolder {
public <init>(android.view.View, java.lang.Object);
public <init>(android.view.View);
}

# Twilio
-keep class com.twilio.chat.** { *; }
-keepattributes InnerClasses
#-keep interface com.twilio.chat.** { *; }
#-keep enum com.twilio.chat.** { *; }

## Keep native methods
-keepclasseswithmembernames class com.twilio.chat.** {
native <methods>;
}

# Volley
-keep class com.android.volley.** { *;}
-dontwarn com.android.volley.**

-keepclassmembers,allowshrinking,allowobfuscation class com.android.volley.NetworkDispatcher {
void processRequest();
}
-keepclassmembers,allowshrinking,allowobfuscation class com.android.volley.CacheDispatcher {
void processRequest();
}

最佳答案

尝试设置

android {
compileSDKVersion 29
}

关于android - 更新 Android studio 3.5 获取 proguard 警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57654778/

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