Android 代码中启动java程序 app_process

Android 代码中启动java程序

通过app_process 即可 App的启动在源码里也是通过app_process

Runtime.getRuntime().exec 用执行命令行的方式 通过 app_process来启动新的进程

demo

JavaProcess 要加载的java程序代码 其中要有main函数入口

java 复制代码
import android.util.Log;

public class JavaProcess {
 
    public static void main(String[] array){
        boolean isShow = false;
        if (array != null && array.length > 0){
            isShow = Boolean.valueOf(array[0]);
        }
        Log.e("Mny","HIjack");
        System.out.println("输出参数"+isShow);
    }
}

MainActivity

java 复制代码
public class MainActivity extends AppCompatActivity {
    String cmd;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        cmd = String.format("export CLASSPATH=%s;exec app_process /system/bin  %s %s ---application",
                this.getApplicationContext().getPackageResourcePath(),//应用包路径
                JavaProcess.class.getName(), //需要执行的java类
                "xxxxx");//java类main参数
        runExex(cmd);
    }
    public void runExex(String cmd){
        try{
            Process process = Runtime.getRuntime().exec("su");// 切换到root帐号
            DataOutputStream os = new DataOutputStream(process.getOutputStream());
            os.writeBytes(cmd);
            os.writeBytes(" exit \n");
            os.flush();
        }catch ( Exception e){
            e.printStackTrace();
        }
    }
}
相关推荐
zfoo-framework12 小时前
1.ansible安装 2.虚拟机克隆
java
林泽毅12 小时前
PyTRIO:当强化学习不再需要本地GPU
人工智能·python·深度学习·机器学习
码上解惑12 小时前
从 Dify 工作流说起:常用节点怎么选、怎样组合?
java·人工智能·ai·agent·dify·智能体·spring ai
小陈phd12 小时前
QAnything 阅读优化策略05——检索
人工智能·python·机器学习
ruofu3312 小时前
wsl端是py312,但是项目是py311, 如何下载py311的依赖包(wheels)
python·docker
小大宇13 小时前
python flask框架 SSE流式返回、跨域、报错
开发语言·python·flask
像风一样的男人@13 小时前
python --fastapi推流AI推理
人工智能·python·fastapi
2601_9563198813 小时前
最新量化开发卡住,先查规则和流程是否完整
人工智能·python
青山木13 小时前
Hot 100 --- 岛屿数量
java·数据结构·算法·leetcode·深度优先·广度优先