インストール
ゼロから始める
SDKをAndroidアプリに統合する方法を示すサンプルコードを提供しています。
SORI Example Android Kotlin
サンプルアプリをチェックして、どのように動作するかをテストしてください。
既存プロジェクトに統合
プロジェクトのルート
settings.gradleファイルにmavenリポジトリを追加します:groovy// ... 省略 ... dependencyResolutionManagement { repositories { maven { url "https://maven.iplateia.com/sorisdk/" } } }kotlin// ... 省略 ... dependencyResolutionManagement { repositories { maven("https://maven.iplateia.com/sorisdk/") } }アプリの
app/build.gradleファイルに以下を追加します:groovydependencies { implementation 'com.acme.corp:package1:2.10.1' implementation 'com.awsome.corp:package2:3.14.159' implementation 'com.iplateia:sorisdk:4.3.6' }kotlindependencies { implementation("com.acme.corp:package1:2.10.1") implementation("com.awsome.corp:package2:3.14.159") implementation("com.iplateia:sorisdk:4.3.6") }これで完了です!AndroidプロジェクトでSORI SDKを使用できるようになりました。
AndroidManifest.xml設定
SORI Android SDKは、アプリのAndroidManifest.xmlファイルにいくつかの権限とサービスを宣言する必要があります。
音声録音のために、android.permission.RECORD_AUDIO権限が必要です。この権限は、マイクから音声を録音するために必要です。
ターゲット音声素材の操作とユーザーのデバイスとの同期のために、android.permission.INTERNET権限が必要です。
フォアグラウンドサービスのために、android.permission.FOREGROUND_SERVICE権限が必要です。Android 8.0(APIレベル26)以降、音声認識のような長時間実行される操作を行うすべてのサービスは、フォアグラウンドサービスとして開始する必要があります。この権限は、フォアグラウンドサービスを開始するために必要です。 また、APIレベル33以降では、フォアグラウンドサービスの通知を表示するためにandroid.permission.POST_NOTIFICATIONS権限が必要です。
アプリのAndroidManifest.xmlファイルに以下を追加してください:
<manifest ...>
<!-- 必要なAndroid権限 -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<!-- Android 33 tiramisu以降でのみ必要 -->
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" /> アプリのAndroidManifest.xmlファイルに音声認識サービスを登録します:
<application ...>
<!-- ... -->
<service
android:name="com.iplateia.sorisdk.SORIAudioRecognitionService"
android:exported="false"
android:foregroundServiceType="microphone" />
</application>
</manifest>これでSDKを使用する準備が整いました。 次のステップは実装です。
Proguard設定
Proguardを使用している場合は、アプリのproguard-rules.proファイルに以下を追加する必要があります:
# ...
-keep class com.iplateia.afplib.** { *; }
-keep class com.iplateia.sorisdk.** { *; }