diff --git a/app/src/main/java/qianmu/container/activity/H5/UpdateFileActivity.java b/app/src/main/java/qianmu/container/activity/H5/UpdateFileActivity.java index ad5d6fb..852fe77 100644 --- a/app/src/main/java/qianmu/container/activity/H5/UpdateFileActivity.java +++ b/app/src/main/java/qianmu/container/activity/H5/UpdateFileActivity.java @@ -20,8 +20,12 @@ import androidx.core.app.ActivityCompat; import androidx.core.content.ContextCompat; import androidx.databinding.DataBindingUtil; +import com.aispeech.DUILiteConfig; +import com.aispeech.DUILiteSDK; import com.alibaba.android.arouter.facade.annotation.Route; import com.alibaba.android.arouter.launcher.ARouter; +import com.iflytek.sparkchain.core.SparkChain; +import com.iflytek.sparkchain.core.SparkChainConfig; import com.sdkapi.api.SdkApi; import java.io.File; @@ -95,7 +99,8 @@ public class UpdateFileActivity extends BaseActivity { finish(); return; }else{ - DeviceData.getMachine(); + LoggerUtil.e("getMachine:", "获取激活码"); + DeviceData.getMachine(() -> initViceSDK()); } startService(new Intent(UpdateFileActivity.this, ContainerService.class)); startService(new Intent(UpdateFileActivity.this, CoreService.class)); @@ -400,4 +405,50 @@ public class UpdateFileActivity extends BaseActivity { FileUtil.downloadFile(internetPath, localPath, () -> currentCount++); } + private void initViceSDK(){ + LoggerUtil.e("initVoice: ", "初始化语音模块"); + if("sbc".equals(Constant.TTSHome)){ // 思必驰语音 + initSbcSDK(); + }else if("kdxf".equals(Constant.TTSHome)){ + // 初始化SDK,Appid等信息在清单中配置 + SparkChainConfig sparkChainConfig = SparkChainConfig.builder(); + sparkChainConfig.appID("5c2055f8") + .apiKey("2d1e9e5604d66089bda42ff4797201c1") + .apiSecret("2bc7168506a38cf1a7a52fb3ba63d873")//应用申请的appid三元组 + .logLevel(666); + int ret = SparkChain.getInst().init(getApplicationContext(),sparkChainConfig); + String result; + if(ret == 0){ + result = "SDK初始化成功,请选择相应的功能点击体验。"; + }else{ + result = "SDK初始化失败,错误码:" + ret; + } + } + } + + // 思必驰授权 + private void initSbcSDK(){ + // 产品认证需设置 apiKey, productId, productKey, productSecret + DUILiteConfig config = new DUILiteConfig.Builder() + .setApiKey("d823edab41b8d823edab41b868ecc552") + .setProductId("279632533") + .setProductKey("ab73065d16e11bcfac026eee3db9f6cb") + .setProductSecret("85d9490c438099acc33be7676799399f") + .create(); + config.setExtraParameter("DEVICE_NAME", ""); + DUILiteSDK.init(getApplicationContext()); + // SDK 授权 + DUILiteSDK.doAuth(getApplicationContext(), config, new DUILiteSDK.InitListener() { + @Override + public void success() { + LoggerUtil.d("DUILiteSDKInit: ", "授权成功! "); + } + + @Override + public void error(String errorCode,String errorInfo) { + LoggerUtil.d("DUILiteSDKInit: ", "授权失败, errorcode: "+errorCode+",errorInfo:"+errorInfo); + } + }); + } + } diff --git a/app/src/main/java/qianmu/container/app/Constant.java b/app/src/main/java/qianmu/container/app/Constant.java index ab395d1..5e539fb 100644 --- a/app/src/main/java/qianmu/container/app/Constant.java +++ b/app/src/main/java/qianmu/container/app/Constant.java @@ -29,8 +29,8 @@ public class Constant { // public static String androidBoardType = "xwst2"; //设备板子型号 xwst2(欣威视通3588、T982、3576) // public static String androidBoardType = "zc"; //设备板子型号 zc(卓策主板——王府井喜悦、杨浦中心医院) // public static String androidBoardType = "sx"; //设备板子型号 sx(视想) - public static String androidBoardType = "nova"; //设备板子型号 诺瓦盒子 华贸LED - // public static String androidBoardType = "huidu"; //设备板子型号 huidu(灰度主板) 罗湖寻车机 + // public static String androidBoardType = "nova"; //设备板子型号 诺瓦盒子 华贸LED + public static String androidBoardType = "huidu"; //设备板子型号 huidu(灰度主板) 罗湖寻车机 // public static String androidBoardType = "bv"; //设备板子型号 Bv-3588M // public static String androidBoardType = "smt"; //设备板子型号 视美泰 diff --git a/app/src/main/java/qianmu/container/app/MyApplication.java b/app/src/main/java/qianmu/container/app/MyApplication.java index b8f3c57..27e4460 100644 --- a/app/src/main/java/qianmu/container/app/MyApplication.java +++ b/app/src/main/java/qianmu/container/app/MyApplication.java @@ -10,6 +10,7 @@ import android.content.pm.PackageManager; import android.os.Bundle; import android.os.PowerManager; +import com.aispeech.export.config.AuthConfig; import com.alibaba.android.arouter.BuildConfig; import com.alibaba.android.arouter.launcher.ARouter; import com.iflytek.sparkchain.core.SparkChain; @@ -128,47 +129,8 @@ public class MyApplication extends Application { @Override public void onActivityDestroyed(Activity activity) { } }); - if("sbc".equals(Constant.TTSHome)){ // 思必驰语音 - initSbcSDK(); - }else if("kdxf".equals(Constant.TTSHome)){ - // 初始化SDK,Appid等信息在清单中配置 - SparkChainConfig sparkChainConfig = SparkChainConfig.builder(); - sparkChainConfig.appID("5c2055f8") - .apiKey("2d1e9e5604d66089bda42ff4797201c1") - .apiSecret("2bc7168506a38cf1a7a52fb3ba63d873")//应用申请的appid三元组 - .logLevel(666); - int ret = SparkChain.getInst().init(getApplicationContext(),sparkChainConfig); - String result; - if(ret == 0){ - result = "SDK初始化成功,请选择相应的功能点击体验。"; - }else{ - result = "SDK初始化失败,错误码:" + ret; - } - } } - // 思必驰授权 - private void initSbcSDK(){ - // 产品认证需设置 apiKey, productId, productKey, productSecret - DUILiteConfig config = new DUILiteConfig.Builder() - .setApiKey("d823edab41b8d823edab41b868ecc552") - .setProductId("279632533") - .setProductKey("ab73065d16e11bcfac026eee3db9f6cb") - .setProductSecret("85d9490c438099acc33be7676799399f").create(); - - DUILiteSDK.init(getApplicationContext()); - // SDK 授权 - DUILiteSDK.doAuth(getApplicationContext(), config, new DUILiteSDK.InitListener() { - @Override - public void success() { - LoggerUtil.d("DUILiteSDKInit: ", "授权成功! "); - } - @Override - public void error(String errorCode,String errorInfo) { - LoggerUtil.d("DUILiteSDKInit: ", "授权失败, errorcode: "+errorCode+",errorInfo:"+errorInfo); - } - }); - } public Lztek getLztek() { if (lztek == null) { diff --git a/app/src/main/java/qianmu/container/data/DeviceData.java b/app/src/main/java/qianmu/container/data/DeviceData.java index 9420496..8e60cf1 100644 --- a/app/src/main/java/qianmu/container/data/DeviceData.java +++ b/app/src/main/java/qianmu/container/data/DeviceData.java @@ -232,7 +232,7 @@ public class DeviceData extends BaseData { /** * 通过接口来判断网络是否正常 * */ - public static void getMachine() { + public static void getMachine(QueryFinishListener finishListener) { RetrofitUtil.getBaseService().getMachine(DeviceData.getDeviceInfo(HINT_DEVICE_CODE)).enqueue(new Callback() { @Override public void onResponse(Call call, Response response) { @@ -247,8 +247,13 @@ public class DeviceData extends BaseData { JsonObject jsonObject = new JsonParser().parse(dataJson).getAsJsonObject(); String typeName = jsonObject.get("machineTypeName").getAsString(); DeviceData.saveDeviceInfo(DeviceData.HINT_DEVICE_TYPE, typeName); //设备类型 - String voiceActivationCode = jsonObject.get("voiceActivationCode").getAsString(); - DeviceData.saveDeviceInfo(DeviceData.VOICE_CODE, typeName); //设备语音激活码 + if(jsonObject.get("voiceActivationCode") != null){ + String voiceActivationCode = jsonObject.get("voiceActivationCode").getAsString(); + DeviceData.saveDeviceInfo(DeviceData.VOICE_CODE, voiceActivationCode); //设备语音激活码 + }else{ + String deviceCode = DeviceData.getDeviceInfo(DeviceData.HINT_DEVICE_CODE); + DeviceData.saveDeviceInfo(DeviceData.VOICE_CODE, deviceCode); //设备Code语音激活码 + } LoggerUtil.e("getMachine()", typeName); } }else { @@ -257,10 +262,12 @@ public class DeviceData extends BaseData { } catch (Throwable t) { LoggerUtil.e("getMachine()", StringUtil.getThrowableStr(t)); } + if (finishListener != null) finishListener.onFinish(); } @Override public void onFailure(Call call, Throwable t) { LoggerUtil.e("getMachine()", "请求超时"); + if (finishListener != null) finishListener.onFinish(); } }); }