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();
        }
    }
}
相关推荐
大树91几秒前
把 Java 项目从手动 SCP 升级到 Gitee Go 自动部署:一份踩坑实录
java·golang·gitee
小白快快跑哦11 分钟前
python-字符串全解(四):字符串方法
开发语言·python·字符串
用户4671795783613 分钟前
【Java全栈教程】第18课:异常处理
java
她说..14 分钟前
MySQL 与 Java 的 JSON 数据处理
java·mysql·json·springboot
用户2986985301418 分钟前
Python 实现文本文件与 Word 文档互转的两种方法
后端·python·api
咖啡八杯20 分钟前
实体基类设计:BaseEntity 公共字段抽取与 TreeEntity 树形继承
java·架构·代码规范
mmsx21 分钟前
osmdroid 地图实战 05|让地图动起来:三个实时能力 + 六条工程排雷清单
android
Zane199422 分钟前
明明在赋值前读取,为什么还会报 UnboundLocalError?global 与 nonlocal 深挖
后端·python
码农coding23 分钟前
android12 SystemUI组件之StatusBar启动
android