Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Kotlin异常并非全部显示在crashlytics中_Android_Kotlin_Proguard - Fatal编程技术网

Android Kotlin异常并非全部显示在crashlytics中

Android Kotlin异常并非全部显示在crashlytics中,android,kotlin,proguard,Android,Kotlin,Proguard,我加入了一个正在进行的项目,这个项目使用Proguard。 由于Proguard,我已经遇到了一些问题,我解决了它,因为行号和类名在crashlytics中没有正确显示 现在我的问题是,我看到了正确的行和类名,但例外情况是Kotlin.b 缺少什么来显示正确的异常,Proguard是否对此有所了解 这是我的Proguard文件,如果我的Proguard文件有什么问题,我愿意接受建议,因为这是我第一次使用它 -optimizationpasses 1 -dontpreverify -verbos

我加入了一个正在进行的项目,这个项目使用Proguard。 由于Proguard,我已经遇到了一些问题,我解决了它,因为行号和类名在crashlytics中没有正确显示

现在我的问题是,我看到了正确的行和类名,但例外情况是
Kotlin.b

缺少什么来显示正确的异常,Proguard是否对此有所了解

这是我的Proguard文件,如果我的Proguard文件有什么问题,我愿意接受建议,因为这是我第一次使用它

-optimizationpasses 1
-dontpreverify
-verbose

-keep public class * extends android.app.Activity
-keep public class * extends android.app.Application
-keep public class * extends android.app.Service
-keep public class * extends android.content.BroadcastReceiver
-keep public class * extends android.content.ContentProvider
-keep public class * extends android.app.backup.BackupAgentHelper
-keep public class * extends android.preference.Preference
-keep public class com.android.vending.licensing.ILicensingService
-keep public class android.content.Context
-keep class com.gauravbhola.ripplepulsebackground.RipplePulseLayout$RippleView { *; }

#-keep,includedescriptorclasses public class androidx.** { *; }
#-keep,includedescriptorclasses public class android.support.** { *; }
#-keep,includedescriptorclasses public class com.google.** { *; }
-keep,includedescriptorclasses public class io.fabric.sdk.** { *; }

# Keep AppMeasurement
-keepclasseswithmembers class * {
    public static com.google.android.gms.measurement.AppMeasurement getInstance (android.content.Context);
}
-dontwarn com.google.**
-dontwarn android.support.**
-dontwarn androidx.**
-dontwarn io.fabric.sdk.**

-optimizations !class/unboxing/enum


-assumenosideeffects class android.util.Log {
    public static *** d(...);
    public static *** v(...);
    public static *** w(...);
    public static *** i(...);
}

# this will fix a force close in ReadingActivity
-keep public class org.jsoup.** {
    public *;
}

-keepclasseswithmembernames class * {
    native <methods>;
}

-keepclasseswithmembers class * {
    public <init>(android.content.Context, android.util.AttributeSet);
}

-keepclasseswithmembers class * {
    public <init>(android.content.Context, android.util.AttributeSet, int);
}

-keepclassmembers class * extends android.app.Activity {
   public void *(android.view.View);
}

-keepclassmembers enum * {
    public static **[] values();
    public static ** valueOf(java.lang.String);
}

-keep class * implements android.os.Parcelable {
  public static final android.os.Parcelable$Creator *;
}

#skip running ProGuard on Crashlytics
-keep class com.crashlytics.** { *; }
-dontwarn com.crashlytics.**

# The I2P Java API bundled inside the I2P Android client library contains
# references to javax.naming classes that Android doesn't have. But those
# classes are never used on Android, and it is safe to ignore the warnings.
-dontwarn net.i2p.crypto.CertUtil
-dontwarn org.apache.http.conn.ssl.DefaultHostnameVerifier

-dontwarn org.apache.http.HttpHost

# Needed for okhttp
-dontwarn okio.**
-dontwarn javax.annotation.Nullable
-dontwarn javax.annotation.ParametersAreNonnullByDefault

