마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

jni 이중버퍼를 인자로 넣을려면 어떻게 해야하나요?

0 추천
C언어에서

void getData(unsigned char **buf); 이렇게 사용하여 buf값을 얻어왔었는데요

jni를 이용하여 사용하려고 하는데

public native void getData(char buf[][]);

이런식으로 함수를 만들었습니다. java에서는 *, unsigned 가 안되서 이렇게 해서

JNIEXPORT void JNICALL Java_...._getData(...,jcharArray **buf);

를 생성하여 함수에 c문법을 이용하여 구현했는데 데이터가 잘 안얻어와지더라구요

제가 생각하는문제점은 jni함수 생성시 char buf[][] 이렇게 한부분이 걸리는데

unsigned char **buf (c언어) --> char buf[][] (java) 이렇게 하면 호환이 잘 될까요? *, unsigned 키워드가 안되서 이렇게 했지만 이게 문제일같은데 어디가 문제일까요..
oblab (1,490 포인트) 님이 2015년 3월 19일 질문

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...