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

외부(SD Card) 라이브러리 사용하기 질문입니다.

0 추천

안녕하세요. 

 

안드로이드 앱 초급 수준의 개발자입니다.

 

소켓통신을 하는 앱을 구현해서 완성을 시켰습니다.

 

현재는 완성된 앱을 안정화시키고 디버깅하고, 최적화 시키고,

몇몇 옵션 기능들을 추가하는 작업을 하고 있습니다.

 

지금까지는 구글링이나 안드로이드 관련 책을 통해서 잘 진행해 왔는데,

현재 난관에 부딪혔습니다..

 

어떤 문제냐하면,

만약 새로운 프로세스를 제작한다고 했을 때 코드를 공개하지 않으면서,

또한 새로이 컴파일을 하지 않은 상태로 새로 작성한 프로세스 동작하기를 원합니다.

 

C로 예를 든다면,

어떤 동작을 하는 프로세스를 작성해서 DLL 형태로 만든 후,

미리 짜여진 플랫폼에서 DLL을 참조하여 플랫폼 전체의 컴파일 없이 동작하는 방식입니다.

 

 

이제 제가 확인하고 싶은 사항을 말씀 드리면,

작성된 안드로이드 프로젝트에서 Jar파일을 포함하지 않고,

SD Card에 어떤 동작을 하는 Jar파일(일종의 DLL)을 첨부한 다음,

안드로이드 플랫폼을 별도 컴파일 없이 동작 가능하게 작성할 수 있는가에 대한 사항입니다.

 

 

질문글을 다 작성하고 나니 제가 봐도 말을 못알아듣게 작성하긴 헀는데..

혹시 잘 아시는 분들께서 지금 저의 문제의 해법을 알려주셨으면 감사하겠습니다.

혹시나 저 방법이 가능하다면, 관련 자료나 링크에 대해서 알려주시면 정말 감사하겠습니다.

조스페이스 (120 포인트) 님이 2014년 5월 26일 질문

1개의 답변

0 추천
라이센스 문제인가보네요. GPL 같은 것을 우회 하시려고 하는 듯 한데..

C쪽 코드는  System.load("파일 절대 경로") 로 로드하는 방식을 사용하여 /sdcard 에 있는 so를 로드 할 수 있습니다.

MX, Dice같은 플레이어에서 DTS 라이센스 우회를 위해 많이 씁니다.

 

java쪽 코드 쉽지 않습니다만.  라이센스 문제가 있어 공개해야만 하는 코드를 가진 플러그인 식 APK와

문제가 없는  APK를 분리해서, 문제가 없는 APK가 문제가 있는 APK로 intent 를 통해 호출하는 방식으로 우회가 가능합니다.
사악미소 (65,330 포인트) 님이 2014년 5월 26일 답변
답변 감사합니다.^^
packagename과 classname을 알고 있는 새로운 apk를 만들어서 호출하는 방식을 써야 한다는 말씀이시군요.!!
감사합니다^^
...