#include #include #include #include "TerminalDevice.h" // #include "client/linux/handler/exception_handler.h" // #include "client/linux/handler/minidump_descriptor.h" extern "C" JNIEXPORT jstring JNICALL Java_com_xinyingpower_microphoto_MainActivity_stringFromJNI( JNIEnv* env, jobject /* this */) { std::string hello = "Hello from C++"; return env->NewStringUTF(hello.c_str()); } extern "C" JNIEXPORT jboolean JNICALL Java_com_xinyingpower_microphoto_MicroPhotoService_init( JNIEnv* env, jobject pThis, jstring appPath, jstring ip, jint port, jstring cmdid) { /* google_breakpad::MinidumpDescriptor descriptor("."); google_breakpad::ExceptionHandler eh(descriptor, NULL, NULL, NULL, true, -1); */ const char *appPathStr = env->GetStringUTFChars(appPath, 0); const char *ipStr = env->GetStringUTFChars(ip, 0); const char *cmdidStr = env->GetStringUTFChars(cmdid, 0); JavaVM* vm = NULL; jint ret = env->GetJavaVM(&vm); // const string& appPath, const string& termId, const string& server, unsigned short port, const string& bindIp CTermClient& service = CTermClient::GetService(); CTerminalDevice* device = new CTerminalDevice(vm, pThis); bool res = service.InitService(appPathStr, cmdidStr, ipStr, (unsigned short)port, "", device); env->ReleaseStringUTFChars(appPath, appPathStr); env->ReleaseStringUTFChars(ip, ipStr); env->ReleaseStringUTFChars(cmdid, cmdidStr); return res ? JNI_TRUE : JNI_FALSE; } extern "C" JNIEXPORT jboolean JNICALL Java_com_xinyingpower_microphoto_MicroPhotoService_uninit( JNIEnv* env, jobject pThis) { CTermClient::GetService().ExitService(); return JNI_TRUE; }