## 描述
在使用oculus时,常常提示网络连接受限,没法投屏。
这有一个不用翻墙的解决办法。
## 原因
> 从 Android 5.0(API 级别 21)开始,Android 设备就已能够检测 `Captive Portal` / 强制门户,并通知用户他们需要登录网络才能访问互联网。
Android原生系统用于检测的默认服务器是谷歌的,由于GFW的原因无法访问。
因此我们可以修改为国内服务器,或者干脆直接关闭检测。
## 解决步骤
### 1.打开开发者模式
为了使用abd更改 ` global captive_portal_https_url `,需要将安卓系统设备连接到电脑上。
只有开启了开发者模式,才会检测到安卓设备。
为了打开oculus的开发者模式,需要
- 先注册facebook的oculus开发者账号,
- 并通过手机端oculusAPP登录该账号(登陆时还强制要求手机中同时有facebook社交APP)
- 手机匹配头盔与手柄
- 在手机中打开oculus的开发者模式
> ps: 题外话,如果想进入安卓机的开发者模式,没有那么麻烦,在手机设置中的某个界面连点7下就可以了(因厂家而异)
### 2.下载adb工具到电脑
链接在此:[在视频简介里](https://www.bilibili.com/video/BV1XB4y117e7?p=1&share_medium=android&share_plat=android&share_session_id=faa197cb-b842-4732-bd47-1f4bf406e789&share_source=COPY&share_tag=s_i×tamp=1652096916&unique_k=t6rQrK7&vd_source=2e6cafc318ed5580cf83747d637dc461)
### 3. 敲命令
数据线连oculus到电脑
` adb devices `查找电脑连接的安卓设备,` 1WMHH8469JG1356 `是设备号
```
./adb devices
--------------------------------
List of devices attached
1WMHH8469JG1356 device
```
#### 方法一,改默认地址为国内
2. ` ./adb -s 1WMHH8469JG1356 shell settings put global captive_portal_http_url http://connect.rom.miui.com/generate_204 `
更改` captive_portal_http_url `参数,改为` http://connect.rom.miui.com/generate_204 `
该网址自动返回` 204 `(**HTTP 204** 表示服务器端成功处理了请求,但不需要返回任何实体内容)
**默认使用https链接,所以光改http_url没有用**
还需要:` ./adb -s 1WMHH8469JG1356 shell settings put global captive_portal_https_url https://connect.rom.miui.com/generate_204 `
修改完成,查看一下,好像没问题了
```
PS C:\Users\31646\Downloads\adb> ./adb -s 1WMHH8469JG1356 shell settings get global captive_portal_https_url
https://connect.rom.miui.com/generate_204
PS C:\Users\31646\Downloads\adb> ./adb -s 1WMHH8469JG1356 shell settings get global captive_portal_http_url
http://connect.rom.miui.com/generate_204
```
#### 方法二,关闭检测模式
```
#关闭检测:
adb shell settings put global captive_portal_mode 0
#查看当前状态:
adb shell settings get global captive_portal_mode
```
Oculus网络连接受限