Ada dua cara untuk menyertakan library Oboe ke dalam project Anda.
Mengintegrasikan Oboe dengan Gradle dan CMake
Petunjuk ini ditujukan untuk project yang menggunakan plugin Android Gradle versi 4.1.0 atau yang lebih baru menggunakan dependensi native dengan CMake.
Jika project Anda menggunakan plugin Android Gradle versi 4.0 atau
ndk-build dan bukan CMake, prosesnya akan sedikit berbeda. Lihat Menggunakan dependensi native.
Memperbarui build.gradle
Untuk menambahkan Oboe ke aplikasi Anda saat menggunakan plugin Android Gradle versi 4.1.0 atau
yang lebih baru, lakukan penambahan berikut ke file build.gradle aplikasi Anda.
Tambahkan dependensi
oboeke bagiandependencies. Jika perlu, ganti1.5.0dengan versi stabil terbaru Oboe:dependencies { implementation 'com.google.oboe:oboe:1.5.0' }Aktifkan opsi
prefabdi bagianbuildFeatures.android { buildFeatures { prefab true } }Konfigurasikan aplikasi Anda untuk menggunakan STL bersama:
android { defaultConfig { externalNativeBuild { cmake { arguments "-DANDROID_STL=c++_shared" } } } }
Memperbarui CMakeLists.txt
Untuk menambahkan Oboe, Anda harus melakukan dua penambahan ke file CMakeLists.txt aplikasi.
Tambahkan perintah
find_packageberikut:find_package (oboe REQUIRED CONFIG)Tambahkan
oboe::oboeke daftar library yang diteruskan ke perintahtarget_link_librariesyang terkait dengan file utama yang dapat dieksekusi.
Mengintegrasikan dengan Android Game SDK
Download library dan periksa di sistem kontrol sumber Anda.
Lakukan perubahan berikut pada setelan build project Anda.
Library statis
Saat mengintegrasikan dengan Android Game SDK, Anda secara statis menautkan ke versi library Oboe yang dikompilasi untuk kombinasi ABI, API level, NDK, dan STL tertentu:
- Tambahkan
gamesdk/includeke jalur penyertaan compiler. Tambahkan jalur dari formulir berikut di jalur library linker Anda:
gamesdk/libs/architecture_APIapiLevel_NDKndkVersion_stlVersion_Release
Contoh:
gamesdk/libs/arm64-v8a_API24_NDK18_cpp_static_ReleaseTambahkan
-loboe_staticke perintah linker Anda.
Anda tidak harus memaketkan library bersama liboboe.so, artinya penautan
statis memberi Anda jejak kode yang jauh lebih kecil.
Library bersama
Jika kombinasi ABI, API level, NDK, dan STL yang diperlukan untuk library statis tidak tersedia untuk setelan Anda, sebagai gantinya Anda dapat menautkan ke library bersama:
Ikuti langkah 1 dan 2 dari bagian sebelumnya (tentang library statis) untuk memperbarui jalur penyertaan compiler, dan menggunakan file header yang sesuai.
Tambahkan jalur dari formulir berikut di jalur library penaut Anda:
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")Panggil fungsi
add_gamesdk_targetdengan folder berisi gamesdk:// Use a relative or absolute path.
add_gamesdk_target(PACKAGE_DIR path/to/gamesdk)Dalam
target_link_librariesuntuk library native, tambahkanoboesebagai dependensi:// The casing of OpenSLES is important.
target_link_libraries(native-lib oboe OpenSLES ...)
Untuk penggunaan CMake lanjutan, lihat gamesdk.cmake
file sumber.
Langkah berikutnya: menggunakan Oboe
Untuk memutar atau merekam audio dengan Oboe, buat dan aktifkan satu atau beberapa streaming audio, lalu gunakan callback untuk bertukar audio antara perangkat input/output audio dan aplikasi Anda. Lihat Menggunakan Oboe.