前段时间发布的手游PokemonGo相信大家都有耳闻,而因为这个游戏在国内的坐标遭到了封锁,很多科学游戏方法也陆续涌现。好不热闹。

那其实,PokemonGo最初的版本,在大陆是可以通过简单的vpn+gps欺骗进行游戏的。

不过很快地,在新的版本更新中就封锁了这一方式。

而对Android系统使用GPS欺骗,应用场景也绝不只是这一个游戏而已。所以我今天来简单介绍一下可使用的几种方式。

控制噪声的方式有三种:防止噪声产生,阻断噪声传播和防止噪声进入耳朵

相对应的,

修改GPS定位结果的三种途径: 编译时修改NLP结果,运行时修改LocationManager结果,从应用获取到的结果修改。

1. 编译时修改NLP结果

难度系数:五颗星

建议:想都别想

大概思路:修改nlp部分源码,重编系统

2. 运行时修改LocationManager结果

这个分两类:

一类: 使用android自带的调试api,模拟gps provider的结果。

LocationManager.setTestProviderLocation(Provider, Location);

优点:简单,无需root

缺点:不稳定,特征明显,容易按特征嗅探到(有反作弊机制的游戏基本都能查出来),需要打开开发者的允许模拟位置选项

第二类: 使用xposed,传说中的android神器,用它对app_process进行注入。

有什么用呢,就是你可以放个钩子,英文名叫hook。这个钩子能知道你系统里的每个应用什么时候调用了哪个函数,还能修改对应的这个函数。

说到这就懂了吧。比如你猜测对应app会使用LocationManager.getLastKnownLocation的结果。然后你用xposed把内存里的这个函数返回值改成 纬度N 39.832670° 东经 E116.460370°,然后调用这个函数的程序看到的记过就是你修改之后的结果。

具体代码看这里吧(非本人repo,只是找了个简单易懂的demo)

FakeGPS demo

优点:稳定,难以被反查

缺点:需要root

3. 对想欺骗的app反编译,修改结果

该怎么做看标题就明白了。

步骤就是

反编译

找到所有使用了定位结果的位置

修改结果

重新打包

这个方式的优缺点也很明显。

优点: 无需root,稳定性强(前提是找准入口)

缺点: 技术水平要求高。根据应用复杂程度、混淆、安全策略等不同,难度差异较大。难易程度包括很多内容,包括混淆部分、入口寻找、签名验证等。 我也不熟啊,感兴趣的同学请自行深入学习吧。

————————

3类4种欺骗方式,各位看官收好。

以上。

