我正在实现一项功能,该功能需要访问“隐藏的” Android API。我知道我可以使用Java反射,但是我有一个经过编译的自定义android jar,其中包含很少的选定类,这些不再包含“ hidden”字段,这使我可以访问“ private” android API的某些部分。
由于我需要使用“ gradle”来构建项目(我老师的要求),因此我偶然发现了一个问题。
目前,我有一个jar:android-custom.jar->仅包含“ android.telephony.SmsMessage”
在Eclipse中,我可以更改从中获取依赖关系的库的顺序,但是在Gradle中,似乎第一个用于依赖关系发现的库是从Android-sdk获取的。
我想做的是在Android SDK的顶部使用我的android-custom.jar,同时在运行时将它们都排除在外(Android.jar和Android-custom.jar都不会附加到我的apk上,因此我的apk将在设备Android.jar上使用)。
这可能吗?
这解决了我的问题
allprojects {
gradle.projectsEvaluated {
tasks.withType(JavaCompile) {
options.compilerArgs << '-Xbootclasspath/p:/home/open-android.jar'
}
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句