新增进入独立app 语音播报
This commit is contained in:
@@ -336,7 +336,6 @@ public class MogoServices implements IMogoMapListener,
|
||||
|
||||
playAppTts();
|
||||
|
||||
//
|
||||
|
||||
} else {
|
||||
unregisterInternalUnWakeupWords();
|
||||
@@ -391,20 +390,7 @@ public class MogoServices implements IMogoMapListener,
|
||||
if (DebugConfig.isLauncher()) {
|
||||
return;
|
||||
}
|
||||
mTtsModle.playTts(new RefreshCallback<TtsConfigEntity>() {
|
||||
@Override
|
||||
public void onSuccess(TtsConfigEntity o) {
|
||||
if (!TextUtils.isEmpty(o.getTtsWord())) {
|
||||
AIAssist.getInstance(mContext).speakTTSVoice(o.getTtsWord(), null);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFail() {
|
||||
Log.e(TAG, "获取Tts失败");
|
||||
|
||||
}
|
||||
});
|
||||
mTtsModle.playTts();
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -8,13 +8,25 @@ import com.mogo.commons.data.BaseData;
|
||||
* @desc :分体机tts播报信息返回
|
||||
*/
|
||||
public class TtsConfigEntity extends BaseData {
|
||||
private String ttsWord;
|
||||
public Result result;
|
||||
|
||||
public String getTtsWord() {
|
||||
return ttsWord;
|
||||
public Result getResult() {
|
||||
return result;
|
||||
}
|
||||
|
||||
public void setTtsWord(String ttsWord) {
|
||||
this.ttsWord = ttsWord;
|
||||
public void setResult(Result result) {
|
||||
this.result = result;
|
||||
}
|
||||
|
||||
public static class Result {
|
||||
private String word;
|
||||
|
||||
public String getWord() {
|
||||
return word;
|
||||
}
|
||||
|
||||
public void setWord(String word) {
|
||||
this.word = word;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@ import java.util.Map;
|
||||
import io.reactivex.Observable;
|
||||
import retrofit2.http.FieldMap;
|
||||
import retrofit2.http.FormUrlEncoded;
|
||||
import retrofit2.http.GET;
|
||||
import retrofit2.http.POST;
|
||||
|
||||
/**
|
||||
@@ -20,7 +21,6 @@ public interface TtsConfigApiService {
|
||||
* 查询语音Tts 的
|
||||
*
|
||||
*/
|
||||
@FormUrlEncoded
|
||||
@POST("/yycp-tmcServer/tmcServer/car/reportTraffic/v1")
|
||||
Observable<TtsConfigEntity> inquireForTts(@FieldMap Map<String, Object> parames);
|
||||
@GET("/yycp-carDataService/car/ttsWord/no/getTTSWord/v1")
|
||||
Observable<TtsConfigEntity> inquireForTts();
|
||||
}
|
||||
|
||||
@@ -1,22 +1,17 @@
|
||||
package com.mogo.module.service.ttsConfig;
|
||||
|
||||
import android.text.TextUtils;
|
||||
import android.util.Log;
|
||||
|
||||
import com.alibaba.android.arouter.launcher.ARouter;
|
||||
import com.mogo.commons.data.BaseData;
|
||||
import com.mogo.commons.network.ParamsProvider;
|
||||
import com.mogo.commons.network.SubscribeImpl;
|
||||
import com.mogo.commons.network.Utils;
|
||||
import com.mogo.module.service.network.RefreshCallback;
|
||||
import com.mogo.commons.voice.AIAssist;
|
||||
import com.mogo.module.service.network.RefreshModel;
|
||||
import com.mogo.module.service.network.bean.TtsConfigEntity;
|
||||
import com.mogo.service.MogoServicePaths;
|
||||
import com.mogo.service.network.IMogoNetwork;
|
||||
import com.mogo.utils.logger.Logger;
|
||||
import com.mogo.utils.network.RequestOptions;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
import io.reactivex.android.schedulers.AndroidSchedulers;
|
||||
import io.reactivex.schedulers.Schedulers;
|
||||
|
||||
@@ -36,34 +31,37 @@ public class TtsConfigModleData {
|
||||
IMogoNetwork network = (IMogoNetwork) ARouter.getInstance().build(MogoServicePaths.PATH_SERVICES_NETWORK).navigation(getApp().getApplicationContext());
|
||||
mTtsConfigApiService = network.create(TtsConfigApiService.class, RefreshModel.getNetHost());
|
||||
}
|
||||
|
||||
/**
|
||||
* 独立app根据后台配置 播放tts
|
||||
* @param
|
||||
*
|
||||
* @param
|
||||
* @param
|
||||
* @param
|
||||
*/
|
||||
public void playTts(RefreshCallback<TtsConfigEntity> ttsCallback) {
|
||||
public void playTts() {
|
||||
|
||||
final ParamsProvider.Builder builder = new ParamsProvider.Builder( getApp().getApplicationContext());
|
||||
Map<String, Object> parameters = builder.build();
|
||||
parameters.put("sn", Utils.getSn());
|
||||
Log.d("zytest","playTts获取语音配置的网络请求");
|
||||
// parameters.put("data", GsonUtil.jsonFromObject(uploadTrafficEntity));
|
||||
mTtsConfigApiService.inquireForTts(parameters)
|
||||
Log.d("zytest", "playTts获取语音配置的网络请求");
|
||||
|
||||
|
||||
mTtsConfigApiService.inquireForTts()
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new SubscribeImpl<TtsConfigEntity>(RequestOptions.create( getApp().getApplicationContext())) {
|
||||
.subscribe(new SubscribeImpl<TtsConfigEntity>(RequestOptions.create(getApp().getApplicationContext())) {
|
||||
@Override
|
||||
public void onError(Throwable e) {
|
||||
super.onError(e);
|
||||
Log.e("zytest", e.toString());
|
||||
|
||||
ttsCallback.onFail();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onSuccess(TtsConfigEntity o) {
|
||||
super.onSuccess(o);
|
||||
ttsCallback.onSuccess(o);
|
||||
Log.e("zytest", "播放语音了====" + o.getResult().getWord());
|
||||
if (!TextUtils.isEmpty( o.getResult().getWord())) {
|
||||
AIAssist.getInstance(getApp().getApplicationContext()).speakTTSVoice( o.getResult().getWord());
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
@@ -1,10 +1,12 @@
|
||||
package com.mogo.module.service.ttsConfig;
|
||||
|
||||
import android.content.Context;
|
||||
import android.text.TextUtils;
|
||||
import android.util.Log;
|
||||
|
||||
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||
import com.alibaba.android.arouter.facade.template.IProvider;
|
||||
import com.mogo.commons.voice.AIAssist;
|
||||
import com.mogo.module.service.ServiceConst;
|
||||
import com.mogo.module.service.network.RefreshCallback;
|
||||
import com.mogo.module.service.network.bean.TtsConfigEntity;
|
||||
@@ -14,26 +16,19 @@ import com.mogo.module.service.network.bean.TtsConfigEntity;
|
||||
* @date : 2020/11/16 15:01
|
||||
* @desc :进入页面的时候 根据配置 播放tts语音
|
||||
*/
|
||||
@Route( path = ServiceConst.PATH_TTS_CONFIG )
|
||||
@Route(path = ServiceConst.PATH_TTS_CONFIG)
|
||||
public class TtsConfigProvider implements IProvider {
|
||||
private final String TAG = "TtsConfigProvider";
|
||||
|
||||
private Context mContext;
|
||||
private TtsConfigModleData mTtsModleData;
|
||||
|
||||
@Override
|
||||
public void init(Context context) {
|
||||
mContext = context;
|
||||
Log.d(TAG, "TtsConfigProvider provider init……");
|
||||
if (mTtsModleData==null) {
|
||||
mTtsModleData=new TtsConfigModleData();
|
||||
if (mTtsModleData == null) {
|
||||
mTtsModleData = new TtsConfigModleData();
|
||||
}
|
||||
mTtsModleData.playTts(new RefreshCallback<TtsConfigEntity>() {
|
||||
@Override
|
||||
public void onSuccess(TtsConfigEntity o) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFail() {
|
||||
}
|
||||
});
|
||||
mTtsModleData.playTts();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user