2013-09-05 3 views
2

소스 코드가없는 android 앱의 .so 파일을 바꿀 수 있습니까? LGPL 라이선스 v2.1에서 일부 .so 파일을 사용하는 앱을 만들고 있습니다. http://www.gnu.org/licenses/lgpl-2.1.html 라이선스에 따르면 : "변경 사항을 적용한 후 라이브러리에 다시 연결할 수 있도록 전체 개체 파일을 수신자에게 제공해야합니다. 라이브러리를 컴파일하고 다시 컴파일하면 ... "android apk의 .so 파일 바꾸기

.so 파일을 대체하고 소스 코드없이 응용 프로그램을 다시 컴파일 할 수 있습니까? 기존 APK에? 사용자 소스 코드를 제공 할 수 없습니다. 또는 apk를 만들 수 있도록 사용자 .class 파일을 제공하는 옵션이 있습니까? 심지어 가능하며 그렇다면 옵션은 무엇입니까? 감사합니다.

답변

0

예. apk의 .so 파일을 바꿀 수 있습니다. 그냥 7zip을 사용하여 apk 파일을 교체하면 완료됩니다.

gpl 정보 : 코드 2 개와 빌린 코드 1 개가 있어야합니다. 이렇게하면 라이브러리 대신 코드를 바꿀 수 있지만 코드를 변경할 수는 없습니다. 또한 libs 버전을 확인하고 변경된 경우 종료 할 수 있습니다.

+0

응답 해 주셔서 감사합니다. 그것은 단순 해 보인다. gpl에 대해 의견이 없습니다. 왜 2 개의 라이브러리가 있어야합니까? libs/armeabi에있는 .so 파일이 하나뿐입니다. LGPL에 따르면이 .so를 변경된 버전으로 바꾸려면 사용자에게 옵션을 제공해야합니다. 따라서 사용자는 .so 파일을 만들고 apk를 열고 .so 파일을 바꿀 수 있습니다. 사용자가 .so를 변경하면 .so의 변경으로 인해 앱이 올바르게 작동하지 않습니다. 큰 문제는 아닙니다. 나는 그에게이 옵션을 주어야한다. – vandzi

+2

FWIW, 파일을 Zip 유틸리티로 바꾸면 서명되지 않은 APK에서만 작동합니다. Play 스토어에서 다운로드 한 서명 된 APK의 경우 .so를 업데이트 한 후 다시 서명해야합니다. – fadden

+1

LGPL 코드에 정적으로 링크 된 모든 코드에는 소스 코드가 있어야합니다. IE : 그 단일 .so의 다른 모든 코드. (섹션 7a를 참조하십시오. 그러면 섹션 4가 트리거됩니다.) –

관련 문제