广告
返回顶部
首页 > 资讯 > 移动开发 >Xamarin.Android 引用so
  • 400
分享到

Xamarin.Android 引用so

xamarinAndroid 2022-06-06 13:06:09 400人浏览 泡泡鱼
摘要

[DllImport("sqleet", EntryPoint= "execute_test")] public st

在这里插入图片描述

  		[DllImport("sqleet", EntryPoint= "execute_test")]
        public static extern string execute_test(string path);
        //java
        [DllImport("native-lib", EntryPoint = "Java_com_km_demo_myapplication_MainActivity_stringFromJNI")]
        public extern static IntPtr stringFromJNI(IntPtr env, IntPtr thiz);
		//java
        [DllImport("hello", EntryPoint = "Java_com_km_demo_myapplication_hello_add")]  //省略掉lib前缀和.so 后缀
        //public static extern int add(IntPtr env, IntPtr thiz, int i, int j);
        [DllImport("hello")]  //省略掉lib前缀和.so 后缀
        public static extern int add( int i, int j);
        [DllImport("hello")]  //省略掉lib前缀和.so 后缀
        public static extern string getString(string str);
	//java 字符串
   var zz = stringFromJNI(System.IntPtr.Zero, System.IntPtr.Zero);
   Java.Lang.String ss = Java.Lang.Object.GetObject(zz, JniHandleOwnership.TransferLocalRef);
	//普通字符串
	string str = getString("abc");

普通的

java

#include 
#include 
extern "C" JNIEXPORT jstring JNICALL Java_com_km_demo_myapplication_MainActivity_stringFromJNI(
        JNIEnv* env,
        jobject ) {
    std::string hello = "Hello from c++";
    return env->NewStringUTF(hello.c_str());
}
//
// Created by Administrator on 2020/3/18.
//

#include 

#ifndef _Included_com_km_demo_myapplication_hello
#define _Included_com_km_demo_myapplication_hello
#ifdef __cplusplus
extern "C" {
#endif

JNIEXPORT jint JNICALL Java_com_km_demo_myapplication_hello_add
        (JNIEnv *, jobject, jint i, jint j){
    return i+j;
}
int add(int i, int j){
	return i+j;
}
#ifdef __cplusplus
}
#endif
#endif

作者:yubulen


--结束END--

本文标题: Xamarin.Android 引用so

