|
|
|
@ -186,7 +186,7 @@ jint JNI_OnLoad(JavaVM* vm, void* reserved)
|
|
|
|
|
{
|
|
|
|
|
JNIEnv* env = NULL;
|
|
|
|
|
jint result = -1;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 在 JNI_OnLoad 或其他初始化函数中注册
|
|
|
|
|
#if 0
|
|
|
|
|
signal(SIGSEGV, sighandler);
|
|
|
|
@ -314,12 +314,10 @@ Java_com_xypower_mpapp_MainActivity_takePhoto(
|
|
|
|
|
unsigned char id = (unsigned char)channel - 1;
|
|
|
|
|
|
|
|
|
|
Camera2Reader *camera = new Camera2Reader(id);
|
|
|
|
|
const char *pathStr = env->GetStringUTFChars(path, 0);
|
|
|
|
|
const char *fileNameStr = env->GetStringUTFChars(fileName, 0);
|
|
|
|
|
std::string pathStr = jstring2string(env, path);
|
|
|
|
|
std::string fileNameStr = jstring2string(env, fileName);
|
|
|
|
|
|
|
|
|
|
camera->Open(pathStr, fileNameStr);
|
|
|
|
|
env->ReleaseStringUTFChars(fileName, fileNameStr);
|
|
|
|
|
env->ReleaseStringUTFChars(path, pathStr);
|
|
|
|
|
camera->Open(pathStr.c_str(), fileNameStr.c_str());
|
|
|
|
|
|
|
|
|
|
camera->start();
|
|
|
|
|
|
|
|
|
@ -351,12 +349,12 @@ Java_com_xypower_mpapp_MicroPhotoService_init(
|
|
|
|
|
env->SetObjectField(pThis, fieldId, modelName);
|
|
|
|
|
|
|
|
|
|
bool udpOrTcp = (networkProtocol != 0); // 0: tcp
|
|
|
|
|
const char *appPathStr = appPath == NULL ? NULL : env->GetStringUTFChars(appPath, 0);
|
|
|
|
|
const char *ipStr = ip == NULL ? NULL : env->GetStringUTFChars(ip, 0);
|
|
|
|
|
const char *cmdidStr = cmdid == NULL ? NULL : env->GetStringUTFChars(cmdid, 0);
|
|
|
|
|
const char *simcardStr = simcard == NULL ? NULL : env->GetStringUTFChars(simcard, 0);
|
|
|
|
|
const char *tfCardPathStr = tfCardPath == NULL ? NULL : env->GetStringUTFChars(tfCardPath, 0);
|
|
|
|
|
const char *nativeLibraryDirStr = nativeLibraryDir == NULL ? NULL : env->GetStringUTFChars(nativeLibraryDir, 0);
|
|
|
|
|
std::string appPathStr = jstring2string(env, appPath);
|
|
|
|
|
std::string ipStr = jstring2string(env, ip);
|
|
|
|
|
std::string cmdidStr = jstring2string(env, cmdid);
|
|
|
|
|
std::string simcardStr = jstring2string(env, simcard);
|
|
|
|
|
std::string tfCardPathStr = jstring2string(env, tfCardPath);
|
|
|
|
|
std::string nativeLibraryDirStr = jstring2string(env, nativeLibraryDir);
|
|
|
|
|
|
|
|
|
|
JavaVM* vm = NULL;
|
|
|
|
|
jint ret = env->GetJavaVM(&vm);
|
|
|
|
@ -367,14 +365,14 @@ Java_com_xypower_mpapp_MicroPhotoService_init(
|
|
|
|
|
|
|
|
|
|
CTerminal* pTerminal = NewTerminal(protocol);
|
|
|
|
|
|
|
|
|
|
CPhoneDevice* device = new CPhoneDevice(vm, pThis, MakeString(appPathStr), (uint64_t)netHandle, versionCode, MakeString(nativeLibraryDirStr));
|
|
|
|
|
CPhoneDevice* device = new CPhoneDevice(vm, pThis, appPathStr, (uint64_t)netHandle, versionCode, nativeLibraryDirStr);
|
|
|
|
|
device->SetListener(pTerminal);
|
|
|
|
|
device->UpdateSignalLevel(signalLevel);
|
|
|
|
|
device->SetBuildTime(buildTime / 1000);
|
|
|
|
|
device->UpdateSimcard(MakeString(simcardStr));
|
|
|
|
|
device->UpdateTfCardPath(MakeString(tfCardPathStr));
|
|
|
|
|
device->UpdateSimcard(simcardStr);
|
|
|
|
|
device->UpdateTfCardPath(tfCardPathStr);
|
|
|
|
|
|
|
|
|
|
pTerminal->InitServerInfo(MakeString(appPathStr), MakeString(cmdidStr), MakeString(ipStr), port, udpOrTcp, encryptData);
|
|
|
|
|
pTerminal->InitServerInfo(appPathStr, cmdidStr, ipStr, port, udpOrTcp, encryptData);
|
|
|
|
|
// pTerminal->SetPacketSize(1 * 1024); // 1K
|
|
|
|
|
#if defined(USING_NRSEC) && !defined(USING_NRSEC_VPN)
|
|
|
|
|
pTerminal->InitEncryptionInfo(simcardStr, "/dev/spidev0.0", "");
|
|
|
|
@ -386,12 +384,6 @@ Java_com_xypower_mpapp_MicroPhotoService_init(
|
|
|
|
|
#ifdef _DEBUG
|
|
|
|
|
ALOGD("Finish Startup");
|
|
|
|
|
#endif
|
|
|
|
|
if (appPathStr != NULL) env->ReleaseStringUTFChars(appPath, appPathStr);
|
|
|
|
|
if (ipStr != NULL) env->ReleaseStringUTFChars(ip, ipStr);
|
|
|
|
|
if (cmdidStr != NULL) env->ReleaseStringUTFChars(cmdid, cmdidStr);
|
|
|
|
|
if (simcardStr != NULL) env->ReleaseStringUTFChars(simcard, simcardStr);
|
|
|
|
|
if (tfCardPathStr != NULL) env->ReleaseStringUTFChars(tfCardPath, tfCardPathStr);
|
|
|
|
|
if (nativeLibraryDirStr != NULL) env->ReleaseStringUTFChars(nativeLibraryDir, nativeLibraryDirStr);
|
|
|
|
|
|
|
|
|
|
if (!res)
|
|
|
|
|
{
|
|
|
|
@ -492,11 +484,8 @@ Java_com_xypower_mpapp_MicroPhotoService_takePhoto(
|
|
|
|
|
osds[2].text = cfg.osd.rightBottom;
|
|
|
|
|
osds[3].text = cfg.osd.leftBottom;
|
|
|
|
|
|
|
|
|
|
const char* pathStr = env->GetStringUTFChars(path, 0);
|
|
|
|
|
|
|
|
|
|
device->TakePhoto(photoInfo, osds, MakeString(pathStr));
|
|
|
|
|
|
|
|
|
|
env->ReleaseStringUTFChars(path, pathStr);
|
|
|
|
|
std::string pathStr = jstring2string(env, path);
|
|
|
|
|
device->TakePhoto(photoInfo, osds, pathStr);
|
|
|
|
|
|
|
|
|
|
// device->TurnOffCameraPower(NULL);
|
|
|
|
|
// if (photoInfo.usbCamera)
|
|
|
|
@ -730,9 +719,7 @@ Java_com_xypower_mpapp_MicroPhotoService_recoganizePicture(
|
|
|
|
|
JNIEnv* env,
|
|
|
|
|
jclass cls, jstring paramPath, jstring binPath, jstring blobName8, jstring blobName16, jstring blobName32, jstring picPath) {
|
|
|
|
|
|
|
|
|
|
const char* pParamPathStr = env->GetStringUTFChars(paramPath, 0);
|
|
|
|
|
std::string paramPathStr = MakeString(pParamPathStr);
|
|
|
|
|
env->ReleaseStringUTFChars(paramPath, pParamPathStr);
|
|
|
|
|
std::string paramPathStr = jstring2string(env, paramPath);
|
|
|
|
|
|
|
|
|
|
const char* pBinPathStr = env->GetStringUTFChars(binPath, 0);
|
|
|
|
|
std::string binPathStr = MakeString(pBinPathStr);
|
|
|
|
|