Cuba untuk mengeluarkan Emulator Terminal jackpal

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

Saya cuba untuk mengambil kod sumber jackpal untuk memperbaiki aplikasi saya, tetapi saya tidak dapat menyedari bagaimana ia berfungsi.

Ini adalah beberapa baris dalam TermExec.java

public class TermExec {

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

Jadi, kenapa "jackpal-termexec2" apabila perpustakaan yang saya rasa dia maksudnya dipanggil "termExec.cpp"?

Bagaimanapun, tiada seorang pun daripada mereka yang bekerja, saya cuba kedua-duanya (System.loadLibrary ("termExec"), tetapi saya mendapat UnsatisfiedLinkError

Ini ialah folder app / src / main / cpp saya:
common.cpp
common.h
fileCompat.cpp
fileCompat.h
process.cpp
process.h
termExec.cpp
termExec.h

dan CMakeLists.txt saya (bagaimanapun, saya tidak menemui fail CMakeLists.txt dalam projek 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.

nasihat saya adalah untuk memberi tumpuan kepada modul terma, saya baru sahaja memperbaharui garpu saya ke O

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

Saya cadangkan menggunakan "android.deprecatedNdkCompileLease = 1501314830007" dan bukan CMAKE. Kecuali aosp gerrit akan mula beralih daripada skema bangunan perpustakaan ndk yang sekarang, saya tidak benar-benar melihat satu titik dalam menggunakan bentuk neutered di bangunan ndk di studio. terutamanya memandangkan dokumentasi yang dahsyat mengenai sokongan ndk di studio pada umumnya.

kebanyakan orang mempunyai masalah mendapatkan hello-jni untuk membina mana-mana sahaja. Apa-apa sahaja yang anda akan cuba untuk menghantar ralat penghubung yang tidak memuaskan, dan nama lib tidak bergantung kepada nama fail sumber.

Saya tahu saya melakukan kerja mengemas kini sumber yang sangat mengerikan, tetapi ia berfungsi pada kanary yang terbaru dengan versi grader terkini yang ada.

Related questions

Hot questions

Language

Popular Tags