我的问题很简单,Android支持编程方式检查VPN是否处于激活状态(适用于API 21+),具体可参考:http://developer.android.com/reference/android/net/ConnectivityManager.html#TYPE_VPN
我以为我知道它应该如何工作,但是代码(使用roboguice):
@Inject
boolean checkVPN(ConnectivityManager connMgr) {
//don't know why always returns null:
NetworkInfo networkInfo = connMgr.getNetworkInfo(ConnectivityManager.TYPE_VPN);
boolean isVpnConn = networkInfo == null ? false : networkInfo.isConnected();
return isVpnConn;
}
始终返回null。对于WIFI或移动网络可以正常工作。
这是一个错误吗?还是我做错了什么?或者我误解了它应该如何工作?