2021年04月16日 17:52 阅读量:3764
虚拟定位在github找到一个开源的https://github.com/pengliangAndroid/VirtualLocation
,在这基础上进行简单的修改,由于VirtualLocation项目其使用的虚拟化容器框架VirtualApp受使用授权限制,其VirtualApp框架的代码仅供个人研究
。
app/src/main/AndroidManifest.xml
applicationId "com.wstro.virtuallocation"
application sha1
app/src/main/java/com/wstro/virtuallocation/Constants.java
jarsigner -verify -verbose -certs /var/www/VirtualLocation/app/build/outputs/apk/app-debug.apk
#!/bin/bash
get_signature() {
path=`jar tf "$1" | grep RSA`
jar xf $1 $path
keytool -printcert -file $path
rm -r $path
}
mypath=`pwd`
filepath=""
if [ -d .temp_for_certificate ]
then
echo ".temp_for_certificate is exist,remove it first!"
exit
fi
mkdir .temp_for_certificate
cd .temp_for_certificate
count=0
while [ -n "$1" ]
do
if [ `expr substr "$1" 1 1` = "/" ] #绝对路径
then
filepath="$1"
else #相对路径
filepath="$mypath/$1"
fi
if [ -d $filepath ]
then
all_apk=`find $filepath -name "*.apk"`
for apk_path in $all_apk
do
count=$[$count+1]
echo "(#$count) "`basename "$apk_path"`":"
filepath=$apk_path
get_signature "$filepath"
echo "-----------------------------------------------------------"
done
else
count=$[$count+1]
echo "(#$count) "`basename "$1"`":"
get_signature "$filepath"
echo "-----------------------------------------------------------"
fi
shift
done
cd ..
rm -r .temp_for_certificate
echo "done!"
$ sh ./apk.sh app-debug.apk
(#1) app-debug.apk:
Owner: C=US, O=Android, CN=Android Debug
Issuer: C=US, O=Android, CN=Android Debug
Serial number: 1
Valid from: Tue Apr 13 18:12:21 CST 2021 until: Thu Apr 06 18:12:21 CST 2051
Certificate fingerprints:
MD5: 47:15:21:DA:1A:D9:C9:E3:7E:7C:CF:27:37:18:CE:CC
SHA1: 45:31:DD:E3:D9:E7:6D:E9:E6:F7:5E:A6:E8:94:77:22:0E:52:D2:74
SHA256: E4:79:3F:14:C9:64:B1:63:BB:3B:A3:14:07:F1:C1:E1:7F:9B:BD:21:FA:C6:4B:C7:4A:EE:86:D3:11:4B:40:47
Signature algorithm name: SHA1withRSA
Subject Public Key Algorithm: 2048-bit RSA key
Version: 1
这个VirtualLocation采用http://www.cellocation.com/
的免费接口,gps定位转wifi接口功能无法使用,解决方法采用模拟接口数据
反向基站查询接口
根据经纬度反查所在位置附近的基站编号
接口地址: http://api.xxx.com/recell/
反向WIFI查询接口
根据经纬度反查所在位置附近的WIFI热点MAC地址
接口地址: http://api.xxx.com/rewifi/
第一步 :百度地图经纬度拾取坐标系统,获取需要模拟的定位地方的经纬度
http://api.map.baidu.com/lbsapi/getpoint/index.html
第二步: 后台接口模拟返回数据