本文链接: https://www.lsjlt.com/news/29282.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Xamarin.Android 引用so
    [DllImport("sqleet", EntryPoint= "execute_test")] public st...
    99+
    2022-06-06
    xamarin Android
  • XamarinSQLite教程Xamarin.Android项目添加引用
    XamarinSQLite教程Xamarin.Android项目添加引用在Xamarin.Android项目中,导入System.Data和Mono.Data.SQLite库的操作步骤如下:(1)打开Xamarin. Android项目,如...
    99+
    2023-06-05
  • Spring Boot 整合流程引擎 Flowable,so easy
    为啥想写 flowable 呢?原因很简单,因为最近在录的 tienchin 项目视频会用到,先写一篇文章和大家打打预防针,后面视频再细讲。 流程引擎,也算是一个比较常见的工具了,我们在日常的很多开发...
    99+
    2023-09-15
    spring boot java mysql
  • 编写Android.mk / Android.bp 引用三方 jar 包,aar包,so 库
    一.前言         在Android10之后,所有项目工程中,官方推荐使用Android.bp去编译构建,以前使用Android.mk构建的项目随着版本迭代升级,慢慢需要变更为Android.bp, 两者的语法都需要去了解并熟练使用。...
    99+
    2023-10-18
    Android.mk Android.bp 引入三方jar和aar包
  • Android so库开发——Android Studio调用so库(二)
    一、JNI规范so库调用         在 Android Studio生成自己的so库 中已经创建了自己的so库,这是一个JNI规范的so库,可以直接将so库放到libs中,并按照上面文章中MainActivity中的调用方法使用。 b...
    99+
    2023-09-25
    android studio android
  • 在Xamarin.Android项目中如何使用数据库
    这篇文章将为大家详细讲解有关在Xamarin.Android项目中如何使用数据库,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在Xamarin.Android项目中使用预设数据库的具体操作步骤如下:(1)...
    99+
    2023-06-05
  • 详解Android studio中正确引入so文件的方法
    相信很多朋友在使用Android studio开发中,遇到过如何引入第三方so文件的问题,然而第三方官方仅仅给出了ADT环境下的集成方式。Android studio中默认使用的是gradle编译方式,与ADT编辑方式不一样,那么so文件应...
    99+
    2023-05-30
    android studio so
  • Android Studio利用CMake生成.so文件并且可供其他项目引用
    1、CMake工具 1.1、CMake是什么 CMake是一个主要用于CPP的构建工具。CMake语言是平台无关的中间编译工具。同一个CMake编译规则在不同系统平台构建出不同的可执行构建文件,所有操作都是通过编译CMakeLists.tx...
    99+
    2023-09-10
    android StableDiffusion
  • 用struct模块实现python so
    最近跳槽到西安一家机器人公司,我们的产品属于教育机器人的范畴,为了增强客户吸引力,引进了一个智能家居公司的产品API接口,让机器人来操作智能家居 该公司的智能家居API是自定义TCP包,即直接在TCP头后面写自定义数据结构: 客户端请求...
    99+
    2023-01-31
    模块 struct python
  • Linux下如何调用dll& .so库
    这篇文章主要介绍了Linux下如何调用dll& .so库,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。dll是Dynamic Link Library的缩写。DLL是...
    99+
    2023-06-28
  • 鸿蒙手机版JNI实战案例解析(JNI开发、SO库生成、SO库使用)
    目录鸿蒙JNI开发现状案例演示案例1:Native项目案例2:Native项目总结鸿蒙JNI开发现状 现阶段,不仅鸿蒙JNI相关的开发资料较少,而且Phone相关的JNI开发资料几乎...
    99+
    2022-11-12
  • Android NDK 生成以及调用so 文件
    1.使用NDK来生成so文件: hello-jni.c 函数名Java +包名+函数名字 2.修改Android.mk文件 LOCAL_SRC_FILES :=hello-j...
    99+
    2022-06-06
    ndk Android
  • android 调用JNI SO动态库的方法
    总结一下: android 调用JNI 分为静态调用与动态调用(不论动态还是静态前提都是NDK环境已经配置好的前提下) 一、静态主要就是将c(.c)或者c++(cpp)的源文件直接加...
    99+
    2022-11-12
  • Nginx+lua如何实现调用.so文件
    这篇文章主要为大家展示了“Nginx+lua如何实现调用.so文件”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Nginx+lua如何实现调用.so文件”这篇文章吧。最近在和智能硬件部门一起,做...
    99+
    2023-06-04
  • 在android中如何用Java加载解析so
    理论基础 so的加载是一种解析式装载,这与dex有一定区别,dex是先加载进行优化验证生成odex,再去解析odex文件,而so更像边解析边装载,在加载过程中主要解析是load段。 ...
    99+
    2022-11-12
  • ijkplayer打包支持https的so使用详解
    目录Build android创建更小的jarcheckout ffmpeg code编译 openssl编译 ffmpeg编译 ijkplayer native codeBuild...
    99+
    2022-11-16
    ijkplayer打包支持https so ijkplayer https so
  • Android 项目调用第三方库so动态库
    在Android NDK开发中,可以通过自己编写C/C++代码来构建so动态库进行调用之外,还可以把so动态库提供给第三方使用;接下来,我将介绍在新创建的Android 项目(或已存在的Android 项目)中如何调用第三方so动态库。 关...
    99+
    2023-08-31
    android android studio
  • Android Studio应用中的so库怎么利用JNI生成
    这篇文章给大家介绍Android Studio应用中的so库怎么利用JNI生成,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1.新建Android studio工程2.新建class:AppKey.java.主要为了保...
    99+
    2023-05-31
    android studio so库 jni
  • android调用JNI SO动态库的方法是什么
    这篇文章主要介绍“android调用JNI SO动态库的方法是什么”,在日常操作中,相信很多人在android调用JNI SO动态库的方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”android调用...
    99+
    2023-06-25
  • Cmake学习记录(九)--使用Cmake交叉编译Android .so库
    文章目录 一、前言二、使用NDK进行编译的相关代码四、使用交叉工具链进行编译五、参考链接 一、前言 注意:本教程没有关于JNI接口的写法,只是把C代码编译成适合android平台的so库,...
    99+
    2023-09-12
    学习 android android studio
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作