Android JNI配置CMakeLists.txt修改.cpp在logcat打印日志

这篇具有很好参考价值的文章主要介绍了Android JNI配置CMakeLists.txt修改.cpp在logcat打印日志。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Android JNI配置CMakeLists.txt修改.cpp在logcat打印日志

C/C++代码里面常用的printf没法在Android 的logcat输出显示。需要特别配置C++才能显示在logcat里面。

(1)CMakeLists.txt定义:

find_library( # Sets the name of the path variable.
              log-lib

              # Specifies the name of the NDK library that
              # you want CMake to locate.
              log )
target_link_libraries( # Specifies the target library.
        application #自己的库

        # Links the target library to the log library
        # included in the NDK.
        ${log-lib} )

(2).cpp中:

#include <string>
#include <android/log.h>

const char *TAG="fly";

#define LOG __android_log_print

void LOGI(const char *info, const char *c) {
    std::string str = info;
    LOG(ANDROID_LOG_INFO, TAG, str.append("%s").c_str(), c);
}

void LOGI(const char *info, int num) {
    LOGI(info, std::to_string(num).c_str());
}

void LOGI(const char *info) {
    LOG(ANDROID_LOG_INFO, TAG, "%s", info);
}

Android添加C++/CPP项目代码(2)_zhangphil的博客-CSDN博客基于Windows平台,Android NDK(JNI)开发技术》【摘要】本文介绍如何基于Windows平台,在Eclipse中使用Android NDK技术实现“Android平台上的JNI ( Java Native Interface ) ”开发。新增的getStringCpp()是新增的一个方法,因为没有实现所以报红。以上完成后,就可以在Java层像使用普通Java函数一样使用getStringCpp()其中,loadLibrary()里面填写的即是(2)里面的xxx.cpp的xxx名字。https://blog.csdn.net/zhangphil/article/details/130207425

Android导入第三方SO库,上层Java调用(1)_zhangphil的博客-CSDN博客(3)把第三方的.so库文件放到\app\libs下。需要注意的,现在一般是64位的so库,如果app\libs下没有\arm64-v8a文件夹,需要新建arm64-v8a目录文件,然后把64位的so库放到。(2)在module的路径下,比如app\下,如果有app\libs目录,不需新建,如果没有,在app\下,新建libs,形成\app\libs目录。Android NDK(JNI)开发_ndk-r10e 版本对应什么sdk_zhangphil的博客-CSDN博客。https://blog.csdn.net/zhangphil/article/details/130204631文章来源地址https://www.toymoban.com/news/detail-435088.html

到了这里,关于Android JNI配置CMakeLists.txt修改.cpp在logcat打印日志的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ncnn - ubuntu调用vulkan加速ncnn是的CMakeLists.txt和bashrc配置

    ncnn使用vulkan来加速时,需要先安装vulkan,然后再使用vulkan来编译ncnn,最后才是使用编译好的ncnn来推理模型。。 这里的vulkan再Ubuntu中通常是直接解压安装,然后配置环境变量如下: export VULKAN_SDK=/home/fwq/softs/1.2.182.0/x86_64 1.2.182.0 是我使用的vulkan版本。。 配置完上述路径后,

    2024年01月23日
    浏览(39)
  • Android JNI修改ByteArray参数并返回

    添加native方法 C++代码 通过JNI函数 GetByteArrayElements 获取输入数组的本地副本,并在本地代码中修改了数组的内容。然后,使用 NewByteArray 创建了与输入数组相同长度的新输出数组,并使用 SetByteArrayRegion 将修改后的数组内容复制到输出数组中。 运行日志打印

    2024年02月11日
    浏览(35)
  • cmake中多级CMakeLists.txt调用

      在c/c++工程开发中,往往会涉及多级CMakeLists.txt的调用,并且调用方式错综复杂,主要有以下两种方式: 子目录中的CMakeLists.txt 独立生成目标 ,不作为主目标生成过程主的依赖存在,与主目标并无任何关系。 子目录中的CMakeLists.txt 作为主目标的依赖源文件 ,不单独生成

    2024年02月02日
    浏览(40)
  • ROS功能包目录下CMakeLists.txt

    CMake基础教程(24)add_executable生成目标可执行文件 CMake中add_executable的使用 CMake中的add_executable命令用于使用指定的源文件向项目(project)添加可执行文件,其格式如下: 这里我们用到 Normal Executables这种用法,Normal Executables:添加一个名为的可执行目标(executable target),该目标将

    2024年02月11日
    浏览(39)
  • Android Studio Dolphin 新版Logcat的配置使用

    从之前版本的 Android Studio 更新到 Android Studio Dolphin , Logcat 也有了新变化。一般来说工具更新带来的新特性会使我们的开发更加的便捷和高效。 Logcat 会对日志进行格式化,同时对不同等级的日志以颜色区分,能使我们更方便的查看想要的日志。同时根据个人的使用需求,

    2023年04月13日
    浏览(53)
  • VSCode:使用CMakeLists.txt构建C++项目

    插件: CMake插件主要功能是CMake语法高亮、自动补全 CMake Tools的功能主要是结合VSCode IDE使用CMake这个工具,比如生成CMake项目、构建CMake项目等 CMake Tools Helper CMake工具本身还是要下载到本地,并且配置环境变量。 包括6部分:build文件夹、include文件夹、src文件夹、lib文件夹、

    2024年02月03日
    浏览(63)
  • CUDA和C++混合编程及CMakeLists.txt

    首先认识一个问题,单从CMakeLists.txt的角度来看,无法同时使用两种编译器编译两种语言。不过直接编写Makefile是可以的,通过设置不同的任务,可以实现一个Makefile编译两个语言。但这不是这里要讨论的重点。 使用CUDA和C++进行混合编程的意思是:在cpp文件中调用CUDA函数,实

    2024年02月11日
    浏览(43)
  • vs项目转cmake(.sln转CMakeLists.txt)

    proj2cmake https://github.com/mrpi/proj2cmake 另附cmake镜像站:https://cmake.org/files/ 编译proj2cmake时报错: 可参考 https://www.cnblogs.com/tang-zhou-zhou/p/16067695.html 编译boost 使用vs2017的x64_x86交叉工具命令提示符进入解压后的boost文件夹运行bootstrap.bat toolset:编译器 msvc-17.0(vs2017)gcc(mingw) pre

    2024年02月09日
    浏览(49)
  • 【gcc, cmake, eigen, opencv,ubuntu】五.CMakeLists.txt编写

    1.CMakeLists.txt模板 一个使用opencv 的 CMakeLists.txt 对应的目录: 2.设置编程语言版本 3.设置编译类型Debug,Release 4.设置获取文件列表 MATH_LIB_SRC 指示:找到的math目录下的 c文件 5.添加include目录 表示在src/include/目录中寻找头文件 include_directories(src/include) 6.配置编译选项 add_compile_

    2024年02月09日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包