Browse Source

fix: init

sibichiAi
高志龙 9 months ago
parent
commit
3c66674762
  1. 4
      app/build.gradle
  2. 44
      app/src/main/java/qianmu/container/activity/H5/WebViewActivity.java
  3. 2
      app/src/main/java/qianmu/container/app/Constant.java

4
app/build.gradle

@ -10,7 +10,7 @@ android {
minSdkVersion 22 minSdkVersion 22
targetSdkVersion 30 targetSdkVersion 30
versionCode 6 versionCode 6
versionName "V2.0.7.32"
versionName "V2.0.7.30"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles 'consumer-rules.pro' consumerProguardFiles 'consumer-rules.pro'
@ -97,7 +97,7 @@ dependencies {
implementation files('libs\\shockman.jar')// implementation files('libs\\shockman.jar')//
implementation files('libs\\signway.jar') // implementation files('libs\\signway.jar') //
implementation files('libs\\sdkapi.jar') //Bv-3588 implementation files('libs\\sdkapi.jar') //Bv-3588
implementation files('libs\\smdt.jar') //
implementation files('libs\\smdt.jar')//
testImplementation 'junit:junit:4.12' testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test.ext:junit:1.1.1' androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'

44
app/src/main/java/qianmu/container/activity/H5/WebViewActivity.java

@ -6,6 +6,7 @@ import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.media.MediaPlayer; import android.media.MediaPlayer;
import android.net.Uri; import android.net.Uri;
import android.os.Build;
import android.os.Bundle; import android.os.Bundle;
import android.os.Debug; import android.os.Debug;
import android.os.Handler; import android.os.Handler;
@ -32,16 +33,11 @@ import androidx.recyclerview.widget.GridLayoutManager;
import com.alibaba.android.arouter.facade.annotation.Route; import com.alibaba.android.arouter.facade.annotation.Route;
import com.alibaba.android.arouter.launcher.ARouter; import com.alibaba.android.arouter.launcher.ARouter;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.iflytek.cloud.ErrorCode;
import com.iflytek.cloud.InitListener;
import com.iflytek.cloud.RecognizerListener;
import com.iflytek.cloud.RecognizerResult;
import com.iflytek.cloud.SpeechConstant;
import com.iflytek.cloud.SpeechError;
import com.iflytek.cloud.SpeechRecognizer;
import com.iflytek.cloud.SpeechUtility;
import com.iflytek.sparkchain.core.asr.ASR; import com.iflytek.sparkchain.core.asr.ASR;
import com.iflytek.sparkchain.core.asr.AsrCallbacks; import com.iflytek.sparkchain.core.asr.AsrCallbacks;
import com.iflytek.sparkchain.core.asr.Segment;
import com.iflytek.sparkchain.core.asr.Transcription;
import com.iflytek.sparkchain.core.asr.Vad;
import com.shockman.sm.vendor.IHttp; import com.shockman.sm.vendor.IHttp;
import com.shockman.sm.vendor.SmUtils; import com.shockman.sm.vendor.SmUtils;
import com.shockman.sm.vendor.TargetVo; import com.shockman.sm.vendor.TargetVo;
@ -101,7 +97,7 @@ public class WebViewActivity extends BaseActivity {
static final int TYPE_HINT_PASSWORD = 3;//隐藏密码输入框 static final int TYPE_HINT_PASSWORD = 3;//隐藏密码输入框
static final int TYPE_START_SERVER = 4;//重新启动web服务 static final int TYPE_START_SERVER = 4;//重新启动web服务
static String HtmlUrl = "http://127.0.0.1:8080/index.html";//webServer服务地址 http://192.168.1.218:5173/ static String HtmlUrl = "http://127.0.0.1:8080/index.html";//webServer服务地址 http://192.168.1.218:5173/
//static String HtmlUrl = "http://192.168.1.196:5500/index.html";
//static String HtmlUrl = "http://192.168.1.196:5173/";
int time = 0; int time = 0;
private VideoView currentVideo; private VideoView currentVideo;
SocketClient localSocketClient; SocketClient localSocketClient;
@ -278,7 +274,9 @@ public class WebViewActivity extends BaseActivity {
currentVideo.setVisibility(View.GONE); currentVideo.setVisibility(View.GONE);
currentVideo.clearAnimation(); currentVideo.clearAnimation();
currentVideo = nextVideo; currentVideo = nextVideo;
currentVideo.start();
if (!currentVideo.isPlaying()) {
currentVideo.start();
}
} }
@Override @Override
public void onAnimationRepeat(Animation animation) {} public void onAnimationRepeat(Animation animation) {}
@ -295,6 +293,7 @@ public class WebViewActivity extends BaseActivity {
Log.e("WebViewActivity", "setData"); Log.e("WebViewActivity", "setData");
WebSettings webSettings = binding.web.getSettings(); WebSettings webSettings = binding.web.getSettings();
webSettings.setJavaScriptEnabled(true); webSettings.setJavaScriptEnabled(true);
webSettings.setDomStorageEnabled(true);
webSettings.setUseWideViewPort(true); webSettings.setUseWideViewPort(true);
webSettings.setLoadWithOverviewMode(true); webSettings.setLoadWithOverviewMode(true);
webSettings.setSupportZoom(false); webSettings.setSupportZoom(false);
@ -302,10 +301,16 @@ public class WebViewActivity extends BaseActivity {
webSettings.setDisplayZoomControls(false); webSettings.setDisplayZoomControls(false);
webSettings.setCacheMode(WebSettings.LOAD_NO_CACHE); webSettings.setCacheMode(WebSettings.LOAD_NO_CACHE);
webSettings.setAllowFileAccess(true); webSettings.setAllowFileAccess(true);
webSettings.setJavaScriptCanOpenWindowsAutomatically(true);
webSettings.setLoadsImagesAutomatically(true); webSettings.setLoadsImagesAutomatically(true);
webSettings.setDefaultTextEncodingName("utf-8"); webSettings.setDefaultTextEncodingName("utf-8");
webSettings.setUserAgentString(""); webSettings.setUserAgentString("");
webSettings.setMediaPlaybackRequiresUserGesture(false); // 允许自动播放
// 适配HTTPS/HTTP混合内容
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
webSettings.setMixedContentMode(WebSettings.MIXED_CONTENT_COMPATIBILITY_MODE);
}
//加载web //加载web
currRoute = Constant.ROUTE_WEB_VIEW; currRoute = Constant.ROUTE_WEB_VIEW;
loadH5Url(getIntent().getBooleanExtra(Constant.KEY_LOAD_H5_URL, false)); loadH5Url(getIntent().getBooleanExtra(Constant.KEY_LOAD_H5_URL, false));
@ -478,16 +483,11 @@ public class WebViewActivity extends BaseActivity {
if("sbc".equals(Constant.TTSFac)) { if("sbc".equals(Constant.TTSFac)) {
localSocketClient.send(StringUtil.strSplice("{\"method\":\"/tts/stop\"}")); localSocketClient.send(StringUtil.strSplice("{\"method\":\"/tts/stop\"}"));
localSocketClient.send(StringUtil.strSplice("{\"method\":\"/asr/start\"}")); localSocketClient.send(StringUtil.strSplice("{\"method\":\"/asr/start\"}"));
runOnUiThread(new Runnable() {
@Override
public void run() {
changeVideo("bg");
}
});
}else{ }else{
if(isrun){ if(isrun){
return; return;
} }
ttsUtil.stopTTs();
if(mAsr == null){ if(mAsr == null){
LoggerUtil.d(TAG, "未初始化"); LoggerUtil.d(TAG, "未初始化");
initASR(); initASR();
@ -500,6 +500,12 @@ public class WebViewActivity extends BaseActivity {
isrun = true; isrun = true;
} }
} }
runOnUiThread(new Runnable() {
@Override
public void run() {
changeVideo("bg");
}
});
} }
// h5调用android:停止识别语音 // h5调用android:停止识别语音
@JavascriptInterface @JavascriptInterface
@ -633,7 +639,7 @@ public class WebViewActivity extends BaseActivity {
runOnUiThread(new Runnable() { runOnUiThread(new Runnable() {
@Override @Override
public void run() { public void run() {
binding.web.loadUrl(StringUtil.strSplice("javascript:window.youAskOver('"+"');"));
binding.web.evaluateJavascript("javascript: window.youAskOver('');", null);
} }
}); });
stopAsr(); stopAsr();
@ -650,7 +656,7 @@ public class WebViewActivity extends BaseActivity {
runOnUiThread(new Runnable() { runOnUiThread(new Runnable() {
@Override @Override
public void run() { public void run() {
binding.web.loadUrl(StringUtil.strSplice("javascript:window.youAskOver('"+"');"));
binding.web.evaluateJavascript("javascript: window.youAskOver('');", null);
} }
}); });
} }

2
app/src/main/java/qianmu/container/app/Constant.java

@ -33,7 +33,7 @@ public class Constant {
// public static String androidBoardType = "bv"; //设备板子型号 Bv-3588M // public static String androidBoardType = "bv"; //设备板子型号 Bv-3588M
public static String androidBoardType = "smt"; //设备板子型号 视美泰 public static String androidBoardType = "smt"; //设备板子型号 视美泰
public static String TTSFac = "sbc"; // 语音识别厂家 ksxf--科大讯飞 sbc-思必驰
public static String TTSFac = "sbc"; // 语音识别厂家 kdxf--科大讯飞 sbc-思必驰
public static final String VOID_STOP = "void_stop";// public static final String VOID_STOP = "void_stop";//
public static String whoActivity = ""; // 哪个activity页面 public static String whoActivity = ""; // 哪个activity页面
// 本地缓存地址 // 本地缓存地址

Loading…
Cancel
Save