如何在Lollipop中使用Root Shell命令清除DNS缓存?

7

我已经搜索了很久,但仍未找到答案。如果此前已经解决,请原谅。

一个月前,我使用旧手机上的KitKat系统。然后我升级到带有Lollipop系统的Nexus 6。我目前使用的是Android 5.1.1。当我在旧手机上使用KitKat系统时,我能够运行下面的root命令清除手机的DNS缓存:

ndc resolver flushdefaultif

每次我在KitKat上运行该命令时,它总是输出:
Resolver command succeeded.

但自从使用棒棒糖系统(Lollipop),运行同样的命令总是会输出:

500 0 Resolver command unknown.

我甚至尝试运行命令:

ndc resolver flushif wlan0

使用另一个命令后,它会输出与其他命令相同的“Resolver command unknown”。

有没有人知道在棒棒糖上清除Android DNS缓存的正确root shell命令?因为似乎我一直在使用的旧命令并未完成任务。

2个回答

4

看起来它又一次改变了7 Nougat:

ndc resolver clearnetdns <netId>

netId 是接口:

ndc resolver clearnetdns wlan0
200 0 Resolver command succeeded

同样适用于奥利奥饼干系统:http://androidxref.com/8.1.0_r33/xref/system/netd/server/CommandListener.cpp#647 - Irfan Latif
netId不是接口的名称。 - Juanje

0

源代码来看,该命令已更新为

ndc resolver flushnet <iface>


该命令需要 netId,而不是 iface 名称。这在之前的 Android 版本中已经更改。 - Juanje

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接