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

整编系统源码

相关推荐
冬奇Lab1 小时前
InputManagerService:输入事件分发与ANR机制
android·源码阅读
用户8356290780513 小时前
无需 Office:Python 批量转换 PPT 为图片
后端·python
日月云棠4 小时前
各版本JDK对比:JDK 25 特性详解
java
张小潇4 小时前
AOSP15 Input专题InputManager源码分析
android·操作系统
markfeng85 小时前
Python+Django+H5+MySQL项目搭建
python·django
用户8307196840825 小时前
Spring Boot 项目中日期处理的最佳实践
java·spring boot
JavaGuide5 小时前
Claude Opus 4.6 真的用不起了!我换成了国产 M2.5,实测真香!!
java·spring·ai·claude code
GinoWi5 小时前
Chapter 2 - Python中的变量和简单的数据类型
python
IT探险家6 小时前
Java 基本数据类型:8 种原始类型 + 数组 + 6 个新手必踩的坑
java
JordanHaidee6 小时前
Python 中 `if x:` 到底在判断什么?
后端·python