|
|
@ -8,6 +8,7 @@
|
|
|
|
#include "PhoneDevice2.h"
|
|
|
|
#include "PhoneDevice2.h"
|
|
|
|
#include <sys/system_properties.h>
|
|
|
|
#include <sys/system_properties.h>
|
|
|
|
#include <AndroidHelper.h>
|
|
|
|
#include <AndroidHelper.h>
|
|
|
|
|
|
|
|
#include <linux/spi/spidev.h>
|
|
|
|
|
|
|
|
|
|
|
|
#include <android/multinetwork.h>
|
|
|
|
#include <android/multinetwork.h>
|
|
|
|
|
|
|
|
|
|
|
@ -272,7 +273,7 @@ Java_com_xypower_mpapp_MicroPhotoService_init(
|
|
|
|
JNIEnv* env,
|
|
|
|
JNIEnv* env,
|
|
|
|
jobject pThis, jstring appPath,
|
|
|
|
jobject pThis, jstring appPath,
|
|
|
|
jstring ip, jint port, jstring cmdid, jint protocol,
|
|
|
|
jstring ip, jint port, jstring cmdid, jint protocol,
|
|
|
|
jint networkProtocol, jint encryptData, jlong netHandle, jint signalLevel, jint versionCode) {
|
|
|
|
jint networkProtocol, jint encryptData, jlong netHandle, jint signalLevel, jint versionCode, jstring simcard) {
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
/*
|
|
|
|
google_breakpad::MinidumpDescriptor descriptor(".");
|
|
|
|
google_breakpad::MinidumpDescriptor descriptor(".");
|
|
|
@ -300,6 +301,7 @@ Java_com_xypower_mpapp_MicroPhotoService_init(
|
|
|
|
const char *appPathStr = env->GetStringUTFChars(appPath, 0);
|
|
|
|
const char *appPathStr = env->GetStringUTFChars(appPath, 0);
|
|
|
|
const char *ipStr = env->GetStringUTFChars(ip, 0);
|
|
|
|
const char *ipStr = env->GetStringUTFChars(ip, 0);
|
|
|
|
const char *cmdidStr = env->GetStringUTFChars(cmdid, 0);
|
|
|
|
const char *cmdidStr = env->GetStringUTFChars(cmdid, 0);
|
|
|
|
|
|
|
|
const char *simcardStr = env->GetStringUTFChars(simcard, 0);
|
|
|
|
|
|
|
|
|
|
|
|
JavaVM* vm = NULL;
|
|
|
|
JavaVM* vm = NULL;
|
|
|
|
jint ret = env->GetJavaVM(&vm);
|
|
|
|
jint ret = env->GetJavaVM(&vm);
|
|
|
@ -316,11 +318,15 @@ Java_com_xypower_mpapp_MicroPhotoService_init(
|
|
|
|
|
|
|
|
|
|
|
|
pTerminal->InitServerInfo(appPathStr, cmdidStr, ipStr, port, udpOrTcp, encryptData);
|
|
|
|
pTerminal->InitServerInfo(appPathStr, cmdidStr, ipStr, port, udpOrTcp, encryptData);
|
|
|
|
// pTerminal->SetPacketSize(1 * 1024); // 1K
|
|
|
|
// pTerminal->SetPacketSize(1 * 1024); // 1K
|
|
|
|
|
|
|
|
#ifdef USING_NRSEC
|
|
|
|
|
|
|
|
pTerminal->InitEncryptionInfo(simcardStr, "/dev/spidev0.0", "");
|
|
|
|
|
|
|
|
#endif
|
|
|
|
bool res = pTerminal->Startup(device);
|
|
|
|
bool res = pTerminal->Startup(device);
|
|
|
|
|
|
|
|
|
|
|
|
env->ReleaseStringUTFChars(appPath, appPathStr);
|
|
|
|
env->ReleaseStringUTFChars(appPath, appPathStr);
|
|
|
|
env->ReleaseStringUTFChars(ip, ipStr);
|
|
|
|
env->ReleaseStringUTFChars(ip, ipStr);
|
|
|
|
env->ReleaseStringUTFChars(cmdid, cmdidStr);
|
|
|
|
env->ReleaseStringUTFChars(cmdid, cmdidStr);
|
|
|
|
|
|
|
|
env->ReleaseStringUTFChars(simcard, simcardStr);
|
|
|
|
|
|
|
|
|
|
|
|
if (!res)
|
|
|
|
if (!res)
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -753,6 +759,11 @@ Java_com_xypower_mpapp_MicroPhotoService_importPublicKey(
|
|
|
|
return JNI_FALSE;
|
|
|
|
return JNI_FALSE;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
std::string version = nrsec.Version();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
char buf[128] = { 0 };
|
|
|
|
|
|
|
|
strcpy(buf, version.c_str());
|
|
|
|
|
|
|
|
|
|
|
|
jbyte* byteCert = env->GetByteArrayElements(cert, 0);
|
|
|
|
jbyte* byteCert = env->GetByteArrayElements(cert, 0);
|
|
|
|
|
|
|
|
|
|
|
|
bool res = nrsec.SM2ImportPublicKey(index, (const uint8_t*)byteCert);
|
|
|
|
bool res = nrsec.SM2ImportPublicKey(index, (const uint8_t*)byteCert);
|
|
|
@ -772,10 +783,14 @@ Java_com_xypower_mpapp_MicroPhotoService_genKeys(
|
|
|
|
|
|
|
|
|
|
|
|
#ifdef USING_NRSEC
|
|
|
|
#ifdef USING_NRSEC
|
|
|
|
|
|
|
|
|
|
|
|
GpioControl::setRS485Enable(true);
|
|
|
|
// GpioControl::setRS485Enable(true);
|
|
|
|
|
|
|
|
|
|
|
|
// const char *port = "/dev/mtkgpioctrl";
|
|
|
|
GpioControl::setSpiMode(SPI_MODE_3);
|
|
|
|
const char *port = "/dev/spidevSE";
|
|
|
|
GpioControl::setSpiBitsPerWord(8);
|
|
|
|
|
|
|
|
GpioControl::setSpiMaxSpeedHz(33000000);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const char *port = "/dev/mtkgpioctrl";
|
|
|
|
|
|
|
|
// const char *port = "/dev/spidevSE";
|
|
|
|
|
|
|
|
|
|
|
|
NrsecPort nrsec;
|
|
|
|
NrsecPort nrsec;
|
|
|
|
if (!nrsec.Open(port))
|
|
|
|
if (!nrsec.Open(port))
|
|
|
@ -783,7 +798,10 @@ Java_com_xypower_mpapp_MicroPhotoService_genKeys(
|
|
|
|
return JNI_FALSE;
|
|
|
|
return JNI_FALSE;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// std::string version = nrsec.Version();
|
|
|
|
std::string version = nrsec.Version();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
char buf[128] = { 0 };
|
|
|
|
|
|
|
|
strcpy(buf, version.c_str());
|
|
|
|
|
|
|
|
|
|
|
|
bool res = nrsec.SM2keypair(index) == 0;
|
|
|
|
bool res = nrsec.SM2keypair(index) == 0;
|
|
|
|
|
|
|
|
|
|
|
|