На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS

Дорогие друзья! Поздравляем вас с Новым 2025 годом!

Всем удачи, успеха и благополучия!

msm.ru
Модераторы: Hsilgos
  
> NDK проект , Все скомпилировалось, но приложение вылетает
    Все скомпилировалось, но приложение вылетает. Посмотрите пожалуйста проект.
      ExpandedWrap disabled
        package com.myproject;
         
        import android.os.Bundle;
        import android.app.Activity;
        import android.view.Menu;
         
        public class MyActivity extends Activity {
            public native String getMyDate();
            static { System.loadLibrary("mylib"); }
            @Override
            protected void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.activity_my);
                
                setTitle(getMyDate());
            }
         
         
            @Override
            public boolean onCreateOptionsMenu(Menu menu) {
                // Inflate the menu; this adds items to the action bar if it is present.
                getMenuInflater().inflate(R.menu.my, menu);
                return true;
            }
            
        }


      Содержимое make файла:
      LOCAL_PATH := $(call_ my-dir)

      include $(CLEAR_VARS)

      LOCAL_MODULE := mylib
      LOCAL_SRC_FILES := com_myproject_MyActivity.c

      includ $(BUILD_SHARED_LIBRARY)



      ExpandedWrap disabled
        #include "com_myproject_MyActivity.h"
         
        JNIEXPORT jstring JNICALL Java_com_myproject_MyActivity_getMyDate
          (JNIEnv *pEnv, jobject pThis){
         
            return (*pEnv)->NewStringUTF(pEnv, "My native project talks C");
         
        }


      Проект - http://myfolder.ru/files/39100851
      Прикреплённый файлПрикреплённый файлcom_myproject_MyActivity.c (218 байт, скачиваний: 169)
      Прикреплённый файлПрикреплённый файлcom_myproject_MyActivity.h (496 байт, скачиваний: 179)
      Прикреплённый файлПрикреплённый файлAndroid.mk (160 байт, скачиваний: 165)
      Прикреплённый файлПрикреплённый файлMyActivity.java (667 байт, скачиваний: 167)
        А что в логе при запуске?
          Как дебагать NDK? Проще всего логами. Для этого пишем:

          ExpandedWrap disabled
            LOCAL_LDLIBS := -llog


          А дальше в коде

          ExpandedWrap disabled
            #include <android/log.h>
             
             
            __android_log_print(4,"TAG", "data %s", value);
          0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
          0 пользователей:


          Рейтинг@Mail.ru
          [ Script execution time: 0,0742 ]   [ 17 queries used ]   [ Generated: 22.01.25, 02:12 GMT ]