# there were 11 unresolved references to classes or interfaces
-dontwarn okhttp3.**
# -dontwarn javax.annotation.**
-dontwarn org.conscrypt.**
# A resource is loaded with a relative path so the package of this class must be preserved.
# -keepnames class okhttp3.internal.publicsuffix.PublicSuffixDatabase

# Preserve annotations, line numbers, and source file names
-keepattributes *Annotation*,SourceFile,LineNumberTable

-keepattributes InnerClasses,EnclosingMethod
-优化过程1
-不要翻转
-冗长的
-keep public class*扩展android.app.Activity
-keep public class*扩展android.app.Application
-keep public class*扩展了android.app.Service
-keep public class*扩展了android.content.BroadcastReceiver
-keep public class*扩展了android.content.ContentProvider
-keep public class*扩展了android.app.backup.BackupAgentHelper
-keep public class*扩展了android.preference.preference
-保持公共类com.android.vending.licensing.ILicensingService
-保留公共类android.content.Context
-保持类com.gauravbhola.ripplepulsebackground.RipplePulseLayout$RippleView{*;}
#-keep,includedescriptorclasses公共类androidx.*{*;}
#-保留,includedescriptorclasses公共类android.support.*{*;}
#-保留,includedescriptorclasses公共类com.google.*{*;}
-保持,includedescriptorclasses公共类io.fabric.sdk.*{*;}
#持续测量
-keepclassswithmembers类*{
公共静态com.google.android.gms.measurement.AppMeasurement getInstance(android.content.Context);
}
-dontwarn com.google**
-dontwarn android.support**
-唐特沃恩·安德烈克斯**
-dontwarn io.fabric.sdk**
-优化!类/取消装箱/枚举
-assumenosideeffects类android.util.Log{
公共静态***d(…);
公共静态***v(…);
公共静态***w(…);
公共静态***i(…);
}
#这将修复读取活动中的强制关闭
-保持公共类org.jsoup.*{
公众*;
}
-KeepClassSwithMemberNames类*{
本地人;
}
-keepclassswithmembers类*{
public(android.content.Context、android.util.AttributeSet);
}
-keepclassswithmembers类*{
public(android.content.Context,android.util.AttributeSet,int);
}
-keepclassmembers类*扩展了android.app.Activity{
public void*(android.view.view);
}
-keepclassmembers枚举*{
公共静态**[]值();
公共静态**valueOf(java.lang.String);
}
-keep class*实现android.os.Parcelable{
公开静态最终android.os.Parcelable$Creator*;
}
#跳过在Crashlytics上运行ProGuard
-保持类com.crashlytics.*{*;}
-dontwarn com.crashlytics**
#I2P Android客户端库中捆绑的I2P Java API包含
#Android没有的javax.naming类的引用。但是那些
#类从未在Android上使用过,可以安全地忽略警告。
-dontwarn net.i2p.crypto.CertUtil
-dontwarn org.apache.http.conn.ssl.DefaultHostnameVerifier
-dontwarn org.apache.http.HttpHost
#okhttp需要
-唐特沃恩·奥基奥**
-dontwarn javax.annotation.Nullable
-默认情况下,dontwarn javax.annotation.ParametersAreNonnull
#有11个未解析的类或接口引用
-dontwarn okhttp3**
#-dontwarn javax.annotation**
-dontwarn org.conscrypt**
#资源使用相对路径加载,因此必须保留此类的包。
#-keepnames类okhttp3.internal.publicsuffix.PublicSuffixDatabase
#保留注释、行号和源文件名
-keepattributes*注释*,源文件,行号表
-keepattributes内部类,封闭方法

我发现使用Proguard时,必须为自定义异常添加“-keep” 我想知道这是否是问题所在,它没有得到处理,所以我补充道

-keep public class * extends java.lang.Exception

现在Kotlin异常显示在Crashlytics中

我发现使用Proguard时,必须为自定义异常添加“-keep” 我想知道这是否是问题所在,它没有得到处理,所以我补充道

-keep public class * extends java.lang.Exception
现在Kotlin异常显示在Crashlytics中