美文网首页
钉钉GPS远程打卡

钉钉GPS远程打卡

作者: xhzth70911 | 来源:发表于2019-06-12 13:15 被阅读0次

    1.现在很多朋友遇到这样的困扰,一个月中总有那么几次,堵车,然后迟到,扣工资。 本文是帮你解决  钉钉GPS远程打卡。  让你以后再也不会迟到了。

    2.源码已经上传到 Github :https://github.com/xhzth7091/DingTalkOnlyGPS

    3.hook定位打卡,最简单最直接的就是直接hook APP的定位功能,这也就是要实现虚拟定位,因为钉钉的打卡页面是H5的,那么势必要调用原生的定位,那么肯定用到了locationManager:didUpdateLocations,在Hopper里搜索一下:

    4.然后把搜索到的方法,使用Theos,全部hook一遍,例如:

    %hook AMapLocationCLMDelegate

    - (void)locationManager:(id)arg1 didUpdateLocations:(id)arg2 {

    %log;

    %orig;

    }

    %end

    5.然后打开控制台,在钉钉里点击考勤打卡,然后注意控制台的输出,看哪个方法打印出来,最后打印是AMapLocationManager这个类

    6.好了,那么就可以下手修改我最终的目的 定位的经纬度,下载MonkeyDev 以后,创建一个新工程,把脱壳以后的钉钉的放到工程里,把下面代码的经纬度修改成你自己的经纬度:

    @class AMapLocationManager;

    CHDeclareClass(AMapLocationManager)

    CHOptimizedMethod2(self,void, AMapLocationManager, locationManager, id, arg1,didUpdateLocations,id,arg2){

        CLLocation *location = [[CLLocation alloc] initWithLatitude:纬度 longitude:经度];

        arg2 = @[location];

        CHSuper2(AMapLocationManager, locationManager, arg1,didUpdateLocations,arg2);

    }

    7.bundleId改成com.laiwang.DingTalk,不然运行钉钉,会弹出非法客户端弹窗。钉钉应该是对bundleId进行了检测

    8.由于钉钉包有270多M,所以没有上传,钉钉版本是4.3.0,大功告成

    相关文章

      网友评论

          本文标题:钉钉GPS远程打卡

          本文链接:https://www.haomeiwen.com/subject/onqrxctx.html