2010-08-10 17 views
1

J'essaie d'utiliser l'implémentation native du serveur/client UDP sur Android, j'utilise JNI pour accéder au code natif de Java. Le code a été testé avec succès sur Android 1.5 (HTC Hero), mais quand j'ai essayé de lancer la même application sur Android 2.1 (HTC Legend), j'ai reçu une "Stack Corruption Detected" chaque fois que j'ai reçu un paquet de plus de 32 octets. l'application s'est écrasée.mise en œuvre native UDP pour android

Est-ce que quelqu'un a une idée de ce qui pourrait causer la corruption de la pile?

+0

Problème intéressant. Vous venez de trouver ceci: http://groups.google.com/group/android-developers/browse_thread/thread/d9a73db86093e268?pli=1 – Macarse

Répondre

0

J'ai trouvé deux solutions possibles: 1. Utilisez read au lieu de recvfrom() 2. Lors de la compilation du code source, utilisez les bibliothèques android et les en-têtes de votre ndk. Ajoutez simplement les répertoires de fichiers d'en-tête au chemin de recherche d'en-tête dans le fichier makefile.

Espérons que cela aide