Multithreading 混淆应用程序后android锁定主线程
我创建了我的应用程序,该应用程序在调试模式下正常工作。对应用程序中获取代码列表并在recyclerview中显示的部分进行模糊处理后,该应用程序无法正常工作 在这个片段中,我将获得代码列表代码是我的parcelable models类,但是主线程锁定,什么都不起作用 我试图防止混淆这个类,但它仍然不能正常工作。 我无法调试我发布的应用程序以发现问题 请帮助我查找问题或调试发布的apk 这是我的密码: 代码模型类:Multithreading 混淆应用程序后android锁定主线程,multithreading,kotlin,proguard,parcelable,android-obfuscation,Multithreading,Kotlin,Proguard,Parcelable,Android Obfuscation,我创建了我的应用程序,该应用程序在调试模式下正常工作。对应用程序中获取代码列表并在recyclerview中显示的部分进行模糊处理后,该应用程序无法正常工作 在这个片段中,我将获得代码列表代码是我的parcelable models类,但是主线程锁定,什么都不起作用 我试图防止混淆这个类,但它仍然不能正常工作。 我无法调试我发布的应用程序以发现问题 请帮助我查找问题或调试发布的apk 这是我的密码: 代码模型类: class Codes( @SerializedName("id
class Codes(
@SerializedName("id")
var id: String?,
@SerializedName("title")
var title: String?,
@SerializedName("text")
var text: String?,
@SerializedName("codes")
var codes: String?,
@SerializedName("date")
var date: String?,
@SerializedName("codeId")
var codeId: String?,
@SerializedName("point")
var point: Int,
@SerializedName("name")
var name: String?,
@SerializedName("family")
var family: String?,
@SerializedName("image")
var image: String?,
@SerializedName("jensiat")
var jensiat: Int
) : Parcelable {
constructor(parcel: Parcel) : this(
parcel.readString(),
parcel.readString(),
parcel.readString(),
parcel.readString(),
parcel.readString(),
parcel.readString(),
parcel.readInt(),
parcel.readString(),
parcel.readString(),
parcel.readString(),
parcel.readInt()
) {
}
override fun writeToParcel(parcel: Parcel, flags: Int) {
parcel.writeString(id)
parcel.writeString(title)
parcel.writeString(text)
parcel.writeString(codes)
parcel.writeString(date)
parcel.writeString(codeId)
parcel.writeInt(point)
parcel.writeString(name)
parcel.writeString(family)
parcel.writeString(image)
parcel.writeInt(jensiat)
}
override fun describeContents(): Int {
return 0
}
companion object CREATOR : Parcelable.Creator<Codes> {
override fun createFromParcel(parcel: Parcel): Codes {
return Codes(parcel)
}
override fun newArray(size: Int): Array<Codes?> {
return arrayOfNulls(size)
}
}
}
前进规则:
-keepattributes Signature
# For using GSON @Expose annotation
-keepattributes *Annotation*
# Gson specific classes
-keep class sun.misc.Unsafe { *; }
#-keep class com.google.gson.stream.** { *; }
# Application classes that will be serialized/deserialized over Gson
-keep class com.google.gson.examples.android.model.** { *; }
##---------------End: proguard configuration for Gson ----------
-keepclassmembers class * implements android.os.Parcelable {
public static final android.os.Parcelable$Creator *;
}
-keepclassmembers class * implements android.os.Parcelable {
public static final <fields>;
}
-keepattributes签名
#用于使用GSON@Expose注释
-keepattributes*注释*
#Gson特定类
-保持类sun.misc.Unsafe{*;}
#-保持类com.google.gson.stream.*{*;}
#将通过Gson进行序列化/反序列化的应用程序类
-保持类com.google.gson.examples.android.model.*{*;}
##---------------结束:Gson的proguard配置----------
-keepclassmembers类*实现android.os.Parcelable{
公开静态最终android.os.Parcelable$Creator*;
}
-keepclassmembers类*实现android.os.Parcelable{
公开静态决赛;
}
有stacktraces吗?@AnggrayudiH没有任何东西只会锁定原始线程
-keepattributes Signature
# For using GSON @Expose annotation
-keepattributes *Annotation*
# Gson specific classes
-keep class sun.misc.Unsafe { *; }
#-keep class com.google.gson.stream.** { *; }
# Application classes that will be serialized/deserialized over Gson
-keep class com.google.gson.examples.android.model.** { *; }
##---------------End: proguard configuration for Gson ----------
-keepclassmembers class * implements android.os.Parcelable {
public static final android.os.Parcelable$Creator *;
}
-keepclassmembers class * implements android.os.Parcelable {
public static final <fields>;
}