Java 类android.net.LinkAddress 实例源码

项目:gnirehtet    文件:GnirehtetService.java   
private Network findVpnNetwork() {
    ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
    Network[] networks = cm.getAllNetworks();
    for (Network network : networks) {
        LinkProperties linkProperties = cm.getLinkProperties(network);
        List<LinkAddress> addresses = linkProperties.getLinkAddresses();
        for (LinkAddress addr : addresses) {
            if (addr.getAddress().equals(VPN_ADDRESS)) {
                return network;
            }
        }
    }
    return null;
}
项目:XPrivacy    文件:XLinkProperties.java   
@Override
protected void after(XParam param) throws Throwable {
    switch (mMethod) {
    case getAddresses:
    case getAllAddresses:
        if (param.getResult() != null)
            if (isRestricted(param))
                param.setResult(new ArrayList<InetAddress>());
        break;

    case getAllLinkAddresses:
    case getLinkAddresses:
        if (param.getResult() != null)
            if (isRestricted(param))
                param.setResult(new ArrayList<LinkAddress>());
        break;

    case getStackedLinks:
        if (param.getResult() != null)
            if (isRestricted(param))
                param.setResult(new ArrayList<LinkProperties>());
        break;
    }
}
项目:smarper    文件:XLinkProperties.java   
@Override
protected void after(XParam param) throws Throwable {
    switch (mMethod) {
    case getAddresses:
    case getAllAddresses:
        if (param.getResult() != null)
            if (isRestricted(param))
                param.setResult(new ArrayList<InetAddress>());
        break;

    case getAllLinkAddresses:
    case getLinkAddresses:
        if (param.getResult() != null)
            if (isRestricted(param))
                param.setResult(new ArrayList<LinkAddress>());
        break;

    case getStackedLinks:
        if (param.getResult() != null)
            if (isRestricted(param))
                param.setResult(new ArrayList<LinkProperties>());
        break;
    }
}
项目:xprivacy-mod    文件:XLinkProperties.java   
@Override
protected void after(XParam param) throws Throwable {
    switch (mMethod) {
    case getAddresses:
    case getAllAddresses:
        if (param.getResult() != null)
            if (isRestricted(param))
                param.setResult(new ArrayList<InetAddress>());
        break;

    case getAllLinkAddresses:
    case getLinkAddresses:
        if (param.getResult() != null)
            if (isRestricted(param))
                param.setResult(new ArrayList<LinkAddress>());
        break;

    case getStackedLinks:
        if (param.getResult() != null)
            if (isRestricted(param))
                param.setResult(new ArrayList<LinkProperties>());
        break;
    }
}
项目:aria2-android    文件:ConfigBuilder.java   
@TargetApi(Build.VERSION_CODES.M)
private String getActiveInterface() {
    final Network network = cm.getActiveNetwork();

    if (network == null) {
        return null;
    }

    final LinkProperties linkInfo = cm.getLinkProperties(network);

    if (linkInfo == null) {
        return null;
    }

    final List<LinkAddress> linkAddress = linkInfo.getLinkAddresses();

    if (linkAddress.isEmpty()) {
        return null;
    }

    final InetAddress address = linkAddress.get(0).getAddress();

    return address.getHostAddress();
}
项目:aos-FileCoreLibrary    文件:SambaDiscovery.java   
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
private String getIp(LinkProperties lp) {
    List<LinkAddress> las = lp.getLinkAddresses();
    for(LinkAddress la: las) {
        InetAddress inetAddress = la.getAddress();
        if (inetAddress instanceof Inet4Address) {
            //Log.d(TAG, lp.getInterfaceName() + ": " + inetAddress.getHostAddress());
            return inetAddress.getHostAddress();
        }
    }
    return null;
}
项目:AppRTC-Android    文件:NetworkMonitorAutoDetect.java   
@SuppressLint("NewApi")
IPAddress[] getIPAddresses(LinkProperties linkProperties) {
  IPAddress[] ipAddresses = new IPAddress[linkProperties.getLinkAddresses().size()];
  int i = 0;
  for (LinkAddress linkAddress : linkProperties.getLinkAddresses()) {
    ipAddresses[i] = new IPAddress(linkAddress.getAddress().getAddress());
    ++i;
  }
  return ipAddresses;
}
项目:AndroidRTC    文件:NetworkMonitorAutoDetect.java   
@SuppressLint("NewApi")
IPAddress[] getIPAddresses(LinkProperties linkProperties) {
  IPAddress[] ipAddresses = new IPAddress[linkProperties.getLinkAddresses().size()];
  int i = 0;
  for (LinkAddress linkAddress : linkProperties.getLinkAddresses()) {
    ipAddresses[i] = new IPAddress(linkAddress.getAddress().getAddress());
    ++i;
  }
  return ipAddresses;
}
项目:AndroidSettingDemoAP    文件:WifiConfigController.java   
@SuppressLint("NewApi")
private void showIpConfigFields() {
    WifiConfiguration config = null;

    mView.findViewById(R.id.ip_fields).setVisibility(View.VISIBLE);

    if (mAccessPoint != null && mAccessPoint.networkId != INVALID_NETWORK_ID) {
        config = mAccessPoint.getConfig();
    }

    if (mIpSettingsSpinner.getSelectedItemPosition() == STATIC_IP) {
        mView.findViewById(R.id.staticip).setVisibility(View.VISIBLE);
        if (mIpAddressView == null) {
            mIpAddressView = (TextView) mView.findViewById(R.id.ipaddress);
            mIpAddressView.addTextChangedListener(this);
            mGatewayView = (TextView) mView.findViewById(R.id.gateway);
            mGatewayView.addTextChangedListener(this);
            mNetworkPrefixLengthView = (TextView) mView.findViewById(
                    R.id.network_prefix_length);
            mNetworkPrefixLengthView.addTextChangedListener(this);
            mDns1View = (TextView) mView.findViewById(R.id.dns1);
            mDns1View.addTextChangedListener(this);
            mDns2View = (TextView) mView.findViewById(R.id.dns2);
            mDns2View.addTextChangedListener(this);
        }
        if (config != null) {
            LinkProperties linkProperties = config.linkProperties;
            Iterator<LinkAddress> iterator = linkProperties.getLinkAddresses().iterator();
            if (iterator.hasNext()) {
                LinkAddress linkAddress = iterator.next();
                mIpAddressView.setText(linkAddress.getAddress().getHostAddress());
                mNetworkPrefixLengthView.setText(Integer.toString(linkAddress
                        .getNetworkPrefixLength()));
            }

            for (RouteInfo route : linkProperties.getRoutes()) {
                if (route.isDefaultRoute()) {
                    mGatewayView.setText(route.getGateway().getHostAddress());
                    break;
                }
            }

            Iterator<InetAddress> dnsIterator = linkProperties.getDnses().iterator();
            if (dnsIterator.hasNext()) {
                mDns1View.setText(dnsIterator.next().getHostAddress());
            }
            if (dnsIterator.hasNext()) {
                mDns2View.setText(dnsIterator.next().getHostAddress());
            }
        }
    } else {
        mView.findViewById(R.id.staticip).setVisibility(View.GONE);
    }
}