使用vscode开发android ndk的思路

这篇具有很好参考价值的文章主要介绍了使用vscode开发android ndk的思路。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、基本环境搭建

1.软件支持

首先下载Visual Studio Code和Android Studio

选择对应系统的软件最新版本,下载完成后安装即可

2.软件环境

①.​Visual Studio Code​

打开vscode,按下Ctrl + Shift + X进入拓展,在搜索框内输入C/C++ Extension Pack,然后选择安装(install),安装完成后如下所示(如已经安装则忽略)

vscode 编译 android程序,vscode,android,android studio,java

 ②.Android Studio

打开Android Studio,创建Native C++应用或者打开已经存在的项目,然后选择File -> System Settings -> Android Sdk -> SDK Tools,勾选NDK(Side by side),然后点击Apply(如果已经安装可以忽略)

vscode 编译 android程序,vscode,android,android studio,java

 然后记住ndk安装的路径,一般为Android SDK Location该路径下的ndk文件夹中,不同版本对应一个子文件版本,以作者安装路径为例为:"D:\RJ\AndroidSDK\ndk\25.2.9519653"

二、具体项目开发

1.打开C/C++代码目录

使用vscode打开android-ndk项目中需要开发的的cpp目录或jni目录

如下图所示 

vscode 编译 android程序,vscode,android,android studio,java

2.无法找到头文件的错误提示

鼠标移动到任意红标头文件上,然后再弹窗的错误提示框中选择快速修复

vscode 编译 android程序,vscode,android,android studio,java

 然后选择第一个'编辑"includePath"'选择

vscode 编译 android程序,vscode,android,android studio,java

 3.添加C/C++配置文件

在弹窗的配置页面中,点击以下内容中的"c_cpp_properties.json"文本

通过单击文件链接或使用以下命令切换到 c_cpp_properties.json 文件:
C/C++: 编辑配置(JSON)

vscode 编译 android程序,vscode,android,android studio,java

或者可以在当前根目录中,创建.vscode文件夹,然后创建名为"c_cpp_properties.json"的文件,并填入以下内容:

{
    "configurations": [
        {
            "name": "Win32",
            "includePath": [
                "${workspaceFolder}/**"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "_UNICODE"
            ],
            "windowsSdkVersion": "10.0.18362.0",
            "compilerPath": "cl.exe",
            "cStandard": "c17",
            "cppStandard": "c++17",
            "intelliSenseMode": "windows-msvc-x64"
        }
    ],
    "version": 4
}

 4.添加头文件路径

在打开的"c_cpp_properties.json"文件中添加头文件路径

找到"includePath"数组项,然后在内容中添加你的ndk路径+“\\toolchains\\llvm\\prebuilt\\windows-x86_64\\sysroot\\usr\\include”,作者ndk路径为'D:\RJ\AndroidSDK\ndk\25.2.9519653",则如下所示

{
    "configurations": [
        {
            "name": "Win32",
            "includePath": [
                "${workspaceFolder}/**",
                "D:\\RJ\\AndroidSDK\\ndk\\25.2.9519653\\toolchains\\llvm\\prebuilt\\windows-x86_64\\sysroot\\usr\\include\\c++\\v1\\**",
                "D:\\RJ\\AndroidSDK\\ndk\\25.2.9519653\\toolchains\\llvm\\prebuilt\\windows-x86_64\\sysroot\\usr\\include\\**"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "_UNICODE"
            ],
            "windowsSdkVersion": "10.0.18362.0",
            "compilerPath": "cl.exe",
            "cStandard": "c17",
            "cppStandard": "c++17",
            "intelliSenseMode": "windows-msvc-x64"
        }
    ],
    "version": 4
}

 

5.配置完成

这时就配置好了,回到之前红标的文件,可以发现红标少了很多,剩下的红标也一般不用特别处理,如果引用了非android官方的头文件,则可以重复上一步,加上其头文件所在目录即可

vscode 编译 android程序,vscode,android,android studio,java

 

 三、其他

1.本文仅解决了部分编写时找不到头文件和无法跳转的问题,如果有更好的方法欢迎讨论

2.android studio高版本配合ndk高版本也能达到部分该效果,但是有些时候还是不能找到头文件

3.如果要编译和JNI部分,这篇文章不会涉及,如有需要可见官方文档:

向您的项目添加 C 和 C++ 代码  |  Android Studio  |  Android Developers

JNI 提示  |  Android NDK  |  Android Developers文章来源地址https://www.toymoban.com/news/detail-776021.html

到了这里,关于使用vscode开发android ndk的思路的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • Clion配置C++程序用Android NDK编译,并用真机远程调试(临时目录和termux)

    :ndk, clion, cmake, usb, tcp, ssh, remote debug, remote gdb debug, termux, tabby 假设已经有了一个在windows下能正常编译运行的C++控制台程序,本文仅说明如何在windows下交叉编译到android并调试。C++库类似。 要点提示: 对于unity用户,建议用unity 2022自带的 ndk r23 。理论上可以用新版,但

    2024年02月21日
    浏览(45)
  • android使用ndk开发

    ndk sdk要单独下载和android sdk不同 https://developer.android.google.cn/ndk/downloads?hl=zh-cn 解压后添加ndk路径到path即可 gradle下载太慢使用国内镜像 distributionUrl=https://mirrors.cloud.tencent.com/gradle/gradle-6.7.1-all.zip 执行gradlew.bat gradlew //检查环境,下载gradle依赖项 gradlew tasks //查看可执行任务 gr

    2024年01月17日
    浏览(36)
  • vscode开发c++ 程序,配置使用微软自家的cl编译器。

    vscode 写c++代码, 配置为使用微软自己的cl编译器: 1.安装visual studio 2022, 并且创建一个可以正常编译的cpp工程。 2. 从visual studio 2022的菜单 项目 属性,查出include和lib的配置信息,并录入到window的系统环境变量中,当然还要把cl可执行文件的路径也录入到window11系统PATH中,如下

    2024年03月19日
    浏览(52)
  • Android NDK开发详解之使用预构建库

    NDK 支持使用预构建库(同时支持静态库和共享库)。此功能有以下两个主要用例: 本页将介绍如何使用预构建库。 声明预构建库 您必须将自己使用的每个预构建库声明为一个独立模块。为此,请执行以下步骤: 下面这个简单的示例假设预构建库 libfoo.so 与描述它的 Android

    2024年02月06日
    浏览(35)
  • android studio指定ndk版本的方法

    在app/build.gradle下做如下声明,其中\\\"25.2.9519653\\\"是你所需要指定的ndk版本号 使用该字段后,对于通过Android studio创建的Native C++应用,会强制使用该版本的ndk进行编译,且指定后,android studio下可以关联到头文件的引用,如下所示,相关函数也可以进行跳转了 (包括自己创建的

    2024年02月07日
    浏览(29)
  • android studio 如何下载指定版本的NDK

    安装及配置 NDK 和 CMake  |  Android 开发者  |  Android Developers 如果官方文档看不懂的,就看我写的口水话版本吧; 1、AS打开SDK、NDK下载的那个对话框,如图:    2、非常关键的一步,默认情况下选项的子项未展开,所以需要勾选右下角 “Show Package Detail” ,CMake也是一样的哈

    2024年02月12日
    浏览(41)
  • android ndk一些编译链接错误及解决办法

    链接opencv库时报链接错误缺少libz库 解决,mediann是本人所编译库的名字 链接librknnrt.so时报 解决 使用的是aarch-linux的库,报错换成android版本的librknnrt.so即可 链接opencv库时报错缺少jnigraphics 解决 链接opencv库时报错确实mediandk 解决 链接opencv时报很多std的链接错误 解决 ndk版本太

    2024年02月09日
    浏览(41)
  • Android-NDK的linux交叉编译环境

    NDK 下载  |  Android NDK  |  Android Developers https://github.com/android/ndk/wiki/Unsupported-Downloads 以android-ndk-r26c下载为例,下载后将压缩包解压至/usr目录下 编译平台变量判断条件中增加一下android条件下CMake的变量 详细变量设置参考 C++ 库支持  |  Android NDK  |  Android Developers 编译出的程

    2024年04月10日
    浏览(36)
  • Windows下Android studio 搭建 android NDK 搭建 OLLVM 踩坑记录

    https://github.com/heroims/obfuscator/tree/llvm-9.0.1 这里有坑要注意 不能使用最新的 mingw 8.0.1 编译会报错 报错内容如下: 猜测可能的原因是 cmake版本和 mingw版本 对ollvm-9.0.1的cmakelists.txt的兼容性问题引起的 然后我重新下载mingw旧版本 我用的是 x86_64-5.4.0-release-posix-seh-rt_v5-rev0 mingw下载地

    2024年02月11日
    浏览(34)
  • android ndk clang交叉编译ffmpeg动态库踩坑

    1.ffmpeg默认使用gcc编译,在android上无法使用,否则各种报错,所以要用ndk的clang编译 2.下载ffmpeg源码 修改configure文件,增加命令 cross_prefix_clang 修改以下命令 修改后 3.新建脚本文件,ffmpeg目录下执行脚本文件即可。 编译32位,则ARCH改为arm,CPU改为armv7-a,TARGET改为armv7a-linux-

    2024年02月13日
    浏览(38)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包