Android系统源码中添加可编译运行执行程序,java

文章目录

Android系统源码中添加可编译运行执行程序,java

1.Android设备中执行编译运行java代码

新建一个文件夹,以及Java类的包路径

测试代码

java 复制代码
package com.qfh.main;

public class TestJava
{
	public static void main(String[] args) 
	{
		System.out.println("Hello Java");
	}
}

在这个文件夹目录下新建一个Android.bp文件,对这个模块指定编译的方式

java 复制代码
java_library {
    name: "qfhtest",
    //打包成.dex文件才能被android虚拟机执行
    installable: true,
    srcs: ["**/*.java"],
    product_specific: true
}

在自定义的mk文件中,加上这个模块的名字,才能在编译系统的时候打包到系统里面

整编系统

运行模拟器,进入shell环境,来执行我们的java程序

发现有我们的jar包

java程序都要配置类路径

使用命令去执行

json 复制代码
export CLASSPATH=/product/framework/qfhtest.jar
app_process /product/framework/ com.qfh.main.TestJava

对比一下成功。

2.编译执行jar包

就拿我们刚刚的jar包来测试,

在out目录中自己找一下

Android.bp中

json 复制代码
java_library {
    name: "testjar",
    installable: true,
    product_specific: true,
    jars: ["qfhtest.jar"],
}

同样的方法

json 复制代码
PRODUCT_PACKAGES += testjar

整编系统源码

相关推荐
她的男孩5 小时前
Spring Boot 接 Flowable 工作流:用 3 个注解搭一个请假审批流程
java·后端·架构
你好潘先生6 小时前
别再记命令了,用 yeero do 说句人话就能跑脚本,而且不烧 token
服务器·python·命令行
Agent_大师6 小时前
WebSocket 行情重连成功,K线缺口不会自动消失
python
荣码6 小时前
LLM结构化输出:让AI返回JSON而不是废话,我踩了4个坑
java·python
copyer_xyf7 小时前
FastAPI 如何连接 MySQL
后端·python
黄林晴7 小时前
Room 3.0 正式发布!包名彻底重构,KMP 成为核心主线
android·android jetpack
三少爷的鞋8 小时前
Kotlin 协程环境下的 DCL 懒加载:别把线程时代的经验直接搬过来
android
plainGeekDev8 小时前
Gson → kotlinx.serialization
android·java·kotlin