1. java에서 호출할 패키지와 class를 생성합니다.
샘플프로젝트에서는 sample 패키지 아래에 Sample 클래스를 추가하였습니다.
![](https://blog.kakaocdn.net/dn/dIHpXn/btrPFysEDdZ/nRF7JC3aZAYXn9gCkzff7k/img.png)
2. MainActivity에 있는 native 관련 매소드들을 sample.class에 잘라 넣습니다. 그리고 소스를 일부 수정합니다.
![](https://blog.kakaocdn.net/dn/ceC4m5/btrPEkaPaIv/Wtf1HLGRVDKtDzKKXIiep1/img.png)
바로 native로 연결해도 되지만 굳이 2번 거치도록 한 이유는 java에서 소스를 고쳐야 할 경우 여기서 고치도록 하려고 했습니다. 여기는 개인 성향에 따라 다른 부분이라 따라하지 않아도 무관합니다.
3. 빨간색으로 되어있는 jni_stringFromJNI()에 마우스를 좌클릭하면 왼쪽 위에 빨간 느낌표가 뜹니다.
![](https://blog.kakaocdn.net/dn/B5ing/btrPFzylsWY/9uMWCuIolXRWpjqoPpBDkk/img.png)
느낌표를 클릭하고 Create JNI function for jni_stringFromJNI를 클릭합니다.
클릭하면 native-lib.cpp에 jni_stringFromJNI가 생성됩니다.
![](https://blog.kakaocdn.net/dn/bkbJfz/btrPFcpNCLm/nufyDL4HHgpUcX73fTnDG1/img.png)
위에서 맨 처음에 생성되어 있던 MainActivity.stringFromJNI의 내부 소스 코드를 Sample.jni_stringFromJNI로 옮긴 후 삭제합니다.
4. 위와 같은 방법으로 Sample.java와 native-lib.cpp에 GetVersion과 GetSample 매소드를 추가합니다
5. native-lib에서 sample 함수를 호출하도록 소스를 수정합니다.
6. 그리고 MainActivity에서 사용하지 않는 부분을 수정합니다.
![](https://blog.kakaocdn.net/dn/VdmTE/btrPDroaYGS/oKVKC6nQNkfgD4OVgWwyIK/img.png)
7. 앞서 mainActivity의 경로가 바뀌었으므로 manifest 파일의 name을 수정합니다.
![](https://blog.kakaocdn.net/dn/emEZPe/btrPJoxIiOg/mJgtRTD9QBDuqzz4Jrfk4K/img.png)
8. 그리고 빌드하면 성공한것을 확인 할 수 있습니다.
'Android' 카테고리의 다른 글
[Native C++] 6. aar 배포용 샘플 프로젝트 만들기(또는 aar파일을 프로젝트에 포함시키는 방법) (0) | 2022.10.28 |
---|---|
[Native C++] 5. 라이브러리 동작 확인하고 aar 파일 만들기 (0) | 2022.10.28 |
[Native C++] 3. 기본 헤더파일 경로 추가하기. (0) | 2022.10.27 |
[Native C++] 2. C소스 포함시켜서 빌드하기 (0) | 2022.10.27 |
[Native C++]1. 프로젝트 생성하기 (JAVA) (0) | 2022.10.12 |