Dodaj odwołanie do projektu CMake w Android Studio

Alexandru Irimiea 08/29/2015. 3 answers, 2.719 views
android-studio android-studio gradle android-ndk android-ndk cmake

W moim konkretnym przypadku zaimplementowałem projekt wieloplatformowy w C++11 który używa CMake . Początkowo projektowałem ten projekt do pracy na PC ( Windows , Unix ), ale teraz zdałem sobie sprawę, że mogę go używać również na platformach mobilnych, bez ponownego wdrażania logiki biznesowej na każdej platformie. W projekcie wykorzystano standardowe biblioteki: Boost , Poco , OpenSSL , Protobuf .

Po kilku poszukiwaniach doszedłem do wniosku, że nie jest to nawet zwykły tryb do umieszczania kodu rodzimego i zarządzanego w Android .

  1. Czy jest możliwe dodanie odniesienia w projekcie Gradle w Android Studio do natywnego projektu, który używa CMake ?

  2. Czy NDK może przyjąć projekt w prosty sposób, jeśli skompiluję wszystko w linii poleceń (zakładając, że nie korzystam z Android Studio )?

  3. Jeśli to możliwe, czy w ogóle jest zalecane?

3 Answers


abhie 05/30/2016.

Czy jest możliwe dodanie odniesienia w projekcie Gradle w Android Studio do natywnego projektu, który używa CMake?

Od kiedy Google ogłosił, że Android Studio 2.2 jest dostarczany z wtyczką cmake, możliwe jest odniesienie projektu CMake do projektu Android. Próbowałem tego i napisałem to na moim blogu .

Czy NDK może przyjąć projekt w prosty sposób, jeśli skompiluję wszystko w linii poleceń (zakładając, że nie korzystam z Android Studio)?

Z mojego doświadczenia wynika, że ​​kompiluję NDK w oddzielny sposób, a następnie łączę bibliotekę statyczną / współużytkowaną (plik .so), która ma być używana w projekcie Android. Użyłem NDK podczas rozwijania PDF Reader przy użyciu mupdf tutaj

Mam nadzieję że to pomoże.


Gerry 06/16/2016.

byłoby to możliwe z Androidem 2.2, głównie dzięki wtyczce Android do gradle. możesz spojrzeć na kilka przykładów w: https://github.com/googlesamples/android-ndk/tree/master-cmake

studio android bezpośrednio czyta - w skryptach cmake - nie ma to jak systemy desktopowe, które generują pliki projektu dla ich macierzystych IDE (Visual Studio lub XCode); więc być może będziesz musiał zmodyfikować istniejące pliki cmake, aby ostatecznie zadziałać w studiu Android.

tak długo, jak kompilujesz do poprawnego pliku APK, linia poleceń lub IDE nie ma większego znaczenia. Jeśli zamierzasz wysłać kod źródłowy, przygotowanie projektu z IDE byłoby atrakcyjne.


NikitaFeodonit 07/25/2017.

Zobacz CMaker_Boost , skompiluj Boost z CMake w czasie konfiguracji. Teraz jest testowany na systemach Linux i Android, gcc i clang. Można to uwzględnić w projekcie gradle w Android Studio. Mam nadzieję, że to pomoże.

Related questions

Hot questions

Language

Popular Tags