Pytania otagowane jako android-ndk

Zestaw Android Native Development Kit (NDK) to narzędzie towarzyszące Android SDK, które umożliwia tworzenie krytycznych dla wydajności części aplikacji w kodzie natywnym lub przenoszenie istniejących bibliotek w języku C / C ++ do systemu Android. Udostępnia nagłówki i biblioteki, które umożliwiają tworzenie działań, obsługę danych wejściowych użytkownika, używanie czujników sprzętowych, dostęp do zasobów aplikacji i nie tylko, podczas programowania w C / C ++.


23
Android Fatal signal 11 (SIGSEGV) o wartości 0x636f7d89 (kod = 1). Jak można to wyśledzić?
Czytałem inne posty na temat śledzenia przyczyn uzyskania SIGSEGVaplikacji na Androida. Planuję przeszukać moją aplikację pod kątem możliwych NullPointers związanych z użyciem Canvas, ale moje SIGSEGVbarfs za każdym razem wyszukują inny adres pamięci. Plus widziałem code=1i code=2. Gdyby to był adres pamięci 0x00000000, miałbym wskazówkę, że to NullPointer. Ostatni, który …

30
Błąd: Nie znaleziono łańcuchów narzędzi w folderze łańcuchów narzędzi NDK dla ABI z prefiksem: llvm
Chcę skompilować projekt Android typu open source (Netguard) za pomocą gradel ( gradlew clean build). Ale napotkałem ten błąd: A problem occurred configuring project ':app'. > Exception thrown while executing model rule: NdkComponentModelPlugin.Rules#cre ateToolchains > No toolchains found in the NDK toolchains folder for ABI with prefix: llvm Szukałem, ale …


23
Android Studio, Gradle i NDK
Jestem bardzo nowy w tej całej obsłudze Gradle i Android Studio. Udało mi się przekonwertować mój projekt na Androida do gradle przy użyciu opcji eksportu. Ale szukam dokumentacji lub punktu wyjścia, jak zintegrować kompilację NDK z procesem budowania gradle. Jeśli to możliwe, potrzebuję również jakiegoś etapu „po”, który kopiuje pliki …

3
Dlaczego warto używać kodu armeabi-v7a zamiast kodu armeabi?
W moim obecnym projekcie korzystam z wielu plików .so. Znajdują się one w folderze armeabi i armeabi-v7a. Niestety jeden z plików .so ma 6 MB i muszę zmniejszyć rozmiar pliku. Zamiast mieć gruby plik APK, chciałbym użyć tylko plików armeabi i usunąć folder armeabi-v7a. Zgodnie z dokumentacją NDK, kod armeabi-v7a …

30
java.lang.ClassNotFoundException: nie znaleziono klasy w path: dexpathlist
Obecnie pracuję nad projektem, w którym muszę używać czysto natywnego ndk. Zadziałało, gdy próbuję uruchomić przykład helloworld ze źródła silnika Irrlicht. Następnie próbuję użyć go w moim projekcie, postępując zgodnie z formatem z tego przykładu. Ale dostałem: 03-14 01:40:05.308: E/AndroidRuntime(799): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.irrlicht.example1/android.app.POMActivity}: java.lang.ClassNotFoundException: Didn't find class …
140 java  android  c++  android-ndk 


15
niezdefiniowane odniesienie do `__android_log_print '
Co jest nie tak z moim plikiem make? Android.mk LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := foo LOCAL_SRC_FILES := foo.c LOCAL_EXPORT_LDLIBS := -llog include $(BUILD_SHARED_LIBRARY) foo.c #include <string.h> #include <jni.h> #include <android/log.h> #define LOG_TAG "foo" #define LOGI(...) __android_log_print(ANDROID_LOG_INFO, LOG_TAG, __VA_ARGS__) void test() { LOGI("test"); } ndk-build foo.c:9: undefined reference …

5
Uruchamianie Node.Js na Androidzie
Więc wiem, że było to dość często kwestionowane. Aby być dokładnym, na przykład w tych pytaniach: Uruchom serwer NodeJs w systemie Android Jak uruchomić projekt node.js na Androidzie? i NodeJS na IOS / Android Każda przedstawiona opcja ma jednak problem: Chcę go uruchomić na moim normalnym urządzeniu, więc chciałbym uniknąć …

4
Jak mogę złapać SIGSEGV (błąd segmentacji) i uzyskać ślad stosu pod JNI na Androidzie?
Przenoszę projekt do nowego zestawu Android Native Development Kit (tj. JNI) i chciałbym złapać SIGSEGV, gdyby to się stało (prawdopodobnie również SIGILL, SIGABRT, SIGFPE), aby przedstawić ładne okno dialogowe raportowania awarii, zamiast (lub wcześniej) co się obecnie dzieje: natychmiastowa bezceremonialna śmierć procesu i prawdopodobnie próba ponownego uruchomienia go przez system …

3
Co powoduje sygnał „SIGILL”?
Przenoszę kod C ++ do Androida przy użyciu NDK i GCC. Kod w zasadzie działa. W pewnym momencie podczas debugowania w Eclipse wywołanie Dabbler::Android::Factory* pFactory = new Dabbler::Android::Factory; powoduje ten błąd: Thread [1] (Suspended: Signal 'SIGILL' received. Description: Illegal instruction.) 1 <symbol is not available> 0x812feb44 Co to znaczy? Czy …

2
Wywołanie metody Java z języka C ++ w systemie Android
Próbuję uzyskać proste wywołanie metody Java z C ++, podczas gdy Java wywołuje metodę natywną. Oto kod Java: public class MainActivity extends Activity { private static String LIB_NAME = "name"; static { System.loadLibrary(LIB_NAME); } /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); …


4
Po aktualizacji Android Studio do wersji 1.3.0 otrzymuję komunikat „Integracja NDK jest przestarzała w obecnej wtyczce” Błąd
Zaktualizowałem moje Android Studio do wersji 1.3.0 przed upływem 3 dni. Wcześniej mogę używać NDK, a teraz pojawia się błąd, taki jak: Błąd: (50, 0) Błąd: integracja NDK jest przestarzała w bieżącej wtyczce. Rozważ wypróbowanie nowej eksperymentalnej wtyczki. Aby uzyskać szczegółowe informacje, zobacz http://tools.android.com/tech-docs/new-build-system/gradle-experimental . Ustaw „android.useDeprecatedNdk = true” w …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.