Es gibt zwei Möglichkeiten, die Oboenbibliothek in Ihr Projekt zu integrieren.
Oboe in Gradle und CMake einbinden
Diese Anleitung gilt für Projekte mit Android-Gradle-Plug-in ab Version 4.1.0 mit nativen Abhängigkeiten mit CMake.
Wenn Sie in Ihrem Projekt das Android-Gradle-Plug-in Version 4.0 oder
ndk-build
statt CMake ist der Prozess etwas anders. Siehe Native Abhängigkeiten verwenden.
build.gradle aktualisieren
So fügen Sie Oboe zu Ihrer App hinzu, während Sie das Android-Gradle-Plug-in Version 4.1.0 oder
Fügen Sie der Datei build.gradle
Ihrer App die folgenden Werte hinzu.
Fügen Sie dem Abschnitt
dependencies
die Abhängigkeitoboe
hinzu. Bei Bedarf können Sie Ersetzen Sie1.5.0
durch die neueste stabile Version. Oboen:dependencies { implementation 'com.google.oboe:oboe:1.5.0' }
Aktivieren Sie im Abschnitt
buildFeatures
die Optionprefab
.android { buildFeatures { prefab true } }
Konfigurieren Sie Ihre App für die Verwendung der freigegebenen STL-Datei:
android { defaultConfig { externalNativeBuild { cmake { arguments "-DANDROID_STL=c++_shared" } } } }
CMakeLists.txt aktualisieren
Zum Hinzufügen von Oboe müssen der CMakeLists.txt
-Datei Ihrer App zwei Einträge hinzugefügt werden.
Fügen Sie den folgenden
find_package
-Befehl hinzu:find_package (oboe REQUIRED CONFIG)
oboe::oboe
zur Liste der Bibliotheken hinzufügen, die an dietarget_link_libraries
-Befehl, der der ausführbaren Hauptdatei zugeordnet ist.
In das Android Game SDK einbinden
Laden Sie die Bibliothek herunter und prüfen Sie, in Ihr Versionsverwaltungssystem.
Nehmen Sie die folgenden Änderungen an den Build-Einstellungen Ihres Projekts vor.
Static-Bibliothek
Bei der Einbindung des Android Game SDK erstellen Sie eine statische Verknüpfung zu einer Version der Oboe-Bibliothek, die für das angegebene ABI, API-Level, NDK und STL kompiliert wurde Kombination:
- Fügen Sie
gamesdk/include
zu Ihren Compiler-Include-Pfaden hinzu. Fügen Sie den Pfaden der Verknüpfungsbibliothek einen Pfad im folgenden Format hinzu:
gamesdk/libs/architecture_APIapiLevel_NDKndkVersion_stlVersion_Release
Beispiel:
gamesdk/libs/arm64-v8a_API24_NDK18_cpp_static_Release
Fügen Sie dem Verknüpfungsbefehl
-loboe_static
hinzu.
Sie müssen die gemeinsam genutzte Bibliothek von liboboe.so
nicht bündeln, weil sie statisch ist.
ist der Code-Fußabdruck viel geringer.
Gemeinsam genutzte Bibliothek
Wenn die Kombination aus ABI, API-Ebene, NDK und STL für eine statische Bibliothek erforderlich ist für Ihre Einstellungen nicht verfügbar ist, können Sie eine Verknüpfung mit der gemeinsam genutzten Bibliothek erstellen. stattdessen:
Führen Sie die Schritte 1 und 2 aus dem vorherigen Abschnitt zur statischen Bibliothek aus, um Aktualisieren Sie Ihre Compiler-Include-Pfade und verwenden Sie die entsprechende Headerdatei.
Fügen Sie den Pfaden der Verknüpfungsbibliothek einen Pfad im folgenden Format hinzu:
gamesdk/libs/architectureAPIapiLevelNDKndkVersion_stlVersion_Release/lib/oboe
Add
-loboe -lOpenSLES
to 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")
Rufen Sie die Funktion
add_gamesdk_target
mit dem Ordner auf, der das Gamesdk:// Use a relative or absolute path.
add_gamesdk_target(PACKAGE_DIR path/to/gamesdk)
Fügen Sie in der
target_link_libraries
Ihrer nativen Bibliothekoboe
als Abhängigkeit:// The casing of OpenSLES is important.
target_link_libraries(native-lib oboe OpenSLES ...)
Informationen zur erweiterten Verwendung von CMake finden Sie in der gamesdk.cmake
.
Quelldatei haben.
Nächste Schritte: Oboe verwenden
Wenn du Audio mit Oboe abspielen oder aufnehmen möchtest, musst du mindestens ein Audio erstellen und aktivieren Streams und tausche mithilfe von Callbacks Audio zwischen der Audioeingabe und -ausgabe aus. Geräte und Ihre App. Weitere Informationen finden Sie unter Verwenden von Oboen