先說本篇沒有任何程式碼,也不是教學文,畢竟最終結果是失敗的,只是一個紀錄
上一篇說到,公司提供trojan-go協議叫我試試看,我上網查一下除了我以前聽過的,近幾年又多出許多新協議,trojanp-go就是其中一個,他是走443port,偽裝https協議,是因為這樣所以C國不會擋?阿災,總之就動手做做看吧。想不到這一試,人生就浪費了近一週
首先估狗後只找到一個flutter plugin,最後一次commit是三年前.....能不擔心嗎==,然後整個plugin 還沒有上flutter hub,這令我有些擔心,把這個repo載下來後,嘗試放在資料夾內,試圖參照example資料夾的引用方式來因用這個plugin,但一直無法實際產生那些class,嘗試了好半天,第一步宣告放棄。
下一步詢問claude,他建議我到trojan官方github,把二進制的執行檔複製到手機裡,最後透過process.run去執行。原來是go寫的專案,那這一切都相當合理了,只是當一切看似進行順利的時候,最後卻出現Permission Denied......,無論怎麼修改執行權限都不通,最終一樣宣告放棄。
再次聯繫上水哥大神,用一塊雞排換得他的幫助,水哥先是到plugin的release把source code載下來,然整理到可以把example裡的專案run起來才轉給我,他說github上的code沒有aar檔,直接clone下來也是白搭,最後再說一句:這專案真的是爛透了。身為小白的我哪懂這些,只是再復述了一次:這專案真的是爛透了!
幾經折騰,確實把專案run起來了,但真的把配置送進去卻沒有真正連上vpn。
我左思右想,難道要在這裡放棄?既然這個plugin只是透過android跟aar溝通,那我是否可以直接寫android,行吧,在試最後一次
打開近十年沒有開啟的android專案,基本webview都建好了,然後我想說plugin的aar既然起碼是三年前的,那我去官方抓最新的來build好了,所以我重回官方github,然後再載gomobile來 build aar,然後一直都build不出來.....那能否直接使用plugin的aar?這部分我記憶有點模糊,但我印象好像跟新版的class function都不一樣,總之最終我還是放棄了
最終把這不幸的消息告知PM,卻換得一句:那我們再嘗試下一個協議吧!(靠X不是早說不行了嗎)......這趟旅程還要走多久呢==
沒有留言:
張貼留言