【发布时间】:2015-11-23 05:18:43
【问题描述】:
我有一个 Android 应用程序,我正在尝试向其中添加 DNS SRV 记录检测。我知道这是可能的,基于我已经安装的 DNS Lookup 等应用程序的存在,它工作得很好。
我正在使用 dnsjava,并且此代码在我的机器上作为独立 Java 应用程序运行良好,但是当我在我的 Android 设备上运行它时,我只是收到“错误!”留言:
Lookup lookup = new Lookup(serviceName, Type.SRV, DClass.IN);
Resolver resolver = new SimpleResolver();
lookup.setResolver(resolver);
lookup.setCache(null);
Record[] records = lookup.run();
if (lookup.getResult() == Lookup.SUCCESSFUL) {
String responseMessage = null;
String listingType = null;
for (int i=0; i < records.length; i++) {
if (records[i] instanceof SRVRecord) {
listingType = ((SRVRecord) records[i]).toString()
}
}
System.out.println("Found!");
System.out.println("Response Message: "+responseMessage);
System.out.println("Listing type: "+listingType);
} else if (lookup.getResult() == Lookup.HOST_NOT_FOUND) {
System.out.println("Not found.");
} else {
System.out.println("Error!");
}
任何想法为什么这不起作用?
【问题讨论】: