NDK
  • 2024-05-31Android Studio 已经安装 NDK ,但是软件提示找不到。
    AndroidStudio已经安装NDK,但是软件提示找不到。推荐安装win11android-studio-ide-192.6392135-win64jdk-8u381-windows-x64.exeNDKversionis20.0.5594570提示找不到ndk解决办法:在GradleScripts下面的local.properties文件中,手动添加ndk路径:ndk.dir=C:\User
  • 2024-05-28Android NDK使用指南(基础篇)
    引言在Android开发中,大多数应用程序都是用Java或Kotlin编写的。然而,有时候我们需要使用C或C++代码来提高性能,或者为了与现有的C/C++库集成。AndroidNDK就是为此目的而设计的工具包。本文将介绍AndroidNDK的相关基本概念和基础使用方法,帮助读者初步理解NDK。
  • 2024-05-23Android JNI/NDK环境的配置与Demo编译
    一、背景​JNI(JavaNativeInterface)和NDK(NativeDevelopmentKit)在Android开发中扮演着重要的角色。JNI,即Java本地接口,是Java平台的一部分,它允许Java代码与其他语言写的代码进行交互。通过JNI,Java代码可以调用本地应用程序或库中的代码,也可以被本地代码调用。这主要使得
  • 2024-04-05Android NDK之使用 arm-v7a 汇编实现两数之和
    AndroidNDK之使用arm-v7a汇编实现两数之和关键词:NDKarmv7aWebRTCarm汇编CMake最近适配对讲程序,在webrtc的库编译的过程中,发现其为arm的平台定制了汇编程序以优化平方根倒数算法速度,上次写汇编还是8086的,借此机会初步尝试下android上arm汇编具体jni工程建立就不介绍了,An
  • 2024-03-15Android NDK入门:在应用中加入C和C++的力量
    目录​编辑引NDK的设计目的与Java/Kotlin的结合使用场景开发流程设置项目以支持NDK编写本地代码使用JNI连接本地代码和Java/Kotlin代码编译和运行你的应用附 引自诩方向是android方向的移动端开发工程师,却从来没有真正仔细了解过NDK,这里就详细的整理了解一下n
  • 2024-03-14C++工程(五):CMake+NDK交叉编译
    写一个HelloWorld#include<iostream>intmain(intargc,charconst*argv[]){for(inti=0;i<5;++i)std::cout<<"HelloWorld"<<std::endl;return0;}build_for_android.sh脚本文件#/bin/bashexportANDROID
  • 2024-01-19#星计划# 浅谈OpenHarmony的NDK开发
    背景NativeAPI(NDK)入门NativeAPI是OpenHarmonySDK上提供的一组native开发接口与工具集合(也称为NDK),方便开发者使用C或者C++语言实现应用的关键功能。NativeAPI只覆盖了OHOS基础的一些底层能力,如libc,图形库,窗口系统,多媒体,压缩库等,并没有完全提供类似于JSAPI上的完整的OHOS平台
  • 2023-12-28MAC M1 ndk-build ERROR: Unknown host CPU architecture: arm64
    {https://blog.csdn.net/qq_35559358/article/details/125502740} 解决方法vi编辑ndk-build将里面的内容从   #!/bin/sh   DIR="$(cd"$(dirname"$0")"&&pwd)"   $DIR/build/ndk-build"$@"修改成   #!/bin/sh   DIR="$(c
  • 2023-12-26NDK-以十六进制字符串的形式打印char[]数组到logcat
    NDK-以十六进制字符串的形式打印char[]数组到logcat1.在Java中打印publicstaticStringconvertByteArr2String(byte[]bArr){StringBuilderbuilder=newStringBuilder();for(inti=0;i<bArr.length;i++){builder.append(String.format(Locale
  • 2023-12-12编译Platinum SDK库
    PlatinumSDK是一款开源的库,方便用户在各种平台上快算实现DLNARender功能,本文章主要介绍,使用AndroidNDK编译PlatinumSDK,方便后续在Android平台上使用。一.Platinum源代码下载地址:https://github.com/plutinosoft/Platinum二.编译环境准备:Platinum官方的Android编译介绍只
  • 2023-11-15NDK生成so文件,进行Android端串口通信
    开篇说明1、NDK构建工具的安装2、ndk-build所需构建文件Android.mk、Application.mk(官方链接:ndk-build脚本 | AndroidNDK | AndroidDevelopers(google.cn))3、java定义动态调用接口、生成头文件4、C++串口通信5、Java提供相关接口,生成jar包
  • 2023-10-19最新Unity 如何打包发布到Android
    Unity打包Android现在UnityHub已经做的非常好了,可以直接下载对应Unity版本所对应得JDK,NDK,SDK,直接可以通过unityhub下载避免了,各种版本不同导致的编译问题,大大的降低了初学者的打包发布的难度,本文详细讲解UnityAndroid打包以及在打包中间需要理解的点, 如下:(1) Unityhu
  • 2023-10-11ndk开发之native层访问java层
    一.native层访问java层的成员变量java层的成员变量可以分为实例变量和静态变量,不过他们的访问方法比较类似,可以分为以下三步:获取java类对应的jclass对象获取需要访问的成员变量的jfieldID根据需要访问的变量的类型,调用setXXXField()/getXXXField()方法来设置/获取成员变
  • 2023-09-12编译ijkplayer指北
    下载VMwaer安装ubantu,笔者用的是18.04.6下载ndk 版本R14b下载Androidsdk下载ijkplayer的源码git上直接拉配置Androidndk环境变量配置Androidsdk环境变量检测ndksdk是否生效编辑module.sh下的解码协议执行opssh的编译执行ffmpeg的编译执行jikplayer
  • 2023-09-08Androidstudio现有文件中添加C、C++文件 (NDK)
    创建新的C/C++源代码文件1.如果应用的主源代码集内还没有cpp/目录,请按如下所示的方法创建一个:1.1打开AndroidStudio左侧的Project窗格,然后从菜单中选择Project视图。1.2依次选择your-module>src。1.3右键点击main目录,然后依次选择New>Dire
  • 2023-09-02windows10,编译rust程序到so文件,供android调用,笔记
    1、用D:\myProgram\android_sdk\ndk\ndk-22.0.7026061\ndk-build.cmd编译,全路径,只写ndk-build,似乎不行2、在androidas里编译,提示soisnotaABI,其实是so放错地方了。应该放在src\main\jniLibs\arm64-v8a目录下(其他cpu类似),我就是缺少arm64-v8a目录,导致这个错误,新建arm64-v8
  • 2023-08-28cocos2dx 如何编译android 打包
    先要配置NDK,然后启动CMD命令进入到自己的游戏根目录,我的是starGame,所以如上所示:
  • 2023-08-24Android NDK基础介绍及例子
    目录nullNDK介绍java调用c的步骤一、NDK/JNINDKJNI-那么为什么需要在Android上去使用C/C++代码?NDK开发新建一个Native项目设置调试模式编写编译脚本文件CMakeLists.txt加载C/C++库(1)加载APK中的C/C++库文件(2)加载外部的C/C++so库实现Java和C++互相调用生成so文件参考Android开发
  • 2023-08-03Rust交叉编译为Android库
    Rust目前在互联网上资料较少,经过几天的折腾,终于在Windows10和GithubActions(Ubuntu)上构建出了armv7和armv8的.so文件。关于JNI的配置见:【Rust实现JNI】https://juejin.cn/post/7092750468631740452交叉编译需要AndroidNDK,我目前使用的是android-ndk-r25c
  • 2023-07-28使用NDK移植开源项目,JNI的使用技…
    jni的介绍JNI是JavaNativeInterface的缩写,中文为JAVA本地调用。从Java1.1开始,JavaNativeInterface(JNI)标准成为java平台的一部分,它允许Java代码和其他语言写的代码进行交互。JNI一开始是为了本地已编译语言,尤其是C和C++而设计的,但是它并不妨碍你使用其他语言,只要调用约定受
  • 2023-07-24android ndk内存泄露检测与定位
    AndroidNDK内存泄漏检测与定位简介在Android开发中,经常会遇到内存泄漏的问题。而使用NDK进行开发时,由于与底层交互更加频繁,内存泄漏问题也更易发生。本文将介绍如何在AndroidNDK中进行内存泄漏检测与定位的流程和具体实现方法。流程概述以下是进行AndroidNDK内存泄漏检测与
  • 2023-07-14WINDOWS 环境下编译 OLLVM 替换到 NDK 环境
    编译OLLVM环境准备这里使用的是AGP7.2.2、NDK25.2.9519653、llvm14.0.7、cmake3.22.1、python39git用来下载源码python搞到这一步环境变量里应该已经有python了吧NDKAGP的7.2.2版本默认使用的NDK版本为21.4.7075529,对应的LLVM为9.0.9。需要根据实际情况选择
  • 2023-06-22Android NDK 开发基础:C 语言的内存管理
    简介C语言的内存管理,分成两部分。一部分是系统管理的,另一部分是用户手动管理的。系统管理的内存,主要是函数内部的变量(局部变量)。这部分变量在函数运行时进入内存,函数运行结束后自动从内存卸载。这些变量存放的区域称为”栈“(stack),”栈“所在的内存是系统自动管理的。用户手动管理
  • 2023-06-17Android-NDK开发——基本概念
    在Android开发中,有时候出于安全,性能,代码共用的考虑,需要使用C/C++编写的库。虽然在现代化工具链的支持下,这个工作的难度已经大大降低,但是毕竟万事开头难,初学者往往还是会遇到很多不可预测的问题。本篇就是基于此背景下写的一份简陋指南,希望能对刚开始编写C/C++库的读者有所帮助。
  • 2023-06-08NVIDIA Debug Manager for Android NDK
    http://developer.nvidia.com/tegra/downloads NVIDIADebugManagerforAndroidNDKOverviewNVIDIADebugManagerforAndroidNDKisanEclipseplug-inthatsimplifiesdebuggingnativeC/C++AndroidapplicationsonNVIDIA’sTegraplatformandistheperfe