JNI 구현순서

1. 자바 코드 작성

2. javac 로 소스를 컴파일해 class 파일을 얻음

3. javah로 class 파일에서 헤더 파일 생성

4. 생성한 헤더파일을 토대로 C/C++작성

5. C/C++ 코드를 컴파일해 Shared Object 라이브러리 생성

6. 안드로이드 자바 애플리케이션에 라이브러리를 포함하여 APK생성

 

자바와 네이티브에서 사용되는 타입정의

/opt/android-ndk-r10e/platforms/android-15/arch-arm/usr/include/

 35 typedef uint8_t         jboolean;       /* unsigned 8 bits *     /
  36 typedef int8_t          jbyte;          /* signed 8 bits */
  37 typedef uint16_t        jchar;          /* unsigned 16 bits      */
  38 typedef int16_t         jshort;         /* signed 16 bits */
  39 typedef int32_t         jint;           /* signed 32 bits */
  40 typedef int64_t         jlong;          /* signed 64 bits */
  41 typedef float           jfloat;         /* 32-bit IEEE 754 *     /
  42 typedef double          jdouble;        /* 64-bit IEEE 754 *     /

 

 125     jboolean    z;
 126     jbyte       b;
 127     jchar       c;
 128     jshort      s;
 129     jint        i;
 130     jlong       j;
 131     jfloat      f;
 132     jdouble     d;
 133     jobject     l;

....등 

 

NDK 가이드

http://developer.android.com/ndk/guides/index.html

 

 

 

 

출처

 

안드로이드의 모든것 NDK -고현철 , 전호철 (한빛미디어)

'JAVA > ANDROID' 카테고리의 다른 글

Android Studio  (0) 2018.03.16
Android  (0) 2018.03.13
NDK Build-준비하기  (0) 2015.05.30
NDK-build  (0) 2015.05.28
hybus_4412 안드로이드 컴파일 에러  (0) 2015.05.27

ndk- 네이티브에서 자바 콜백하기   http://readdie.blog.me/70153260337  

 

bash ~/.bashrc

 

export JAVA_HOME=/opt/Sjava/jdk1.6.0_26
export ANDROID_JAVA_HOME=$JAVA_HOME
export PATH=$JAVA_HOME/bin:$PATH


export ANDROID_HOME=/root/Android/Sdk


export CROSS_COMPILE=/opt/arm-2009q3/bin/arm-none-linux-gnueabi-
export PATH=$PATH:/opt/arm-2009q3/bin:$ANDROID_NDK_HOME:$ANDROID_HOME 

 

Android Studio

 

File->Setting  클릭후

Tools -> External Tools

 

+

 

 

 

 

javah

/opt/jdk1.8.0_45/bin/javah

-classpath $Classpath$ -v -jni $FileClass$

$SourcepathEntry$/../jni

 

 /opt/android-ndk-r10e/ndk-build

$ProjectFileDir$/app/src/main

 

/opt/android-ndk-r10e/ndk-build

clean

$ProjectFileDir$/app/src/main

 

build.gradle

에 추가

  sourceSets.main {
        jni.srcDirs = []
        jniLibs.srcDir 'src/main/libs'
    }

 

NDKTest.tar.gz



android-studio build NDK

https://www.davidlab.net/ko/tech/using-the-android-ndk-with-android-studio-part1/



 

'JAVA > ANDROID' 카테고리의 다른 글

Android Studio  (0) 2018.03.16
Android  (0) 2018.03.13
NDK 정리  (0) 2015.05.30
NDK-build  (0) 2015.05.28
hybus_4412 안드로이드 컴파일 에러  (0) 2015.05.27

관련 링크 http://www.wsgvet.com/bbs/board.php?bo_table=odroid&wr_id=27

 

http://forum.odroid.com/viewforum.php?f=8

 

http://www.aesop.or.kr/index.php?_filter=search&mid=Board_Community_QandA&search_keyword=4412&search_target=title_content&page=2&division=-131140&last_division=-22476&document_srl=104476

 

http://www.origenboard.org/wiki/index.php/WiKi#Partion_split_and_format_2

 

http://www.wsgvet.com/bbs/board.php?bo_table=odroid&wr_id=72

 

 

 

odroid-x emmc Ubuntu 커널 빌드 및 포팅 문의

http://com.odroid.com/sigong/nf_board/nboard_view.php?brd_id=odroidx&bid=2553

 

| U2 eMMC 부팅 안되는 현상

http://com.odroid.com/sigong/nf_board/nboard_view.php?brd_id=odroidx&bid=2553

+ Recent posts