android定位欺骗,1020. Android GPS定位欺骗(模拟定位)的3类途径4种方式相关推荐

  1. android 模拟gps坐标,1020. Android GPS定位欺骗(模拟定位)的3类途径4种方式

    前段时间发布的手游PokemonGo相信大家都有耳闻,而因为这个游戏在国内的坐标遭到了封锁,很多科学游戏方法也陆续涌现.好不热闹. 那其实,PokemonGo最初的版本,在大陆是可以通过简单的vpn+ ...

  2. 华为P9怎么修改AGPS服务器,如何提高华为P9的GPS定位服务 提高手机GPS定位服务教程...

    2016-11-09 17:06:09 如何提高华为P9的GPS定位服务 提高手机GPS定位服务教程 GPS全球定位系统,大家因该都知道手机都有这个功能,rom基地小编今天就来跟大家讲解一下如何提高G ...

  3. android功耗(23)---gps定位开发省电要点

    android手机gps定位开发省电要点 android手机使用GPS定位会非常费电.google工程师在quora上做了具体的解释,有兴趣可以看看 https://www.quora.com/Bat ...

  4. Android百度地图调用和GPS定位

    1.声明权限内容 其中的百度地图的key需要在百度地图的开发者上申请 申请key需要用到包名和SHA1 Window→preference→Android→Build 中有 package=" ...

  5. Android 通过Service 实现后台GPS定位

    前言 做移动GIS开发经常会使用到定位功能,很多时候通过代码里的手写定位代码在Activity中就实现了.虽然比较简单,但是也会有一些问题,比如定位慢,代码杂乱.一直都知道可以通过Service进行后 ...

  6. iphone gps android,iPhoneX与iPhone8出现GPS定位不准故障 新版iOS系统或能修复

    [TechWeb报道]11月10日消息,据国外媒体AppleInsider报道,在苹果社区支持论坛上,不断有帖子表明,iPhone X和iPhone 8手机在GPS定位的精度上出现了问题,但最新的iO ...

  7. oracle 翻译ip归属地/经纬度/定位;获取ip归属地/经纬度/定位;获取ip gps定位/lng,lat/坐标

    目录 首先.oracle 配置访问webservice/url 权限 由于本文使用了pljson,需安装pljson后使用 一.通过pconline获取归属地 二.通过ip-api获取归属地 三.通过 ...

  8. java如何实现实时定位_javaweb实现百度GPS定位接口(经纬度)

    百度web GPS定位(经纬度) 注册账号及配置地址 http://lbsyun.baidu.com/apiconsole/key 主类 BaiduWebAPI import java.util.Ma ...

  9. android如何绑定事件,Android_安卓为按钮控件绑定事件的五种方式

    一.写在最前面 本次,来介绍一下安卓中为控件--Button绑定事件的五种方式. 二.具体的实现 第一种:直接绑定在Button控件上: 步骤1.在Button控件上设置android:onClick ...

  10. Unity Android 之 获取系统语言(手机设备设置的系统语言)的二种方式(中文区分简体、繁体、日文)

    Unity Android 之 获取系统语言的二种方式(中文区分简体.繁体.日文) 目录 Unity Android 之 获取系统语言的二种方式(中文区分简体.繁体.日文) 一.简单介绍 二.实现原理 ...

最新文章

  1. 论文翻译 | LS-Net:单目双目视觉的非线性最小二乘学习算法
  2. 办公室自动化系统_大队举办办公自动化系统培训班
  3. Windows下使用Telnet 命令测试端口号
  4. 基于Coravel定时任务之计算总页数
  5. BUUCTF(pwn)护网杯_2018_gettingstart
  6. 非科班的java程序员该如何补充计算机基础知识,需要看哪些书?
  7. Hadoop之Yarn工作机制详解
  8. hdu_2089 不要62
  9. 程序员的算法课(3)-递归(recursion)算法
  10. class DELPHICLASS TObject
  11. 未能加载文件或程序集 请移除注册表值 [HKLM/Software/Microsoft/Fusion!EnableLog] 解决方法
  12. 吃是为了肉体,喝是为了灵魂
  13. 自学软件测试需要学到哪些内容?
  14. 云计算基础与应用 - 云计算架构
  15. 什么是小规模纳税人、小型微利企业、小微企业
  16. [读书]如果人类只有一种性别的话
  17. java 定时取出一段时间,Java 实现定时任务的三种方法
  18. webAppRootKey
  19. 神经网络训练算法的调用,人工神经网络训练案例
  20. U盘启动模式USB-HDD/HDD+/ZIP/ZIP+/CDROM/FDD的区别

热门文章

  1. 【开发心得】json解析报错Uncaught SyntaxError: Unexpected identifier的解决方法
  2. dnf mysql密码多少_DNF 台服数据库密码加密算法
  3. 基于SSM的智慧房屋租赁系统
  4. web前端性能优化--如何提高页面加载速度
  5. 网站自动跳转代码大合集
  6. CentOS6.5修改系统语言为英语
  7. 空间矢量脉冲宽度调制(SVPWM)Simulink仿真教程
  8. Win10任务栏卡死情况解决方案
  9. python美女源代码_python程序员爬取百套美女写真集,同样是爬虫,他为何如此突出...
  10. vscode-扩展插件