Android.mk转换到Android.bp方法(二十九)

2024-05-07 22:32

本文主要是介绍Android.mk转换到Android.bp方法(二十九),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Android.mk转换到Android.bp方法 

1.源码在:build/soong/androidmk2.编译源码后,androidmk生成工具位置
# out/soong/host/linux-x86/bin/androidmk3.使用命令
栗子:Android.mk
LOCAL_PATH:= $(call my-dir)                                                                                                                                                                                                                                                                                                                                                                                                    
include $(CLEAR_VARS)                                                                                                                                                                                           
LOCAL_PRIVATE_PLATFORM_APIS := true                                                                                                                                                                             
LOCAL_MODULE_TAGS := optional                                                                                                                                                                                   
LOCAL_CERTIFICATE := platform                                                                                                                                                                                   
LOCAL_SRC_FILES := $(call all-java-files-under, src)                                                                                                                                                            
LOCAL_PACKAGE_NAME := test                                                                                                                                                                                      
LOCAL_DEX_PREOPT := false                                                                                                                                                                                                                                                                                                                                                                                                 
include $(BUILD_PACKAGE)# androidmk  Android.mk > Android.bp
Android.bp生成如下:
android_app {                                                                                                                                                                                                                                                                                                                            
// LOCAL_PRIVATE_PLATFORM_APIS := true                                                                                                                                                                                                        certificate: "platform",                                                                                                                                                                                    srcs: ["src/**/*.java"],                                                                                                                                                                                    name: "test",                                                                                                                                                                                               dex_preopt: {                                                                                                                                                                                               enabled: false,                                                                                                                                                                                         },                                                                                                                                                                                                                                                                                                                                                                                                                          
}4.禁止framework/base/Android.bp生成odex
java_library {name: "framework",//禁止生成odexdex_preopt: {                                                                                                                                                                                              enabled: false,                                                                                                                                                                                        },srcs: []
}5.编译可执行程序:Android.mk---->Android.np
<1>.Android.mk
LOCAL_PATH := $(call my-dir)                                                                                                                                                                                    include $(CLEAR_VARS)                                                                                                                                                                                           
#LOCAL_C_INCLUDES:= external/tinyalsa/include                                                                                                                                                                   
#LOCAL_CPPFLAGS := -std=c++11 -Wall -Werror #C++                                                                                                                                                                
LOCAL_MODULE_TAGS := optional                                                                                                                                                                                   
LOCAL_MODULE := test_bb                                                                                                                                                                                         
LOCAL_SRC_FILES := test.c                                                                                                                                                                                       
LOCAL_CFLAGS += -Wall -Werror                                                                                                                                                                                   
LOCAL_SHARED_LIBRARIES:= libcutils libutils                                                                                                                                                                     
include $(BUILD_EXECUTABLE) # androidmk Android.mk > Android.bp
<2>.Android.bp
cc_binary {                                                                                                                                                                                                     //LOCAL_C_INCLUDES:= external/tinyalsa/include                                                                                                                                                              //LOCAL_CPPFLAGS := -std=c++11 -Wall -Werror #C++                                                                                                                                                           name: "test_bb",                                                                                                                                                                                            srcs: ["test.c"],                                                                                                                                                                                           cflags: [                                                                                                                                                                                                   "-Wall",                                                                                                                                                                                                "-Werror",                                                                                                                                                                                              ],                                                                                                                                                                                                          shared_libs: [                                                                                                                                                                                              "libcutils",                                                                                                                                                                                            "libutils",                                                                                                                                                                                             ],                                                                                                                                                                                                          
}

这篇关于Android.mk转换到Android.bp方法(二十九)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/968576

相关文章

PHP轻松处理千万行数据的方法详解

《PHP轻松处理千万行数据的方法详解》说到处理大数据集,PHP通常不是第一个想到的语言,但如果你曾经需要处理数百万行数据而不让服务器崩溃或内存耗尽,你就会知道PHP用对了工具有多强大,下面小编就... 目录问题的本质php 中的数据流处理:为什么必不可少生成器:内存高效的迭代方式流量控制:避免系统过载一次性

python获取指定名字的程序的文件路径的两种方法

《python获取指定名字的程序的文件路径的两种方法》本文主要介绍了python获取指定名字的程序的文件路径的两种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 最近在做项目,需要用到给定一个程序名字就可以自动获取到这个程序在Windows系统下的绝对路径,以下

JavaScript中的高级调试方法全攻略指南

《JavaScript中的高级调试方法全攻略指南》什么是高级JavaScript调试技巧,它比console.log有何优势,如何使用断点调试定位问题,通过本文,我们将深入解答这些问题,带您从理论到实... 目录观点与案例结合观点1观点2观点3观点4观点5高级调试技巧详解实战案例断点调试:定位变量错误性能分

使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解

《使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解》本文详细介绍了如何使用Python通过ncmdump工具批量将.ncm音频转换为.mp3的步骤,包括安装、配置ffmpeg环... 目录1. 前言2. 安装 ncmdump3. 实现 .ncm 转 .mp34. 执行过程5. 执行结

Python中 try / except / else / finally 异常处理方法详解

《Python中try/except/else/finally异常处理方法详解》:本文主要介绍Python中try/except/else/finally异常处理方法的相关资料,涵... 目录1. 基本结构2. 各部分的作用tryexceptelsefinally3. 执行流程总结4. 常见用法(1)多个e

Java实现将HTML文件与字符串转换为图片

《Java实现将HTML文件与字符串转换为图片》在Java开发中,我们经常会遇到将HTML内容转换为图片的需求,本文小编就来和大家详细讲讲如何使用FreeSpire.DocforJava库来实现这一功... 目录前言核心实现:html 转图片完整代码场景 1:转换本地 HTML 文件为图片场景 2:转换 H

JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法

《JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法》:本文主要介绍JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法,每种方法结合实例代码给大家介绍的非常... 目录引言:为什么"相等"判断如此重要?方法1:使用some()+includes()(适合小数组)方法2

Python中Json和其他类型相互转换的实现示例

《Python中Json和其他类型相互转换的实现示例》本文介绍了在Python中使用json模块实现json数据与dict、object之间的高效转换,包括loads(),load(),dumps()... 项目中经常会用到json格式转为object对象、dict字典格式等。在此做个记录,方便后续用到该方

504 Gateway Timeout网关超时的根源及完美解决方法

《504GatewayTimeout网关超时的根源及完美解决方法》在日常开发和运维过程中,504GatewayTimeout错误是常见的网络问题之一,尤其是在使用反向代理(如Nginx)或... 目录引言为什么会出现 504 错误?1. 探索 504 Gateway Timeout 错误的根源 1.1 后端

Android协程高级用法大全

《Android协程高级用法大全》这篇文章给大家介绍Android协程高级用法大全,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友跟随小编一起学习吧... 目录1️⃣ 协程作用域(CoroutineScope)与生命周期绑定Activity/Fragment 中手