if(msgType ==16)
{
int fd1 = -2;
char filepath1[32] = {0};
sprintf(filepath1,"/sdcard/datadump/datadump%d.yuv",i);
ALOGE("filepath1 (%s)",filepath1);
fd1 = ::open(filepath1, O_RDWR | O_CREAT | O_TRUNC, S_IRWXU);
if(fd1 >=0)
{
ssize_t nw = ::write(fd1, data , size);
ALOGE("write1 return value (%d)",(int)nw);
::close(fd1);
}
else
{
ALOGE("open1 fail (%d)",fd1);
ALOGE("Cannot open %s(err: %s)", filepath1, ::strerror(fd1));
}
}
env->SetByteArrayRegion(obj, 0, size, data);
if(msgType ==16)
{
int fd = -2;
jbyte* jbyteArr = env->GetByteArrayElements(obj,0);
char filepath[32] = {0};
sprintf(filepath,"/sdcard/objdump/objdump%d.yuv",i);
ALOGE("filepath (%s)",filepath);
fd = ::open(filepath, O_RDWR | O_CREAT | O_TRUNC, S_IRWXU);
if(fd >=0)
{
ssize_t nw = ::write(fd, jbyteArr , size);
ALOGE("write return value (%d)",(int)nw);
::close(fd);
}
else
{
ALOGE("open fail (%d)",fd);
ALOGE("Cannot open %s(err: %s)", filepath, ::strerror(fd));
}
}
frameworks\base\core\jni\android_hardware_Camera.cpp
void JNICameraContext::copyAndPost(JNIEnv* env, const sp<IMemory>& dataPtr, int msgType)