2014-04-17 2 views
0

На моей платформе Windows 7 у меня установлена ​​последняя версия пакета ADT (20140321) и ndk (r9d). Установка такая же чистая, как и получается. Переменные среды NDK_ROOT, PATH и т. Д. Все правильно определены.Eclipse ADT - родной отладочный

Приложение, в котором я работаю, имеет собственный код, который создается с помощью armeabi-v7a ABI. Платформа приложений - andorid-19. Настройки проекта определяют сборку как «ndk-build NDK_DEBUG = 1».

От Eclipe, когда я отлаживаю приложение на своем планшете samsung в качестве приложения Android Java, все работает так, как ожидалось. Однако, когда я пытаюсь отлаживать приложение как «Android Native Application,» Я получаю следующее сообщение об ошибке:

Attempting to connect debugger to 'com.mycomp.myapp' on port 8604 
gdbserver output: 
Cannot attach to lwp 28275: Operation not permitted (1) 

Exiting 

Verify if the application was built with NDK_DEBUG=1 

Приложение работает отлично на устройстве, хотя.

Я просмотрел различные сообщения о stackoverflow. Однако я не мог найти конкретного шага для решения этой проблемы. Буду признателен, если вы сможете вести меня в правильном направлении. С уважением.

ответ

0

У меня такая же проблема. Потеряв некоторое время, я обнаружил, что когда я возвращаю свою простую функцию без какой-либо операции, этого не происходит.

void dmpBuffer(char* msg, unsigned char* buffer, int buffLen) 
{ 
    //return; 
    char szDumpBuffer[128]; 
    for(int i=0; i<buffLen; i++) 
     sscanf(&szDumpBuffer[i*2], "%02X", buffer[i]); 
    LOGE("%s:%s", msg, szDumpBuffer); 
} 

Возможно, это из-за проблем с памятью.

Обновление: Как я уже думал, проблема с памятью. Моя БОЛЬШАЯ ошибка использовала sscanf вместо sprintf !!! Моя проблема решена.

+1

Это ответ? – Disposer

+0

Как пожелаете. это был обмен опытом, не полностью отвечающий. – user2420654

Смежные вопросы