Bought a new AutoBot dashcam. iOS app worked; Android could not add devices. This documents a Frida patch plus optional Frida-gadget repack.

Also fixes an infinite crash from JPush.

Frida hook

Download: autobot-frida-hook.js

frida -U -f com.vgoapp.autobot -l autobot-frida-hook.js --no-pause
'use strict';

setImmediate(function () {
  Java.perform(function () {
    Java.use('cn.jpush.android.service.k').run.implementation = function () {};

    function ok() { return '{"SUCCESS":true}'; }

    Java.use('com.vgoapp.autobot.view.setting.u')
      .a.overload('java.lang.Throwable', 'java.lang.String')
      .implementation = function (th, body) {
        console.log('[setting] ' + body);
        return this.a(ok());
      };

    Java.use('com.vgoapp.autobot.view.setting.aq')
      .a.overload('java.lang.Throwable', 'java.lang.String')
      .implementation = function (th, body) {
        return this.a(ok());
      };
  });
});

Uncomment the HTTP block in the download to proxy API calls to your own server (e.g. 127.0.0.1 or https://autobot-1p.api.zhis.ltd).

Official APK

Pairing order

  1. Add Magic first — wait for success
  2. Then add Eye + Magic

Adding Eye+Magic first can show success while Magic never appears in the list.

Rootless repack (Frida-gadget)

Based on Frida + LIEF. Tools: Apktool, LIEF, frida-gadget (armeabi only).

Decode

apktool d AutoBot_4.5.apk -o autobot.out

Inject gadget

import lief

lib = lief.parse("libjpush180.so")
lib.add_library("libgadget.so")
lib.write("libjpush180.so")

libgadget.config.so:

{
  "interaction": {
    "type": "script",
    "path": "/data/local/tmp/myscript-autobot.js",
    "on_change": "reload"
  }
}

Place libgadget.so (renamed from frida-gadget-*-android-arm.so) and config under autobot.out/lib/armeabi/.

Rebuild, sign, deploy

apktool b autobot.out -o autobot-frida.apk
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 \
  -keystore your.jks autobot-frida.apk your_alias

adb push autobot-frida-hook.js /data/local/tmp/myscript-autobot.js
adb install -r autobot-frida.apk

Use your own keystore. Only on devices you own.