带有jni库的AOSP构建应用程序 [英] AOSP building application with jni libs

查看:163
本文介绍了带有jni库的AOSP构建应用程序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在AOSP中构建一个Android应用程序.

I am trying to build an Android application inside of AOSP.

我已经如下定义了 Android.bp 文件

cc_prebuilt_library_shared {
    name: "libPrintString",
    target: {
        android_arm: {
            srcs: ["lib/libPrintString.so"],
        },
        android_arm64: {
            srcs: ["lib64/libPrintString.so"],
        },
    },
    strip: { none:true, },
}

java_import {
    name: "stringutils",
    jars: ["libs/stringutils.jar"],
}

android_app {
    name: "HelloWorld",
    srcs: ["src/**/*.java",],
    platform_apis: true,
    product_specific: true,
    certificate: "platform",
    privileged: true,
    static_libs: [
        "com.google.android.material_material",
        "androidx-constraintlayout_constraintlayout",
        "stringutils",
    ],
    jni_libs: ["libPrintString"]
}

我已将我的应用程序放在/packages/apps 文件夹中,该项目具有以下结构

I have put my application in the /packages/apps folder, the project has the following structure

+ HelloWorld
  - Android.bp
  - AndroidManifest.xml
  + lib
    - libPrintString.so
  + lib64
    - libPrintString.so
  + libs
    - stringutils.jar
  + res
  + src

当我打电话给我时,我得到一个错误

When I am calling make I am getting an error

FAILED: ninja: 'out/target/product/mydroid/product/lib64/libPrintString.so', needed by 'out/target/product/mydroid/product.img', missing and no known rule to make it

有人可以帮我找到解决方案吗?

Can someone please help me to find a solution?

推荐答案

在与构建系统进行了长时间的斗争之后,我终于找到了解决方案,并写了一篇小文章详细描述了如何构建具有系统特权的应用程序

After long fights with the build system, I finally found a solution and wrote a small article to describe in details how to build an application with system privileges

如何使用系统特权构建Android应用

我仍然不完全理解为什么它在一开始不起作用,这很可能是因为我的构建系统没有清理旧的库,但是现在一切正常.

I still did not fully understand why it was not working in the beginning, most probably because somehow my build system was not cleaning old libraries, but now everything is working correctly.

这篇关于带有jni库的AOSP构建应用程序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