C#の中の統一ファイルが文字列を返すように呼び出します

C#の中の統一ファイルが文字列を返すように呼び出します。

 

ソースファイル1.so

1.1 NaviteCode.h

    #ifndef __NativeCode_H__
    #define __NativeCode_H__

    #if 0 #define EXPORT_DLL __declspec(dllexport) //导出dll声明 #else #define EXPORT_DLL #endif extern "C" { EXPORT_DLL int MyAddFunc(int _a, int _b); EXPORT_DLL char* GetAppKey(); } #endif 

1.2 NaviteCode.cpp

    #include "NaviteCode.h"
    #include <cstring> using namespace std; extern "C" { int MyAddFunc(int _a, int _b) { return _a + _b; } // static char* key = "aShLdS$u3p@V-btd5dKmQZdwa"; char buff[255]; char* GetAppKey() { strcpy(buff,"aShLdS$u3p@V-btd5dKmQZdwa"); return buff; //return "aShLdS$u3p@V-btd5dKmQZdwa"; } } 

2. Callメソッド

内のファイルの生成プラグイン-のAndroidだから、

using System;
using System.Runtime.InteropServices; public class Jni { [DllImport("NativeCode")] public static extern IntPtr GetAppKey(); } public class Usage { private string GetAppKey() { IntPtr keyPtr = Jni.GetAppKey(); string appKey = Marshal.PtrToStringAnsi(keyPtr); Debug.Log("Login result:Get appKey " + appKey); return appKey; } } 

 

おすすめ

転載: www.cnblogs.com/llstart-new0201/p/11918798.html