Essayer de fourche Terminal Emulator de Jackpal

Andre99 07/01/2017. 1 answers, 34 views
java android android c++ android-ndk android-ndk jni

J'essaie de prendre le code source de Jackpal pour améliorer mon application, mais je ne peux pas réaliser comment le faire fonctionner.

Voici quelques lignes dans TermExec.java

public class TermExec {

static {
    System.loadLibrary("jackpal-termexec2");
} 

Alors, pourquoi est-ce "jackpal-termexec2" quand la bibliothèque que je suppose qu'il veut dire s'appelle "termExec.cpp"?

Quoi qu'il en soit, aucun d'eux n'a fonctionné, je les ai essayés tous les deux (System.loadLibrary ("termExec"), mais j'ai obtenu un UnsatisfiedLinkError

Ceci est mon dossier app / src / main / cpp:
common.cpp
common.h
fichierCompat.cpp
fichierCompat.h
process.cpp
process.h
termExec.cpp
termExec.h

et mon CMakeLists.txt (cependant, je n'ai pas trouvé de fichier CMakeLists.txt dans le projet de jackpal)

cmake_minimum_required(VERSION 3.4.1)

add_library( # Specifies the name of the library.
         common

         # Sets the library as a shared library.
         SHARED

         # Provides a relative path to your source file(s).
         src/main/cpp/common.cpp )

add_library( # Specifies the name of the library.
         fileCompat

         # Sets the library as a shared library.
         SHARED

         # Provides a relative path to your source file(s).
         src/main/cpp/fileCompat.cpp )

add_library( # Specifies the name of the library.
         process

         # Sets the library as a shared library.
         SHARED

         # Provides a relative path to your source file(s).
         src/main/cpp/process.cpp )



add_library( # Specifies the name of the library.
         termExec

         # Sets the library as a shared library.
         SHARED

         # Provides a relative path to your source file(s).
         src/main/cpp/termExec.cpp )

include_directories(src/main/cpp/) 

1 Answers


Surge1223 07/29/2017.

mon conseil est de se concentrer uniquement sur le module terme, je viens de mettre à jour ma fourche à O

https://github.com/Surge1223/Android-Terminal-Emulator.git

Je recommande d'utiliser le "android.deprecatedNdkCompileLease = 1501314830007" au lieu de CMAKE. A moins que Aosp gerrit ne commence à s'éloigner de son projet actuel de construction de bibliothèques ndk, je ne vois pas vraiment l'intérêt d'utiliser la forme neutrée sur ndk en studio. surtout compte tenu de l'horrible documentation sur le support ndk en studio en général.

la plupart des gens ont des problèmes à faire construire le hello-jni de toute façon. Quoi qu'il en soit, vous voudrez publier l'erreur de l'éditeur de liens insatisfaite, et le nom de la bibliothèque ne dépendra pas du nom des fichiers source.

Je sais que j'ai fait un travail très horrible de mise à jour de la source, mais cela fonctionne sur le plus récent canari avec la dernière version gradle disponible.

Related questions

Hot questions

Language

Popular Tags