네이티브 C++ 엔진을 Android NDK로 포팅했습니다. 몇 가지 환경과 도구를 사용해 본 후, 가장 편안한 vs-android (0.9)를 찾았습니다. 몇 가지 문제가 있습니다. (향후 질문에서 물어야 할 수도 있습니다.)하지만 현재는 여기에 있습니다.vs-android를 사용하여 여러 Android 플랫폼 (및 가능한 경우 ABI)을 구축하려면 어떻게해야합니까?
네이티브 엔진이 네이티브 공유 라이브러리로 컴파일됩니다. 우리는 엔진이 android-8 API 호환 (android 2.2)이되기를 바랍니다.
우리는 우리가 내부적으로 사용하는 몇 가지 테스터 응용 프로그램을 가지고 있습니다. 나는 그것들 중 하나를 안드로이드에도 이식했지만 네이티브 액티비티 (그리고 네이티브 앱 풀을 사용하고 있기 때문에)는 안드로이드 -9 (2.3)가 필요합니다.
저는 엔진 프로젝트와 테스터 앱에 사용되는 정적 라이브러리 인 모듈 프로젝트가 있습니다. 엔진 용으로 안드로이드 -8을, 테스터 용으로 안드로이드 -9를 컴파일하려면이 파일이 필요합니다. 그 외에도 arm5와 arm7을 모두 지원하고자합니다.
ndk 빌드 스크립트를 사용하면이 작업을 매우 쉽게 처리 할 수 있습니다. MS-Build (vs-android 사용)에서는 기하 급수적 인 구성 (디버그/프로필/릴리스를 잊지 말 것)이 필요합니다.
이러한 구성을 모두 작성하지 않고이를 수행 할 수있는 방법이 있습니까? 예를 들어 엔진을 만들면 android-8 용 모듈을 컴파일하고 arm5와 arm7 용 모듈을 컴파일하고 테스터를 빌드하면 안드로이드 9 용 모듈과 arm5 및 arm7 용 모듈을 컴파일합니다. 각 프로젝트와 디버그, 프로파일, 릴리즈에 거의 동일한 4 개의 구성을 생성합니까?
나는 this을 찾았지만 사용 방법과 부모/자식 프로젝트의 기술을 여기에 적용 할 수 있는지는 잘 모르겠습니다.
(내가 '게으르다가 멈추고 모든 구성에서 매개 변수를 변경해야 할 때마다 언제든지 구성을 만들 수 있습니다'라고 알려주는 것은 의견으로 받아 들일 만하지만 부탁하지 말라. 'vs-android를 사용하는 대신 ndk-build를 사용하고 수동으로 apk를 빌드하십시오.').
감사합니다.
(BTW, 누군가가 대 - 안드로이드 태그를 추가하시기 바랍니다 수 있습니까?)
편집 : 나는 부분적인 해결책을 온 - 전용 API 수준 문제로. 아래 내 대답을 참조하십시오.
태그가 추가되었습니다. 그리고 기하 급수적 인 구성 문제에 대해서 : 한번에 여러 구성에서 빌드 매개 변수를 변경할 수는 있지만, 매번 설정 매개 변수를 켜야한다는 것을 기억해야합니다. – liori
감사합니다. API 레벨 문제 (솔루션 당 하나만 있다고 가정 할 때)에 대해 다소 해결책을 찾았으며 곧 게시 할 예정입니다. 하지만 "한 번에 여러 구성의 매개 변수 변경"에 관심이 있습니다 ... – Asaf