Подготовка
добавьте пути к cygwin, инструментам android-sdk и android-ndk в PATH. C:\cygwin\bin;c:\AndroidDev\android-ndk-r6-crystax-2;C:\AndroidDev\android-sdk;C:\AndroidDev\android-sdk\tools;C:\AndroidDev\android-sdk\platform-tools</li>
установить значение переменной ANDROID_NDK_ROOT=/cygdrive/c/AndroidDev/android-ndk-r6-crystax-2
В некоторых старых версиях android-ndk (r6 в частности) также рекомендовалось отредактировать файл build/core/build-binary.mk, а именно: закомментировать строчку: $(hide) $(call cmd-strip, $(PRIVATE_DST))
Создадим новый проект
Создадим в каталоге проекта файлы для построения Navite библиотеки
Создадим новый класс для вызова native методов из mono части
Из Cygwin построим native библиотеку с ключом NDK_DEBUG=1
добавим построенные библиотеки к проектупоменяем в свойствах у них Build Action и Copy to Output Directory
сохраним и закроем visual studio и добавим в проектном файле в секцию native библиотек строчку <Abi> armeabi</Abi>
добавим вызов сишного кода в mono проект
добавим postbuild action
Нажмите Run и запустите программу на устройстве или симуляторе.
Перейдем в cygwin в c:\projects\SampleGdb\obj\Debug\android\libs\armeabi\ и запустим ndk-gdbдля проверки вызовем i func если все правильно, то на экране будет примерно такая картинка:
наслаждаемся отладкой в gdb
Комментариев нет:
Отправить комментарий