上上星期我把PokeMesh apk拆包研究它程式碼,後來它也更新了不少版
不過應該不會有太大差異,我簡單講下程式原理
首先他import Github上第三方api的Library,現在大家基本上都是用上面的api
這也不是那麼重要
在登入後他會取你的位置,然後用這個位置去跟伺服器要地圖物件資料
地圖物件資料其中包含:1.gym 2.pokestop 3.nearby pokemon 4.catchable pokemon
nearby pokemon是顯示在遊戲右下角的sighting裡
但是這些資料只有傳pokemon id,並沒有傳pokemon的位置
然後catchable pokemon中有給pokemon的位置及id,還有到期時間等
但是catchable pokemon只會給離你很近的pokemon資料,很容易沒拿到資料
所以PokeMesh以目前位置為中心,向外生成10個點,每10秒要一次資料
為什麼是10秒,在連線到伺服器後,伺服器有給最小掃怪時間為10秒
10個點也至少要100秒,所以才會覺得他偵測很慢
如果一次要太多資料官方更容易察覺到
至於推文有人說PokeMesh掃不到有沒有櫻花
在拿到PokeStop資料後,要知道有沒有櫻花還要額外再call一次api拿資料
Pokemesh用途是掃怪,有沒有櫻花對他來說沒有差,所以就沒有取
所以不是拿不到而是不想拿
而PokeMesh裡面有個功能是偵測選取位置附近的怪,其實這就是飛人的意思
一開始拿了A點附近的資料,過沒多久去拿了B點附近的資料
而A跟B距離接近或超過官方判斷的條件,就容易被鎖了
純學術研究,請各位指教