在我们的业务需求里,需要经常测到地理位置相关的需求。 如果按照正常的场景来测试,我们只能测试自己的定位在北京的场景以及IP位置在北京的场景。
要解决以上的困境,可以找一个修改虚拟定位的软件,但是目前来看,android平台上并没有特别合适 好用且适合我们应用A的定位软件。有的虚拟定位软件修改后,可能其他的应用生效, 但是A并没有生效。 还有一些付费的虚拟定位软件,就暂未尝试了。
在最新的需求里,如果用户不开启定位的话,那么会通过IP地址来确定经纬度,从而进行展示距离以及附近列表的推荐分发。 这种场景下,我们除了用北京的IP来测试之外,是不能用海外的IP来测试的,在服务端处理的逻辑是,如果是海外的IP,服务端会进行默认处理
那么这时候,我们就可以采用国内的代理IP来进行测试了。在这里我推荐一款app ,爱加速。 官网地址如下:https://www.91ajs.com/ app支持全国31个省份的代理节点。当然有的可能需要付费,但是对于我们日常测试来说,免费试用即可。 目前应该是注册后3天免费,之后的话是每天免费20分钟,一般来说,足够使用了。
支持android 和ios,只需要去应用商店下载即可,我个人觉得还是比较好用的(非广告,请爱加速的人看到的话可以考虑支付一下广告费)
说一下这个代理的适用的场景:
- 国外用户要访问国内的应用,比如淘宝,B站等,国内IP加速
- 游戏-部分游戏登录地区有限制,或者会检测网络异常状况
- 推广。 在各种自媒体或者社交论坛,来发送不同IP定位的帖子进行营销等。
使用步骤也很简单:
- 打开app,进行节点选择 我这里选择福建福州,连接之后我们启动应用A
- 启动应用A有个前提是不开定位服务,因为我们现在测试的场景是通过IP定位,如果有GPS定位,还是会优先用GPS定位的。
- 查看应用A的定位展示为福建福州
- 开发这里提供了Redis的查询命令,来确认服务端通过IP获取的经纬度 是否和 我们设置的区域一直
- 访问对应的Redis集群
- 创建连接
- 然后我们输入redis命令:hgetall user:XXXXX:profile 需要将xxxx替换为对应的你自己的ID。然后执行命令,查看结果
- 我们查看redis输出的iplat 和iplng 字段
- LAT是维度,LNG是精度,我们复制这个经纬度地址。
- 访问:https://www.abcdtools.com/latlong 然后打开经纬度查询地址页面,将刚刚的经纬度地址进行复制,可以看到和我们的设定的IP位置保持一致
- 然后我们就可以在APP里,看对应的这个人没有开启GPS情况下,在附近列表进行分发的距离展示是否准确了。
- 什么?你不知道距离怎么看?最简单的就是用高德了
-
至此,教程结束
当然,非自己工作业务之外的其他场景,只需要选中节点,启动你自己需要虚拟IP的应用即可
创作不易,如果您觉得这篇文章对你有帮助,不妨给我点个赞,这将是我继续分享优质内容的动力。
我准备了一个导航网站,上面记录了一些常用的网站集合,也包含一些羊毛,应该可以帮到你,感兴趣可以访问:https://u1s1.one/ ,欢迎收藏使用