Mencoba membuat Terminal Emulator jackpal

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

Saya mencoba untuk mengambil kode sumber jackpal untuk meningkatkan aplikasi saya, tetapi saya tidak dapat menyadari cara membuatnya berfungsi.

Ini adalah beberapa baris di TermExec.java

public class TermExec {

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

Jadi, mengapa "jackpal-termexec2" ketika perpustakaan yang saya kira maksudnya disebut "termExec.cpp"?

Bagaimanapun, tidak satupun dari mereka bekerja, saya mencoba keduanya (System.loadLibrary ("termExec"), tetapi saya mendapat UnsatisfiedLinkError

Ini adalah folder app / src / main / cpp saya:
common.cpp
common.h
fileCompat.cpp
fileCompat.h
proses.cpp
proses.h
termExec.cpp
termExec.h

dan CMakeLists.txt saya (namun, saya tidak menemukan file CMakeLists.txt di proyek 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.

saran saya adalah hanya fokus pada modul jangka, saya baru saja memperbarui garpuku ke O

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

Saya sarankan menggunakan "android.deprecatedNdkCompileLease = 1501314830007" daripada CMAKE. Kecuali aosp gerrit akan mulai bergerak menjauh dari skema membangun perpustakaan ndk saat ini, saya tidak benar-benar melihat titik dalam menggunakan bentuk yang dikebiri pada bangunan ndk di studio. terutama mengingat dokumentasi mengerikan tentang dukungan ndk di studio secara umum.

kebanyakan orang memiliki masalah mendapatkan hello-jni untuk membangun lagian. Bagaimanapun, Anda mungkin ingin mengeposkan kesalahan tautan yang tidak terpenuhi, dan nama lib tidak bergantung pada nama file sumber.

Saya tahu saya melakukan pekerjaan yang sangat mengerikan dalam memperbarui sumbernya, tetapi bekerja pada kenari terbaru dengan versi gradle terbaru yang tersedia.

Related questions

Hot questions

Language

Popular Tags