当前位置: 首页 > news >正文

Android 最简单的native二进制程序

Android.bp

cc_binary {name: "my_native_bin",srcs: ["main.cpp"],cflags: ["-Wall",          // 启用标准警告"-Werror",        // 将警告视为错误"-fPIE",          // 生成位置无关代码"-pie",           // 链接为位置无关可执行文件],shared_libs: ["liblog"], // 依赖库stl: "c++_static",       // 静态链接 C++ 标准库
}

main.cpp

#include <stdio.h>
#include <android/log.h>  // 需链接liblogint main() {printf("Hello from Native!\n");__android_log_print(ANDROID_LOG_INFO, "MyApp", "Log from NDK");return 0;
}

执行

adb push out/target/product/crosshatch/system/bin/my_native_bin system/bin/
adb shell
./my_native_bin                                                                                                                                                                                       
Hello from Native!
adb logcat -b all|grep MyApp
04-21 17:11:52.510 23304 23304 I MyApp   : Log from NDK

总结

可以在最简单的Native二进制程序里面实现更复杂的逻辑,加深对Android组件的理解。

相关文章:

  • 安卓垂直进度条
  • 青少年编程与数学 02-018 C++数据结构与算法 01课题、算法
  • Android RK356X TVSettings USB调试开关
  • 深入了解 WebGIS 系统:构建地理空间信息的网络桥梁
  • “具身智能”爆火 它会带来什么改变?
  • Cursor 配置中文界面并设置浅色背景的方法
  • 语音合成(TTS)从零搭建一个完整的TTS系统-第二节-文本归一化
  • 《Android 应用开发基础教程》——第五章:RecyclerView 列表视图与适配器机制
  • esp32c3 c2如何进入下载模式
  • MCU开发学习记录10 - 高级定时器学习与实践(HAL库)—PWM互补输出、死区控制、刹车控制 - STM32CubeMX
  • Linux Wlan-四次握手(eapol)框架流程
  • CSS预处理工具有哪些?分享主流产品
  • 第二章 Logback的架构(一)
  • eBay自动化定价陷阱调查:价格战背后的利润黑洞与破局之道
  • Oracle expdp的 EXCLUDE 参数详解
  • 如何在LangChain中构建并使用自定义向量数据库
  • 操作指南:在vue-fastapi-admin上增加新的功能模块
  • Qwen-Chat与谷歌Veo2在免费AI视频方面对比
  • Unity3D ILRuntime与Scripting Backend整合指南
  • C++学习之游戏服务器开发十一DOCKER的基本使用
  • 日本首相石破茂向靖国神社献祭品
  • 解除近70家煤电厂有毒物质排放限制,特朗普能重振煤炭吗?
  • 嵩山少林风景区女游客进男厕:不能止步于批评
  • “80后”张汉强已任浙江丽水市委常委、市纪委书记
  • 龙华机场将升级为A类通用机场,低空经济如何抢抓风口“飞”更高
  • 夜读丨介绍一位明代怪杰