故事會(huì) 好好的程序咋就天天報(bào)錯(cuò)呢?WinNAT?
事情是這樣的:
最近微軟畫(huà)的餅:Windows Subsystem for Android,基本上算是落地了(我寫(xiě)了一篇文章介紹這家伙,但我太懶了,一個(gè)月了文章都還沒(méi)落地)。我自己也正在用,總體評(píng)價(jià)是:
做得很好,下次別再做了(doge)
其實(shí)這貨還可以啦,通過(guò)這個(gè)項(xiàng)目(https://github.com/LSPosed/MagiskOnWSA)掛載上Magisk和LSPosed之后可玩性還是挺高的,所以我也一直沒(méi)卸載
但是,自從安裝WSA之后我的系統(tǒng)老是會(huì)出一些奇奇怪怪的問(wèn)題,像是什么Android調(diào)試橋連接不上WSA啦,JetBrains全家桶無(wú)法啟動(dòng)啦(我目前為止就遇到這兩個(gè))。經(jīng)過(guò)反復(fù)折騰,查資料順便聯(lián)系了一下JetBrains的技術(shù)客服,最終確定,就是Hyper-V帶起來(lái)的WinNAT弄出來(lái)的問(wèn)題
提示:Windows Subsystem for Android依賴于Hyper-V
起初是我安裝WSA之后Android調(diào)試橋無(wú)法連接,具體什么報(bào)錯(cuò)我也沒(méi)截圖,現(xiàn)在想復(fù)現(xiàn)也不簡(jiǎn)單。反正就是adb connect
127.0.0.1:58526和adb connect [::1]:58526都無(wú)法連接到WSA。我以為是我調(diào)試橋的問(wèn)題,開(kāi)代理去Android
Developer重新下載,無(wú)果。承重墻的軟件也不行。
這,多少就是不給面子了。
我就去查,結(jié)果發(fā)現(xiàn)有文章說(shuō)是Hyper-V會(huì)隨機(jī)保留一些端口,具體干什么我也不記得了,問(wèn)微軟去。反正就是會(huì)綁定一組隨機(jī)端口(是一組不是一個(gè)),如果你很幸運(yùn),保留范圍里面有58526,那你不管怎么折騰都不可能連接上WSA。
怎么解決呢?遇事不決先重啟,重啟電腦和WinNAT服務(wù)都可以
重啟服務(wù)簡(jiǎn)單一點(diǎn),像這樣:
以管理員身份運(yùn)行命令提示符/Powershell(不用管理員會(huì)報(bào)錯(cuò)訪問(wèn)被拒絕,你可以試一下),輸入這個(gè)指令:
其實(shí)理論上只要stop生效了就可以
一次不行就再重啟一次
現(xiàn)在應(yīng)該就可以連接了。
這是今年4月9號(hào)的事情


然而,WinNAT并沒(méi)有就此消停
前天,我準(zhǔn)備學(xué)習(xí)Python,打開(kāi)PyCharm報(bào)錯(cuò),CLion也一樣。
欸不對(duì)??!昨天不是還好好的,怎么回事呢?

我首先嘗試了重裝軟件,很遺憾,沒(méi)反應(yīng)
后來(lái)我又左左右右試了下解決問(wèn)題,沒(méi)辦法,根本修不好
然后我就去聯(lián)系了JetBrains的技術(shù)支持,等了兩天,今天我看到給我回信,是這樣的:


我看到重啟WinNAT的指令就意識(shí)到這是怎么回事了,試了下,成功
就是這樣,故事完結(jié)了
你還沒(méi)聽(tīng)夠嗎?這里還有一個(gè)事故:
