EasyClick iOS自动化代理IPA挂了 如何再次启动?

解决方法:

必须先完成前置准备 ------ 在主程序中已完成 高级功能 ➡️ "自激活配置",这是实现下文操作的基础前提。

通用的重启流程可通过以下三步完成 (适用于日常异常重启或永生循环)

✔ 自激活 ✅ → ✔ 杀掉代理 ✅ → ✔ 重启代理 ✅

【详见高级功能介绍-自激活配置一章】

地址是:https://ieasyclick.com/iostjdocs/zh-cn/advance/activemyself

代码中如何使用呢?

javascript 复制代码
function testactive1_ext_vpn() {
    logd("testactive1_self_vpn");

    // 1. 首先开启内置 VPN(如果使用外部 VPN,则按实际情况配置)
    activeSelf.openSelfVpn();
    sleep(3000);
    let ar = activeSelf.getOpenSelfVpnError();
    if (ar != "") {
        loge("打开自带VPN失败,错误消息:" + ar);
        return false;
    }
    sleep(2000);

    // 2. 启动自激活模块,超时设为 30000 ms
    let acData = activeSelf.startActiveMySelf(30000);
    if (!acData || acData["code"] != 0) {
        loge("自激活失败:" + (acData ? acData["msg"] : "无返回"));
        return false;
    }
    logd("自激活成功!!");
    logd("镜像挂载状态:" + activeSelf.mountImageOk());

    // 3. 关闭 VPN
    activeSelf.disableSelfVpn();
    return true;
}

function testOpenApp() {
    logd("testOpenApp");
    
    // 4. 开启 VPN(同上)
    activeSelf.openSelfVpn();
    sleep(5000);
    let error = activeSelf.getOpenSelfVpnError();
    if (error != "") {
        loge("打开自带VPN失败:" + error);
        activeSelf.disableSelfVpn();
        return false;
    }
    sleep(2000);

    // 这里设定是代理IPA的 Bundle ID(实际使用填写你自己的 Bundle ID)
    let runner = "com.cy.ceshi"; 

    // 5. 调用 openApp 重启该代理IPA
    let rsd = activeSelf.openApp(runner, 0, 0, 30000);
    if (!rsd || rsd["code"] != 0) {
        loge("打开APP失败:" + (rsd ? rsd["msg"] : "无返回"));
        activeSelf.disableSelfVpn();
        return false;
    }

    logd("打开APP成功:" + JSON.stringify(rsd));
    activeSelf.disableSelfVpn();
    return true;
}

你也可以按照以下方式进行封装触发 (随手写最简单的流程):

javascript 复制代码
function rebootAgentIPA() {
    logd("开始重启代理IPA...");

    // 前置自激活模块
    let activateResult = activeSelf.startActiveMySelf(30000);
    if (!activateResult || activateResult["code"] !== 0) {
        loge("自激活失败:" + activateResult?.msg || "未知错误");
        return false;
    }

    logd("自激活成功 ✅");
    logd("镜像挂载:" + activeSelf.mountImageOk());

    let bundleId = "com.your.proxyipa"; // 改成你实际的IPA Bundle ID
    
    // 干掉现有进程
    let killResult = activeSelf.killApp(bundleId, 30000);
    if (killResult && killResult["code"] === 0) {
        logd("代理IPA已被干掉 ✅");
    }

    // 重启代理IPA
    let openResult = activeSelf.openApp(bundleId, 0, 0, 30000);
    if (openResult && openResult["code"] === 0) {
        logd("代理IPA已重启 ✅ PID:" + openResult.data);
        return true;
    } else {
        loge("代理IPA重启失败:" + openResult?.msg || "未知错误");
        return false;
    }
}

注意事项:

必须在脱机版版本 6.1.0 及以上(activeSelf.openApp/killApp 支持)。

所有示例均使用内置 VPN,文档提示也可使用外部 VPN LocalDevVpn 程序,此时需确保主程序在后台运行时不被系统杀死。

推荐加入异常检测并配合 restartScript 函数实现循环失败重新尝试。

有了以上的功能,可以实现iOS免越狱,脱机跑脚本,并且自动化服务永远都存在

相关推荐
撩得Android一次心动4 小时前
Jetpack Compose 知识点整理3【个人用】
android·笔记·学习·kotlin·android compose
Kapaseker5 小时前
别再只会写 <T>:Kotlin 泛型的实战用法
android·kotlin
FlightYe5 小时前
音视频修炼之容器与协议(一):MP4和MOV的box剖析
android·linux·c++·ffmpeg·音视频
海宇服务5 小时前
零信任架构实战:基于海宇网上踪迹欺诈行为识别构建自动化电商大促营销补贴风控网关
运维·人工智能·架构·自动化
会写代码的青蛙6 小时前
青蛙自动化
运维·自动化
举个栗子。6 小时前
443 条断言全绿,输入框却 9 次提交都不能用:一次关于「假护栏」的复盘
微信小程序·自动化·ai编程
茶底世界之下6 小时前
窗光静物一定要更亮吗?用 Awaking 把曝光收回一点
ios
jlw90097 小时前
超声波自动转盘焊接机直销厂家
自动化
Vitaliy Kostrov(柯维远)7 小时前
客户端如何检查直播流:从流内标记到停止播放
android·运维·服务器·驱动开发·网络安全·系统架构·cdn
Eyfcom7 小时前
〖实战〗跨境报关单证自动化:XML 报文生成、PDF 套打与单一窗口同步上传的工程实现
xml·pdf·自动化·报关单证·清关自动化