Miałem ten problem i żadne z rozwiązań nie zadziałało. Problem polega na tym, że ten błąd lub ostrzeżenie może pojawić się z bardzo ogólnych powodów. Możesz wykonać następujące kroki, aby dowiedzieć się, co jest nie tak:
Brakuje NDK
Gdy Gradle zaczyna kompilować natywne zależności, tworzy folder „.cxx” w folderze „app”. w tym folderze można znaleźć plik „ndk_locator_record.json”, który jest bardzo dziwnym typem pliku dziennika. Są to w zasadzie wszystkie ścieżki, które Gradle sprawdza, aby znaleźć folder NDK. Jeśli jest jakiś błąd lub niezgodność w numerach wersji NDK, możesz zobaczyć w tym pliku.
Kompilacja NDK kończy się niepowodzeniem
z nieznanych powodów (może błąd w Gradle) ndk build nie pokazuje rzeczywistego błędu w oknie dziennika zdarzeń, zamiast tego pokazuje błąd, na przykład niepowodzenie synchronizacji Gradle: wykonanie zewnętrznej natywnej kompilacji dla ndkBuild .... po rozwiązaniu NDK Wynik: Projekt ustawienia: wersja modelu Gradle = 5.4.1, wersja NDK jest NIEZNANA .
W takim przypadku wróć do .cxx> ndkBuild> debug> x86 (x64 lub jakikolwiek inny arch cpu) W tym folderze możesz znaleźć plik "json_generation_record.json", jest to ten sam typ dziennika, zwykle ostatni wpis zawiera rzeczywisty błąd . Na przykład dla mnie był
../../sdk/native/jni/OpenCV.mk: No such file or directory
make: *** No rule to make target '../../sdk/native/jni/OpenCV.mk'. Stop.
Stąd masz punkt wyjścia, aby dowiedzieć się, co się dzieje pod maską.
ANDROID_NDK_HOME
)? Co znajduje się w pliku source.properties w NDK?