7 votes

Est-il possible de lire un fichier .so dans Android ?

Je suis nouveau sur Android et j'ai un projet qui contient une .so fichier. Dans un .java cette librairie est utilisée et je veux la lire. .so fichier.

7voto

Jaydeep Khamar Points 3806

Vous devrez placer le fichier .so dans le dossier lib. Ensuite, accédez-y en utilisant la fonction démo comme indiqué ci-dessous :

public static boolean loadNativeLibrary() {

    try {

        Log.i(TAG, "Attempting to load library: " + LIBRARY_NAME);
        System.loadLibrary(LIBRARY_NAME);

    } catch (Exception e) { 
        Log.i(TAG, "Exception loading native library: " + e.toString());
        return false;
    }

    return true;
}

4voto

JosephH Points 21074

Vous ne pouvez pas vraiment "lire" un fichier .so ; c'est un binaire compilé qui contient du code machine. Il n'est pas vraiment possible de le modifier.

Vous pouvez cependant dresser la liste des symboles qu'il contient, par exemple :

android-ndk-r6b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/darwin-x86/bin/arm-linux-androideabi-nm ./path/to/libfoo.so

2voto

ariefbayu Points 10443

Oui, vous pouvez. Vous aurez besoin d'un éditeur hexagonal pour lire ça. Parce que, d'après ce que j'ai compris, .so c'est comme .dll dans Windows.

0voto

En fait, à l'intérieur de votre dossier JNI, Android NDK convertit votre code natif comme c ou c++ en code compilé binaire appelé "nom de fichier.so". Vous ne pouvez pas lire le code binaire, il créera donc un dossier lib dans votre fichier libs/armeabi/nom de fichier.so.

0voto

gamer Points 1

Vous pouvez probablement lire les fichiers *.so. Pour cela vous avez besoin d'un ordinateur de base Linux, & vous avez besoin de leafpad avec cela vous pouvez voir le fichier *.so la vue la plus lisible à lire, Cela se produira si vous utilisez leafpad sur Linux ou Notepad++.
Essayez.
Merci.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X