作者chk95 (真男人魂)
看板AndroidDev
标题[问题] JNI函式内是否可使用fread() ??
时间Mon Jan 2 21:46:14 2012
这几天在写一支读取 arm 11 的sdcard内bin档资料的程式
使用到android呼叫jni方式
因为想直接在lib.so内就把sdcard内的bin档资料直接送给driver程式
因此便在jni函式内直接使用fread()
如以下
.
.
.
FILE *input;
unsigned char temp[50];
int bytes;
JNIEXPORT jint JNICALL Java_com_android_demo_Linuxc_start(JNIEnv *env,
jclass mc, jstring name){
input = fopen("/sdcard/xxx.bin", "rb");
bytes = fread(temp, sizeof(char), sizeof(temp), input);
return bytes;
}
.
.
.
请问这样呼叫会有问题吗??因为发现都是在执行fread()这个函式时
app就会自己跳出程式,请问是什麽原因呢??
可否帮忙小弟解答一下??感激不尽!!!!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 111.251.59.111
1F:推 gpc:如果call这个JNI的人UID=1000 不能存取记忆卡 01/03 10:06
2F:→ gpc:此为bionic的规定 01/03 10:06
3F:推 sdyy:就算是jni code 还是要加读写sdcard权限喔 01/04 21:04
4F:→ chk95:以解决罗,因为我傻傻的档案名打错了= = ,所以开启失败 01/04 23:01