2014-07-03 27 views
0

我在android中处理HTTPS,我到了必须处理java.net.InetAddress的地步。在这样做的过程中,我发现dalvik的InetAddress类有一个名为isNumeric(host)的静态方法,它不在java8 InetAddress类中。作为一个说明,官方文档不显示它,所以我想我甚至不应该使用它。AndroidStudio/gradle - 如何加载Dalvik类而不是标准的JDK类

因此,说我想在我的android代码中使用InetAddress.isNumeric,我该如何让AndroidStudio/gradle加载Dalvik类而不是JDK,并避免编译错误?

+0

Android Studio和Gradle不会“加载Dalvik类”或“JDK之一”。 Android构建过程使用基于特定构建SDK的'android.jar'文件(例如'build.gradle'中的'compileSdkVersion'。 – CommonsWare

+0

感谢您的评论,但我的意思是:如何确保gradle加载java .net.InetAddress从Dalvik而不是从JDK?据我所知,java classloaders加载它们在PATH中找到的类的第一个版本? – Grasshopper

+0

“如何确保gradle从java.net.InetAddress中加载Dalvik,而不是JDK?“ - Gradle使用的都不是这些,正如我在我的评论中指出的那样。 – CommonsWare

回答

0

正如CommonWare指出的那样,isNumeric方法通过@hide javadoc注释隐藏,因此对编译器不可见。 有办法可以调用这个方法,但是你不应该:)。

相关问题