APP 和 native 使用的说明
App 使用默认网络
在android 中 一个app使用网络,须要在manifest 申请一下javascript
这种方式将使用default网络,好比WIFI 和 数据网络,android 同一个时间点,只能有一个default网络(这个默认网络实质是什么或者怎么实现的,后面分析netd的文章会写)java
那有没有一种方式能够不使用默认网络呢,好比使用一个专有的网络通道访问专有的服务,答案是有的
APP使用指定网络linux
经过 requestNetwork 申请一个网络
在NetworkCallback中的onAvailable的方法去调用bindProcessToNetwork 去bind这个网络
上两步后APP的网络流量将会走这个network,或者说走这个network 指定的 网卡
补充说明一下 :NetworkRequest 在CS对应一个NetworkRequestInfo ,通常状况下一个NetworkRequestInfo对应了一个client进程
一个例子android
NetworkRequest request = new NetworkRequest.Builder()
.addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)
.addTransportType(NetworkCapabilities.TRANSPORT_CELLULAR)
.build();
mNetworkCallback = new ConnectivityManager.NetworkCallback() {
@Override<