① android模擬器模擬基站信息,並將wifi偽造成4g數據信息
許多國產軟體都會使用基站進行定位,android模擬器是沒有流量卡的,所以沒有基站位置,但是我們可以通過Xposed來讓模擬器擁有指定的基站信息。擁有基站信息的模擬器就可以在地圖app中定位了,這種方式比通過hook修改經緯度要更加好一點,可能大多數軟體都是基站來判斷,而不是經緯度。
基站定位使用到如下概念
通過telephonyManager # getNetworkOperator()獲取得到,它返回一個字元串長度為5的值,前3位就是MCC ,後兩位為MNC
接下來就是我們Xposed出場的時候了,通過真機運行BaseStationInfoDemo項目(包含上面這些方法)得到真實數據信息。將數據記錄並運行HookCellInfoDemo項目(修改了模擬器的基站信息),然後在模擬器上運行BaseStationInfoDemo項目,觀察日誌輸出,並可以在模擬器上打卡網路地圖等地圖軟體觀察當前位置。
getCellLocationMethodHook的實現如下:族含棚
就是在beforeHookedMethod中直接通過setResult將新建的帶有基站LAC和CID信息的GsmCellLocation 返回。
首先看下源碼中NerworkInfo類的實現方式,發現其是一個實現了Parcelable接兆則口的序列化對象,它擁有多個成員變數,這里只需要修改6個,其他的在wifi或者4g網路的情況下的值不變
這樣的話,最終模擬器的網路情況是有wifi圖標,但是在指定包名內獲取到的網老行絡類型和NetworkInfo卻是4g類型的數據,符合我們的業務需求。
附上源碼地址: https://github.com/carrys17/CellInfo
裡面的兩個文件夾分別就是BaseStationInfoDemo項目和HookCellInfoDemo項目
② 手機怎麼開啟4G網路
4g手機怎麼用4g網路
開啟4G網路需要有三個條件:1、手機支持4G網路,2、手機卡支持4G網路,3、你附近有4G網路的基站。如果這三個條件任何一個達不到都上不了4G網路的。有的時候你明明是4G的手機卡和手機但是上網的時候顯示的就是3G就是因為附近沒有基站。那就給大家演示一下在手機上怎麼把4G網路開啟。
在手機上找到【設置】選項。點擊進入。
進入手機全部設置點擊【稱動網路】。
移動網路設置界面下點擊【網路模式】。
首選網路模式選擇【4G/3G/2G自動選擇】意思是如果你附近近有4G的網路優選使用4G。如果沒有自動轉為3G以此類推。。
4G手機突然不能上4G網路怎麼辦
首先,確保您的手機是4G手機,手機卡也是4G的,就是顯示3G網路的。
打開手機,找到信息,編輯QXGPRS發送到10086。
發送後等待回應。
別急,您才完成一半哦,收到上圖信息後,再次找到簡訊,編輯KTGPRS發送到10086。
發送成功,等待回應。
長按手機 開關 機鍵,點擊重新啟動,等待開機,一般就會成功顯示4G了,如果上述步驟都操作了,還是顯示3G就打10086網元同步。