मैं अपने एंड्रॉइड लाइब्रेरी के रिलीज बिल्ड पर ProGuard चलाने के लिए चाहता हूं। नीचे मेरी परियोजना के भीतर मेरी build.gradle
फ़ाइल है।एंड्रॉइड-लाइब्रेरी ग्रैडल प्लगइन के लिए runProguard काम कैसे करें?
> Could not find method buildTypes() for arguments [[email protected]d] on project
ऐसा नहीं है कि प्लगइन android-library
buildTypes
विधि याद आ रही है लगता है:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.5.+'
}
}
apply plugin: 'android-library'
repositories {
mavenCentral()
}
android {
compileSdkVersion 18
buildToolsVersion "18.0.1"
defaultConfig {
minSdkVersion 10
targetSdkVersion 18
}
sourceSets {
main {
java {
srcDir 'src/main/java'
}
resources {
srcDir 'src/../lib'
}
}
}
buildTypes {
release {
runProguard true
proguardFile getDefaultProguardFile('proguard-android.txt')
}
}
}
gradlew clean
या gradlew build
रिटर्न निम्न त्रुटि चल रहा है। अगर मैं apply plugin
से android
बदलता हूं, gradlew
सफलतापूर्वक चलाता है। हालांकि, यह एक पुस्तकालय परियोजना है और मैं इसे ऐसा रखना चाहता हूं। अन्य हिस्सों में मेरे gradle.build
(यहां उल्लेखित नहीं) परियोजना पर एक पुस्तकालय होने पर भरोसा करते हैं।
क्या android-library
प्लगइन चलाने के लिए ProGuard बनाने का कोई तरीका है?
मुझे लगता है कि अंतिम कोड शामिल सभी कोड के लिए ProGuard चलाने का विचार है, प्रत्येक लाइब्रेरी के लिए व्यक्तिगत रूप से नहीं। –
मैं वितरण के लिए एक एसडीके जार बना रहा हूं। मैं सार्वजनिक कार्यों को दिखाना चाहता हूं, लेकिन निजी चर और कार्य दिखाई नहीं दे सकते हैं। – BVB