Articles of android

Android POSIX est-il compatible?

Android POSIX est-il compatible? Je sais qu’il utilise le kernel Linux, mais je ne suis pas sûr que cela signifie qu’il est compatible POSIX, car le standard POSIX traite davantage de fonctions utilisateur. Alors, est-ce compatible? Par exemple, si je n’utilise que des fonctions ANSI et POSIX dans mon programme C, est-ce que celui-ci sera […]

comment dormir avec précision dans une boucle while en C (Linux)?

Dans un code C (Linux OS), je dois dormir avec précision dans une boucle while, par exemple 10 000 microsecondes pour 1 000 fois. J’ai essayé usleep, nanosleep, select, pselect et d’autres méthodes sans succès. Une fois sur 50 fois, il dormait 100% plus longtemps (environ 20 000 USD). Je dois effectuer une action après […]

Android NDK socket connect () retourne 0 quand il devrait échouer en 3g

J’ai écrit un socket dans le NDK android et un serveur dans c. Il est capable de se connecter au serveur très bien. Toutefois, si le serveur est en panne ou si je tente de le connecter à une adresse IP aléatoire différente, l’appel à la connexion renvoie toujours 0 lorsqu’il doit renvoyer -1. Voici […]

Comment convertir AVFrame en texture utilisée par glTexImage2D?

comme vous le savez, AVFrame a 2 propriétés: pFrame-> data, pFrame-> linesize. Après avoir lu image de video /sdcard/test.mp4 (plate-forme Android), et convertir en vice-versa RVB: img_convert_ctx = sws_getContext(pCodecCtx->width, pCodecCtx->height, pCodecCtx->pix_fmt, target_width, target_height, PIX_FMT_RGB24, SWS_BICUBIC, NULL, NULL, NULL); if(img_convert_ctx == NULL) { LOGE(“could not initialize conversion context\n”); return; } sws_scale(img_convert_ctx, (const uint8_t* const*)pFrame->data, pFrame->linesize, 0, […]

Est-il prudent de construire avec -fsigned-char avec le NDK Android?

Pour assurer la cohérence avec les autres plates-formes, je dois utiliser le caractère signed char dans le code natif sur lequel je travaille. Mais par défaut sur Android, le type de caractère NDK n’est unsigned . J’ai essayé d’utiliser explicitement le type de caractère signed char mais celui-ci génère trop d’avertissements dont la differ in […]

Actifs Android, C, JNI

Comment accédez-vous à un actif Android, tel qu’un fichier .txt, à partir de C avec JNI? J’essaie “file: ///android_asset/myFile.txt” et localement “myFile.txt” avec une copie de myFile.txt dans le dossier jni avec le fichier d’implémentation C.

Cross comstackr statique C hello world pour Android avec arm-linux-gnueabi-gcc

Je veux construire un monde statique bonjour à partir de C en utilisant arm-linux-gnueabi-gcc, par opposition à l’utilisation de la chaîne d’outils autonome NDK ou de Codesourcery. Dans Ubuntu … J’ai fait ce qui suit: sudo apt-get install gcc-arm-linux-gnueabi J’ai créé un hi.c comme ceci: #include int main(int argc, char** argv) { printf(“hello world\n”); return […]

Android: startService a échoué car le programme ca porte le même nom que le processus de service

Mon processus Android a un service et ce service crée un processus en langage c. Lorsque le service est arrêté et qu’un autre processus souhaite démarrer startService, celui-ci échoue car le processus c porte le même nom que le processus de service. (startService renverrait ComponentName, mais une exception TransactionTooLargeException serait levée. Cette exception TransactionTooLargeException n’est […]

NullPointerException lors de l’appel de getFilesDir () dans un appel JNI

J’essaie d’appeler la méthode getFilesDir () de Java à partir d’une bibliothèque C par le biais d’un appel JNI et je frappe une exception NullPointerException que je ne comprends pas. Voici l’exception: W/System.err( 1576): java.lang.NullPointerException W/System.err( 1576): at android.content.ContextWrapper.getApplicationContext(ContextWrapper.java:109) W/System.err( 1576): at MYService.getFilesDirPath(MYService.java:1150) W/System.err( 1576): at MYService.UtvGetPeristentPath(Native Method) Le problème se produit dans cette fonction: […]

libusb pour Android avec open2 (, int fd)

J’ai compilé la version modifiée de libusb à utiliser dans les appareils Android à partir de https://github.com/martinmarinov/rtl_tcp_andro-/blob/master/jni/libusb-andro/README Existe-t-il un exemple d’utilisation de cette fonction dans un programme C? Quels en-têtes doivent être inclus pour que cette bibliothèque fonctionne? Tous les exemples sur l’utilisation de open2 (, int fd) dans un programme C