У меня есть тестовый проект Gradle NDK с файлом Java и файлом C, разработанный в Android Studio.
Он строит и работает как надо.
Теперь я хотел бы переименовать файл C из plasma.c
в plasma.cpp
, Я делаю это с помощью команды меню рефакторинга / переименования. От этого я не получаю предупреждения, я подтверждаю рефакторинг, повторно синхронизирую проект и перестраиваю его.
Когда я запускаю исполняемый файл на устройстве, я получаю сообщение об ошибке («К сожалению, плазма остановилась») и из журналов:
Не найдена реализация для void
com.example.plasma.PlasmaView.renderPlasma (android.graphics.Bitmap,
долго) (пробовал Java_com_example_plasma_PlasmaView_renderPlasma и
Java_com_example_plasma_PlasmaView_renderPlasma__Landroid_graphics_Bitmap_2J)
Я выполнил поиск по всему проекту по строке «plasma» и заметил, что подстановка была выполнена правильно во всех исходных файлах и в .idea/workspace.xml
,
Почему переименование исходного файла C ++ в проекте приводит к сбою исполняемого файла?
Задача ещё не решена.
Других решений пока нет …