Sto cercando di creare un progetto di libreria Android con codice nativo. Per la sezione "Limitazioni conosciute" sotto http://tools.android.com/tech-docs/new-build-system/gradle-experimental sono supportati i progetti di librerie ibride. Ma non mi sembra di vedere il nativo in modo che i file vengano generati nella cartella libs del file di libreria di aar.Problemi nella creazione di una libreria Android con codice nativo
Ecco come il mio setup progetto sembra
- passaggi seguiti nella http://tools.android.com/tech-docs/new-build-system/gradle-experimental per il supporto NDK
- Aggiunto moduli una biblioteca che carica staticamente il nativo così file e la espone le funzionalità tramite alcuni metodi
- aggiunto un altro modulo che utilizza il modulo nativo. Impostare le dipendenze del modulo per includere il progetto della libreria.
Quando eseguo questa app, ottengo un UnsatisfiedLinkError, che mi aspettavo visto che non vedo alcun nativo, quindi i file vengono generati nel file di aar.
Ecco come il mio file di build.gradle biblioteca assomiglia
apply plugin: 'com.android.model.library'
model {
android {
compileSdkVersion = 23
buildToolsVersion = "23.0.1"
}
android.ndk {
moduleName = "native"
cppFlags = ['-std=c++11']
stl = "gnustl_shared"
}
}
Questo è il modo build.gradle del mio modulo app assomiglia
apply plugin: 'com.android.model.application'
model {
android {
compileSdkVersion = 23
buildToolsVersion = "23.0.1"
}
}
dependencies {
compile project(':mylibrary')
}
Lavorato con 0.3.0-alpha4 e gradle 2.6. Non ho dovuto aggiornare da AS 1.3.2 – Harkish
Sei in grado di eseguire il debug del codice nativo? Ho un problema con questo e mi chiedo se il debug nella libreria ibrida non è ancora supportato o sto facendo qualcosa di sbagliato. – Nedko
Che errore vedi? Ricevo quanto segue quando eseguo il debug di un progetto di libreria ibrida "Errore durante l'avvio sul server di debug del dispositivo: com.android.tools.ndk.run.DebuggerContext $ StartServerException: java.lang.IllegalStateException: server LLDB non trovato". BTW Sono in grado di eseguire il debug di un progetto di applicazione ibrida senza problemi – Harkish