Autore Topic: Da Java project to Android  (Letto 1892 volte)

Offline .logan

  • Nuovo arrivato
  • *
  • Post: 1
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Ideos
  • Sistema operativo:
    froyo - 2.2
Da Java project to Android
« il: 09 Gennaio 2012, 11:09:58 CET »
0
Ciao a tutti.

Dovrei portare su Android un progetto Java. Questo progetto Java è in realtà un JNI da sorgenti in c/c++.

In sostanza avrei a disposizione la libreria .so , il .java , il .h , e il .jar che contiene il .class relavito al .java

In realtà il .java contiene solamente le chiamate a funzione implementate dentro il file cpp (e che suppongo sia stata compilata nella libreria .so)

La mia domanda è: Come posso importare questi file in modo che le funzionalità del progetto Java funzionino dentro il mio progetto Android?

Grazie
« Ultima modifica: 09 Gennaio 2012, 11:18:25 CET da .logan »

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:Da Java project to Android
« Risposta #1 il: 09 Gennaio 2012, 11:19:45 CET »
0
Non ho nessuna esperienza diretta sull'argomento, però forse ti conviene passare da NDK e fare tutto in c/c++ .
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline emaborsa

  • Utente normale
  • ***
  • Post: 274
  • Java Developer
  • Respect: +33
    • Google+
    • emaborsa
    • Mostra profilo
    • www.emaborsa.com
  • Dispositivo Android:
    Samsung Galaxy S2
  • Sistema operativo:
    Linux 10 - Win8.1 - Android 4.1.2
Re:Da Java project to Android
« Risposta #2 il: 04 Maggio 2012, 09:10:43 CEST »
0
Ciao,
non so se ti serve ancora, ma:
La libreria .so che hai creato non ti serve a molto, dato che devi includerci anche un cpp che fa da ponte tra i tuoi cpp e le classi JAVA.
Comunque dovresti prima scrivere la tua app, e DICHIARARE in java le chiamate che andrebbero a interagire con il codice C/C++, che sono "public native parametroDiRitorno nomeMetodo();"
Una volta dichiarate le chiamate native, hai a disposizione il tool javah che ti crea da solo il .h per interfacciare l'app con la libreria. A questo punto devi DEFINIRE in un CPP quello che è stato creato nel .h Una volta fatto devi fare il build di tutti i .h e .cpp con il tool "ndk build" del NDK.