Xamarin.Android 引用so
短信预约 -IT技能 免费直播动态提醒
[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
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341