Sto sviluppando un'app per Android con NDK. Ho due progetti. Uno è per la mia libreria nativa che utilizza NDK e genera il file .so.Come ottenere il punto di interruzione nel codice nativo NDK e eseguire il debug del codice nativo in Android Studio?
Sto utilizzando Android Studio ma disabilito la compilazione automatica e la creazione abilitata utilizzando ndk-build. Sto usando Windows 7.
Ora dopo aver generato il file .so copio quelli nel mio progetto di applicazione principale che utilizza anche ndk-build per compilare le funzioni JNI in cui sto chiamando le funzioni della mia libreria. Spero di essere pulito fino a questo punto. In caso contrario, darò maggiori dettagli su richiesta.
Ora eseguo la mia applicazione nel dispositivo utilizzando Android Studio e posso inserire il punto di interruzione nel codice java e eseguire il debug di quel codice ma non riesco a eseguire il debug della chiamata JNI e del codice nativo che ho nel progetto separato. Ho bisogno di eseguire il debug all'interno del mio codice libreria. Quindi c'è un modo per raggiungere questo obiettivo?
Ho visto VisualGDB ma è pagato. Quindi fammi sapere se c'è qualche alternativa al pieno riempimento i miei requisiti di debug. Ho cercato molto ma non ho trovato alcuna soluzione concreta.
Sono in grado di vedere l'opzione in Android Studio per il collegamento al processo Android dove posso vedere il mio dispositivo in esecuzione ma non sono sicuro di come utilizzarlo in modo da poter eseguire il debug dal codice libreria nativo (che è in un progetto separato senza alcuna attività) .
fatemi sapere se è richiesto maggiori dettagli
AFAIK, il debug nativo non è possibile in Android Studio. A proposito, se aggiungi qualche formattazione alla tua domanda e la rendi meno "densa", più persone la leggeranno. – JonasCz
@JonasCz In realtà, è ora, vedere la risposta di Sistr sotto – Shlublu
@Premal, vedo che non c'è una risposta accettata, nessuna delle soluzioni proposte funziona quando si esegue il debug di un file .so da un progetto nel 2 ° progetto? – Deemoe