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();
        }
    }
}
相关推荐
糖炒栗子03262 分钟前
后端消息投递可靠性:基于 RabbitMQ 的“双重防线-幂等闭环”模式
java·后端·rabbitmq
不像程序员的程序媛3 分钟前
es查询是否存在某个字段
java·前端·elasticsearch
无籽西瓜a4 分钟前
【西瓜带你学设计模式 | 第九期 - 代理模式】代理模式 —— 静态与动态代理实现、优缺点与适用场景
java·后端·设计模式·软件工程·代理模式
别抢我的锅包肉5 分钟前
【Python】PySpark 核心实操入门指南
python
cyhysr6 分钟前
Python读取ppt文本转存txt
python·powerpoint
两年半的个人练习生^_^6 分钟前
ThreadLocal的使用和源码
java·开发语言
SarL EMEN6 分钟前
Spring boot创建时常用的依赖
java·spring boot·后端
A懿轩A6 分钟前
【NotebookLM 使用教程】 Slides 指令库:11套通用PPT风格Prompt(含中英文对照)
python·prompt·powerpoint·ppt·notebooklm
随风,奔跑7 分钟前
Spring Data Redis
java·redis·spring