本文整理汇总了Java中com.qiniu.android.dns.IResolver类的典型用法代码示例。如果您正苦于以下问题:Java IResolver类的具体用法?Java IResolver怎么用?Java IResolver使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
IResolver类属于com.qiniu.android.dns包,在下文中一共展示了IResolver类的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: defaultResolver
import com.qiniu.android.dns.IResolver; //导入依赖的package包/类
public static IResolver defaultResolver() {
return new IResolver() {
public Record[] resolve(Domain domain, NetworkInfo info) throws IOException {
InetAddress[] addresses = AndroidDnsServer.getByReflection();
if (addresses == null) {
addresses = AndroidDnsServer.getByCommand();
}
if (addresses == null) {
throw new IOException("cant get local dns server");
}
int i;
int length;
Record[] records = new HijackingDetectWrapper(new Resolver(addresses[0])).resolve
(domain, info);
if (domain.hasCname) {
boolean cname = false;
for (Record r : records) {
Record r2;
if (r2.isCname()) {
cname = true;
break;
}
}
if (!cname) {
throw new DnshijackingException(domain.domain, addresses[0]
.getHostAddress());
}
}
if (domain.maxTtl != 0) {
length = records.length;
i = 0;
while (i < length) {
r2 = records[i];
if (r2.isCname() || r2.ttl <= domain.maxTtl) {
i++;
} else {
throw new DnshijackingException(domain.domain, addresses[0]
.getHostAddress(), r2.ttl);
}
}
}
return records;
}
};
}
开发者ID:JackChan1999,项目名称:boohee_v5.6,代码行数:46,代码来源:AndroidDnsServer.java
注:本文中的com.qiniu.android.dns.IResolver类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论