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();
        }
    }
}
相关推荐
好好研究1 分钟前
MyBatis框架 - 延迟加载+一/二级缓存
java·数据库·mybatis
n***26562 分钟前
【MySQL】MVCC详解, 图文并茂简单易懂
android·数据库·mysql
程序猿陌名!3 分钟前
Android-EDLA RK3576谷歌ATTESTION-KEY从申请到烧录以及验证谷歌认证标志全流程
android
安卓理事人4 分钟前
安卓版本升级功能
android
曹牧5 分钟前
C#中的StartsWith
java·服务器·c#
u***28475 分钟前
Python连接SQL SEVER数据库全流程
数据库·python·sql
测试199811 分钟前
接口测试工具之postman详解
自动化测试·软件测试·python·测试工具·测试用例·接口测试·postman
q***575013 分钟前
问题:Flask应用中的用户会话(Session)管理失效
后端·python·flask
青瓷程序设计14 分钟前
海洋生物识别系统【最新版】Python+TensorFlow+Vue3+Django+人工智能+深度学习+卷积神经网络算法
人工智能·python·深度学习