概要
このガイドでは、AndroidアプリにClient SDKを追加する方法を学びます。
前提条件
Client SDKには、最低23のAndroid APIレベルが必要です。
Client SDKをプロジェクトに追加するには
Androidプロジェクトを開く
IDEでAndroidプロジェクトのコードベースを開く。
依存関係の追加
Android上のVonage Client SDKは、3つの別々のSDKとして配布されています。 com.vonage.client-sdk-voice In-App Voice機能用、 com.vonage.client-sdk-chat として結合された。 com.vonage.client-sdk.
com.vonage.client-sdk-chat にはWebRTCの依存関係が含まれていないため、より小さなライブラリーになります。アプリケーションでは、一度に1つのSDKのみを使用する必要があります。
In-App VoiceおよびIn-App Messaging - インストール
com.vonage.client-sdkだけである。In-App Voice - インストール
com.vonage.client-sdk-voiceだけである。アプリ内メッセージング - インストール
com.vonage.client-sdk-chatだけである。
製品廃止のお知らせ
2026年4月30日をもって、Vonage In-App Messagingはご利用いただけなくなります。新規ユーザーのアクセスは終了し、すべての既存ユーザーに対するサービスは終了します。
この製品の販売中止に関するご質問は、担当のアカウントマネージャーまたはサポートチームまでお問い合わせください。
注: Gradle ビルドスクリプトを定義するために使用される言語は 2 つあります - Groovy (build.gradle ファイル)とKotlin Gradleスクリプト(build.gradle.kts ファイル)。Kotlin-Androidプロジェクトでは、ビルドスクリプトの言語としてGroovyを使用することができます。ビルドスクリプトファイルの言語を決定するには、ファイルの拡張子を確認してください。
Client SDKをプロジェクトに追加します。アプリ・レベルに以下の依存関係を追加します。 build.gradle ファイル(通常は app/build.gradle):
dependencies {
implementation 'com.vonage:client-sdk:1.6.0'
}
を編集して、JVMのメモリー割り当てを増やす必要があるかもしれない。 org.gradle.jvmargs プロパティに gradle.properties ファイルに設定してください。少なくとも4GBに設定することをお勧めします:
org.gradle.jvmargs=-Xmx4096m -Dfile.encoding=UTF-8
Java 1.8を設定
アプリのレベルでJava 1.8を設定する build.gradle または build.gradle.kts ファイル(通常は app/build.gradle または app/build.gradle.kts):
android {
// ...
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
// Only for Kotlin projects
kotlinOptions {
jvmTarget = JavaVersion.VERSION_1_8.toString()
}
}
パーミッションの追加
In-App Voice機能を使用するには、以下の手順で音声権限を追加します:
- 必要なパーミッションを
AndroidManifest.xmlファイル:

<manifest ...>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
</manifest>
ランタイム権限
- Androidバージョン6.0 Marshmallow(APIレベル23)以上を搭載しているデバイスの場合は、以下のリクエストを行ってください。
RECORD_AUDIOパーミッションを実行時に与える:
// this is the current activity
val callsPermissions = arrayOf(Manifest.permission.RECORD_AUDIO)
ActivityCompat.requestPermissions(this, callsPermissions, 123)
- Androidバージョン12(APIレベル31)以降を実行しているデバイスの場合は、次のリクエストも必要です。
READ_PHONE_STATEパーミッションを実行時に与える:
// this is the current activity
val callsPermissions = arrayOf(Manifest.permission.RECORD_AUDIO, Manifest.permission.READ_PHONE_STATE)
ActivityCompat.requestPermissions(this, callsPermissions, 123)
アンドロイドのランタイムパーミッションのリクエストについてもっと読む これ.
プロガード規定
オプションとして、ProGuard を使用している場合、Vonage Client SDK をスキップするようにツールを設定する必要があります。Vonage Client SDK を縮小したり難読化したりすることは推奨されませんし、他のライブラリとの競合を引き起こす可能性があります。推奨されるProGuardの設定は以下の通りです:
-keep class org.webrtc.** { *; }
-keep class org.vonage.** { *; }
-keep class com.vonage.** { *; }
上記の設定により、Vonage Client SDKのソースコードはそのままに、アプリの残りの部分を縮小することができます。コンパイラーはデフォルトで一連の最適化を自動的に実行しますが、実行時の問題を回避するために追加のProGuardルールを含める必要があるかもしれませんが、追加の最適化を有効にすることが可能です。そのためには、プロジェクトの gradle プロパティファイルに以下を追加します:
android.enableR8.fullMode=true
Androidアプリのオプトマイズの詳細については、以下の公式サイトを参照してください。 Androidドキュメント.
アプリで Client SDK を使用する
Client SDK をインストールし、オーディオ権限を要求したら、使用を開始できます。
セッションの作成
セッションはClient SDKとVonageサーバー間のライブ通信ストリームです。を作成します。 VoiceClient オブジェクトでセッションを作成します。 JWT トークン
var client = VoiceClient(this.application.applicationContext)
client.createSession("JWT_TOKEN") { error, sessionId ->
...
}
セッションの作成に成功すると、セッションIDが発行されます。
セッション状況
セッションが正常に作成された後にエラーが発生した場合は、そのエラーが SessionErrorListener にある。 VoiceClient オブジェクトがある。
client.setSessionErrorListener { reason ->
//Reason for error
}
結論
Android アプリに Client SDK を追加し、セッションを作成しました。これで VoiceClient クライアントをアプリに追加し、Client SDKの機能を使用します。
参照
- データセンターの構成 - これは、アプリケーションにSDKを追加した後に実行できる高度なオプション設定です。