问题:智能货柜上线以后,因为分布在全国各地,或者在国外,遇到问题需要调试设备的时候,需要及时连接设备,查看设备信息,拉取日志。
一种方式是直接上传日志到云端,通过云端查看日志信息,但是耗费流量,而且浪费云端资源;
二种方式:采用VPN网络,通过adb tcp连接设备,就能访问设备,拉取日志,查看设备状态。
采用第二种方案比较好。
一、什么是VPN网络?
虚拟专用网(VPN)是一条通信隧道,可以在不可信的中间网络上提供身份认证和数据通信的点对点传输。大多数VPN使用加密技术来保护封装的通信数据,但是加密对于VPN 连接而言并非必需的。
简单来说,设备不论连接什么类型的网络,只要和VPN服务器提供的网络,那么这些设备就在VPN网络中,相当于在同一个虚拟局域网内。因此就可以使用adb访问智能货柜设备。
因为需要支持VPN访问,因此AOSP需要定制支持VPN权限。
二、集成步骤
2.1 去掉VPN授权确认弹窗
应用连接VPN,需要授权弹窗用户确认,默认直接授权。
frameworks/base/packages/VpnDialogs/src/com/android/vpndialogs/ConfirmDialog.java
mService = IConnectivityManager.Stub.asInterface(
ServiceManager.getService(Context.CONNECTIVITY_SERVICE));
// ==== modify start ==== zhouronghua VPN Authorize
try {
if (mService.prepareVpn(null, mPackage, UserHandle.myUserId())) {
// Authorize this app to initiate VPN connections in the future w


6万+

被折叠的 条评论
为什么被折叠?



