このトピックでは、Push SDK for Android を統合する方法について説明します。
環境要件
項目 | 説明 |
開発ツール | Android Studio をお勧めします。 |
Android バージョン | Android 5.0 以降が必要です。 |
ステップ 1: SDK の統合
(推奨) Maven を使用した SDK の統合
プロジェクトの `build.gradle` ファイルに Maven リポジトリの URL を追加します。
maven { url "https://maven.aliyun.com/nexus/content/repositories/releases" }アプリの `build.gradle` ファイルの
dependenciesノードに SDK の依存関係を追加します。// Push SDK の Basic Edition implementation 'com.alivc.pusher:AlivcLivePusher:x.y.z'説明x.y.zは Push SDK のバージョン番号です。`x.y.z` を「SDK のダウンロード」の最新バージョン番号 (例: 7.4.0) に置き換えます。Push SDK と Player SDK (AliyunPlayer) を同時に統合することはできません。両方の SDK を統合するには、ApsaraVideo MediaBox SDK を使用する必要があります。詳細については、「シナリオ」および「ApsaraVideo MediaBox SDK の統合」をご参照ください。
アプリの `build.gradle` ファイルにアプリの CPU アーキテクチャを追加します。
defaultConfig { ndk { abiFilters "armeabi", "armeabi-v7a", "arm64-v8a" } }
SDK の手動統合
Push SDK をダウンロードして解凍します。
SDK から `*.aar` ファイルをアプリモジュールの `libs` フォルダにコピーします。
プロジェクトの `build.gradle` ファイルで、
allprojectsブロックのrepositoriesノードにflatDir構成を追加します。flatDir { dirs 'libs' }アプリの `build.gradle` ファイルの
dependenciesノードに AAR ファイルへのリファレンスを追加します。dependencies { implementation fileTree(dir: 'libs', include the following: ['*.aar']) }
ステップ 2: ライセンスの設定
手順については、「ライセンス統合ガイド」をご参照ください。
ステップ 3: アプリの権限を設定する
アプリの `src/main/AndroidManifest.xml` ファイルで必要な権限を設定します。
<!-- ネットワーク機能に使用されます -->
<uses-permission android:name="android.permission.INTERNET" />
<!-- デバイスのネットワーク接続状態を確認するには、ACCESS_NETWORK_STATE 権限を追加する必要があります。 -->
<!-- この権限は実行時にユーザーの同意を必要としませんが、アプリの AndroidManifest.xml で宣言する必要があります。 -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!-- アプリが音声を録音する必要がある場合は、RECORD_AUDIO 権限を宣言し、実行時にこの権限をリクエストする必要があります -->
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<!-- アプリケーションはデバイスのカメラにアクセスする必要があります -->
<uses-permission android:name="android.permission.CAMERA" />
<!-- 古いデバイスで従来の Bluetooth 権限をリクエストします。 -->
<uses-permission
android:name="android.permission.BLUETOOTH"
android:maxSdkVersion="30" />
<uses-permission
android:name="android.permission.BLUETOOTH_ADMIN"
android:maxSdkVersion="30" />
<!-- アプリが既にペアリングされている Bluetooth デバイスと通信する場合にのみ必要です。 -->
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
<!-- デモでストレージファイルにアクセスするためにのみ使用されます -->
<!-- ストレージ権限 -->
<uses-permission
android:name="android.permission.READ_EXTERNAL_STORAGE"
android:maxSdkVersion="32" />
<!-- 画像ファイルにアクセスする -->
<uses-permission
android:name="android.permission.READ_MEDIA_IMAGES"
android:minSdkVersion="33" />
<!-- 音声ファイルを書き込む -->
<uses-permission
android:name="android.permission.READ_MEDIA_AUDIO"
android:minSdkVersion="33" />
<!-- ビデオファイルを書き込む -->
<uses-permission
android:name="android.permission.READ_MEDIA_VIDEO"
android:minSdkVersion="33" />
<!-- デモで画面録画とストリーミングを行うためにのみ使用されます -->
<!-- バックグラウンドタスクの作成に使用されます。SDK では必須ではありません -->
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<!-- システムオーバーレイウィンドウを作成するための権限をリクエストする -->
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
<!-- デモでミュートするためにのみ使用されます -->
<!-- この権限が宣言されていない場合、通話中にストリームを自動的にミュートする機能は動作しません -->
<uses-permission android:name="android.permission.READ_PHONE_STATE" />ステップ 4: 難読化ルールを設定する
難読化ルールをアプリの `proguard-rules.pro` ファイルに追加します。
-keep class org.webrtc.** { *; }
-keep class com.alivc.** { *; }
-keep class com.aliyun.** { *; }
-keep class com.cicada.** { *; }使用上の注意
API の詳細については、「Basic Edition の API リファレンス」をご参照ください。
API の使用方法に関するサンプルコードについては、「機能の使用」をご参照ください。