Esistono due modi per incorporare la libreria Oboe nel tuo progetto.
Integrare Oboe con Gradle e CMake
Queste istruzioni sono destinate ai progetti che utilizzano Android Gradle Plugin versione 4.1.0 o successive che utilizzano dipendenze native con CMake.
Se il tuo progetto utilizza la versione 4.0 o ndk-build del plug-in Android Gradle anziché CMake, la procedura è leggermente diversa. Vedi Utilizzo delle dipendenze native.
Aggiorna build.gradle
Per aggiungere Oboe alla tua app mentre utilizzi il plug-in Android per Gradle versione 4.1.0 o
successiva, aggiungi quanto segue al file build.gradle della tua app.
- Aggiungi la dipendenza - oboealla sezione- dependencies. Se necessario, sostituisci- 1.5.0con l'ultima versione stabile di Oboe:- dependencies { implementation 'com.google.oboe:oboe:1.5.0' }
- Attiva l'opzione - prefabnella sezione- buildFeatures.- android { buildFeatures { prefab true } }
- Configura l'app per utilizzare la libreria STL condivisa: - android { defaultConfig { externalNativeBuild { cmake { arguments "-DANDROID_STL=c++_shared" } } } }
Aggiorna CMakeLists.txt
L'aggiunta di Oboe richiede due modifiche al file CMakeLists.txt dell'app.
- Aggiungi questo comando - find_package:- find_package (oboe REQUIRED CONFIG)
- Aggiungi - oboe::oboeall'elenco delle librerie passate al comando- target_link_librariesassociato al tuo eseguibile principale.
Eseguire l'integrazione con l'SDK Android Game
- Scarica la libreria e archiviala nel tuo sistema di controllo del codice sorgente. 
- Apporta le seguenti modifiche alle impostazioni di build del progetto. 
Libreria statica
Quando esegui l'integrazione con l'SDK Android Game, colleghi staticamente una versione della libreria Oboe compilata per la combinazione di ABI, livello API, NDK e STL specificata:
- Aggiungi gamesdk/includeai percorsi di inclusione del compilatore.
- Aggiungi un percorso del seguente formato nei percorsi della libreria del linker: - gamesdk/libs/architecture_APIapiLevel_NDKndkVersion_stlVersion_Release - Ad esempio: - gamesdk/libs/arm64-v8a_API24_NDK18_cpp_static_Release
- Aggiungi - -loboe_statical comando del linker.
Non è necessario raggruppare la libreria condivisa liboboe.so, il che significa che il collegamento statico
consente di ottenere un footprint del codice molto più piccolo.
Libreria condivisa
Se la combinazione di ABI, livello API, NDK e STL richiesta per una libreria statica non è disponibile per le tue impostazioni, puoi eseguire il collegamento alla libreria condivisa in alternativa:
- Segui i passaggi 1 e 2 della sezione precedente (relativa alla libreria statica) per aggiornare i percorsi di inclusione del compilatore e utilizzare il file di intestazione appropriato. 
- Aggiungi un percorso del seguente formato nei percorsi della libreria del linker: - gamesdk/libs/architectureAPIapiLevelNDKndkVersion_stlVersion_Release/lib/oboe 
- Add - -loboe -lOpenSLESto your linker command.
Using CMake (static library only)
If you're using CMake, see the gamesdk/samples/bouncyball/app/CMakeLists.txt
file in the downloaded SDK for an example CMake configuration. It includes a
utility file called gamesdk/samples/gamesdk.cmake, which performs final
checks, adds the proper compiler include paths, and generates a target that you
can use to link the library.
To use the gamesdk.cmake utility:
- Include this file in your - CMakeLists.txt:- // Use a relative or absolute path. For example, /home/yourusername/gamesdk // or C:\Android\gamesdk. - include("path/to/gamesdk/samples/gamesdk.cmake")
- Chiama la funzione - add_gamesdk_targetcon la cartella contenente gamesdk:- // Use a relative or absolute path. - add_gamesdk_target(PACKAGE_DIR path/to/gamesdk)
- Nel file - target_link_librariesdella tua libreria nativa, aggiungi- oboecome dipendenza:- // The casing of OpenSLES is important. - target_link_libraries(native-lib oboe OpenSLES ...)
Per un utilizzo avanzato di CMake, consulta il file sorgente gamesdk.cmake.
Passaggi successivi: utilizzo di Oboe
Per riprodurre o registrare audio con Oboe, crea e attiva uno o più stream audio e utilizza i callback per scambiare audio tra i tuoi dispositivi di input/output audio e la tua app. Consulta Utilizzo di Oboe.
