企业微信打卡定位怎么修改?
企业微信打卡定位怎么修改?
现在微信公众号这么普及,已经融入了我们的日常生活,用微信做签到打卡是一种不错的选择,既省时又省力。现在很多企业都这么选择。那么企业微信打卡定位怎么修改?下面小编就给大家介绍一下。
1.脱壳:使用Clutch脱掉从App Store下载的企业微信App的壳。
2.导出头文件:使用ClassDump导出脱壳后程序的头文件。
3.定位目标:因为要修改的是打卡定位的功能,第一时间想到的是替换GPS返回给APP的位置信息,从而影响APP的定位位置。而iOS原生开发中,定位相关的内容在CLLocation中。因此,使用Hooper加载脱壳后的程序,搜索didUpdateLocations(这是原生开发中获取经纬度常用的代理方法),出现了一些使用了这个代理方法的方法。在Tweak中hook它们的实现,改掉代理返回的经纬度信息,并传给它们原来的实现。经尝试,这种改法并不能成功,因此又继续寻找,发现企业微信使用的是腾讯地图,使用之前的方式,Hooper中搜索didUpdateUserLocation,hook实现、改返回经纬度、传给原实现,可以成功修改定位位置。此deb插件(1.3.2版本)
最近使用,发现企业微信版本升级,原有插件已失去效果。重新分析,发现腾讯地图新增了代理方法didUpdateToLocation fromLocation,Hooper搜索didUpdateToLocation,hook实现、改返回经纬度、传给原实现。重新搜索之前的didUpdateLocations、didUpdateUserLocation,发现之前版本有些文件已经没有了,有些文件是新增的(最近版本可能做了代码重构)。修改Tweak,按之前的方法挨个hook,成功修改定位位置。(1.3.4版本)
BTW:经同事提醒,尝试hook CLLocation coordinate get方法,但是并没有成功修改微信定位位置,页面变成定位失败。从网上看到可以hook住CLLocationManager的startUpdatingLocation方法,没有试过,感觉是可以一试的。
4.制作Tweak:使用THEOS生成Tweak文件,编写之前分析得到的hook代码,打包、安装,后台杀死APP并重新打开,发现定位位置已经变成我们想要的了。
PS:deb文件中增加了输入经纬度的输入框,输入经纬度会保存在本地,下次进入自动使用以前输入的位置。经纬度需要按照提示的格式填写,相关位置的经纬度可以自行百度,要google地图的坐标(我忘了,好像是的)
通过以上的描述你是否了解企业微信打卡定位怎么修改?这样如此全面、有效、简单的恢复方法,你学会了吗?
卖贝商城更多商品介绍:博客营销推广软件 伊秀女性网软文价格 天津电视一套综合广告部电话