내 LibGdx 기반 안드로이드 앱에서 build.gradle 파일을 아래 언급 된 progaurd 파일과 함께 사용하고 있습니다. 아래 그림과 같이 progaurd- 룰ules.pro 파일이 안드로이드 프로젝트 폴더에 있습니다.안드로이드 빌드가 프로 가드 규칙을 고려하지 않음
질문 :
나는 Play 스토어에서 내 APK를 발표했다. 비록 내가 progaurd - rules.pro을 가지고 있지만, 내 애플이 추락했을 때 나는 문제가있는 파일의 라인 번호를 얻지 못했다. 2 가지를 알려주십시오.
a. progaurd-rules.pro 내용을 progaurd-project.txt에 복사해야합니까?
b. 아래 코드에서 언급 한 것처럼 android-build.gradle에 progaurd-rules.txt를 추가 할 수 있습니까?
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt', 'proguard-rules.pro'
2. proguard-android.txt, proguard-project.txt 및 proguard-rules.pro는 무엇입니까? proguard-project.txt와 proguard-rules.pro를 클럽에 가입시킬 수 있습니까?
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt'
}
}
progaurd-rules.pro Android 기기, build.gradle
-keep class com.google.firebase.provider.FirebaseInitProvider
-renamesourcefileattribute SourceFile
-keepattributes SourceFile,LineNumberTable
progaurd-project.txt
-verbose
-dontwarn android.support.**
-dontwarn com.badlogic.gdx.backends.android.AndroidFragmentApplication
-dontwarn com.badlogic.gdx.utils.GdxBuild
-dontwarn com.badlogic.gdx.physics.box2d.utils.Box2DBuild
-dontwarn com.badlogic.gdx.jnigen.BuildTarget*
-dontwarn com.badlogic.gdx.graphics.g2d.freetype.FreetypeBuild
-keep class com.badlogic.gdx.controllers.android.AndroidControllers
-keepclassmembers class com.badlogic.gdx.backends.android.AndroidInput* {
<init>(com.badlogic.gdx.Application, android.content.Context,
java.lang.Object,
com.badlogic.gdx.backends.android.AndroidApplicationConfiguration);
}
-keepclassmembers class com.badlogic.gdx.physics.box2d.World {
boolean contactFilter(long, long);
void beginContact(long);
void endContact(long);
void preSolve(long, long);
void postSolve(long, long);
boolean reportFixture(long);
float reportRayFixture(long, float, float, float, float, float);
}
progaurd-android.txt
com/google/firebase/provider/FirebaseInitProvider.class
1.b가 잘 작동합니다. – iappmaker