獲取配音配置
說明
此 API 僅適用於支持多配音的遊戲,用於根據當前 IP 獲取對應的配音配置;無此需求的遊戲可不接入此 API。
函數
java
GDSDK.gamedreamerGetVoiceConfig(Context context, GamedreamerVoiceListener listener)回調
onSuccess(VoiceResult result)
獲取配音配置成功時調用。
| 屬性名 | 類型 | 說明 |
|---|---|---|
| regionCode | String | 當前 IP 對應的地區代碼。 |
| voiceCode | VoiceCode | 配音語言標識,可與 VoiceCode.CANTONESE、VoiceCode.MANDARIN 比對校驗。 |
| voiceName | String | 配音語言名稱。 |
onFail(VoiceSdkError error)
獲取配音配置失敗時調用,error 包含錯誤信息。
使用建議
- 請於登入成功後調用此 API。若尚未登入,SDK 將彈窗提示,且不會觸發回調。
- 若獲取配置失敗,建議調用方重試;若重試後仍失敗,請使用默認配音。
- 如需支持其他配音語言,請先聯絡技術人員確認。
- 成功獲取配音配置後,建議調用方緩存配置結果,後續無需重複調用此 API。
示例代碼
java
import com.gd.sdk.dto.VoiceSdkError;
import com.gd.sdk.dto.VoiceResult;
import com.gd.sdk.dto.VoiceCode;
import com.gd.sdk.listener.GamedreamerVoiceListener;
GDSDK.gamedreamerGetVoiceConfig(this, new GamedreamerVoiceListener() {
@Override
public void onSuccess(VoiceResult result) {
Log.i(TAG, "regionCode=" + result.getRegionCode()
+ ", voice=" + result.getVoiceCode().getValue()
+ ", voiceName=" + result.getVoiceName());
if (result.getVoiceCode().equals(VoiceCode.CANTONESE)) {
simpleToast("檢測到粵語");
} else if (result.getVoiceCode().equals(VoiceCode.MANDARIN)) {
simpleToast("檢測到普通話");
} else {
simpleToast("檢測到其他語言:" + result.getVoiceCode().getValue());
}
}
@Override
public void onFail(VoiceSdkError error) {
Log.e(TAG, "voice detection failed: " + error.getType()
+ ", " + error.getMessage(), error.getCause());
}
});