2012-12-21 8 views

risposta

2

Cercherò di rispondere alla parte Android della domanda.

io non l'ho visto chiarita esplicitamente nella documentazione di Adobe Air che questo è possibile, ma nella documentazione della Guida Adobe per Adobe Air, sezione Packaging a native extension: Building the native library, si dice:

Android librerie native: quando si utilizza l'NDK Android, fornisce una libreria condivisa con un nome di file come segue (etc)

il NDK come forse sapete vi permette di implementare parti della vostra app Android utilizzando linguaggi di codice nativo tra cui C++.

Prendo questo riferimento nel documento significa che è possibile. Come punto di partenza, acquisirò familiarità con i dettagli dell'NDK.

Sebbene questa non sia una linea guida dettagliata su come procedere, spero che fornisca un puntatore nella giusta direzione.

+0

A parte la parte di Adobe Air della domanda, la libreria nativa non sarebbe utilizzabile realisticamente a meno che non fosse già compilata con la toolchain NDK nell'assortimento desiderato di Android ABI o disponibile in formato sorgente. –

+0

@Chris Stratton Grazie per i chiarimenti. –

2

Un'alternativa alla creazione di un ANE per avvolgere la libreria C++ è compilarlo in un bytecode Flash, utilizzando il nuovo compilatore Adobe "C++ in Flash" (precedentemente noto come Alchemy). Può produrre un file SWF che è possibile chiamare in seguito da ActionScript. Ecco uno tutorial che spiega come farlo. E here è il suo sito ufficiale.

0

per iOS è possibile utilizzare la libreria c se è possibile collegarsi statisticamente ad esso. ANE su iOS non supporta il collegamento dinamico (a partire da 3.2 non è sicuro se qualcosa è cambiato nelle versioni più recenti). Il collegamento statico è un processo abbastanza semplice in Xcode, basta fare il google.

per Android:

Se avete il file .so si può scrivere l'ANE in JAVA e utilizzare JNI (System.loadLibrary) per parlare con la vostra libreria cpp. è meglio che scrivere ANE in CPP completamente. Vedi ane documentation "Includere ulteriori librerie .so di Android condivise nella sezione del pacchetto ANE" per saperne di più.