|
@@ -46,7 +46,7 @@ class WebviewActivity :BaseActivity<BedWebviewActivityPresenter, WebciewLayBindi
|
|
|
|
|
|
override fun init() {
|
|
override fun init() {
|
|
val settings: WebSettings = webview.settings
|
|
val settings: WebSettings = webview.settings
|
|
- webviewSetting(settings);
|
|
|
|
|
|
+ webviewSetting(settings)
|
|
val name = intent.getStringExtra("name") ?: ""
|
|
val name = intent.getStringExtra("name") ?: ""
|
|
if (name!=null){
|
|
if (name!=null){
|
|
top_title_tv.setText(name)
|
|
top_title_tv.setText(name)
|
|
@@ -54,6 +54,10 @@ class WebviewActivity :BaseActivity<BedWebviewActivityPresenter, WebciewLayBindi
|
|
val url = intent.getStringExtra("url") ?: ""
|
|
val url = intent.getStringExtra("url") ?: ""
|
|
val key = intent.getStringExtra("key") ?: ""
|
|
val key = intent.getStringExtra("key") ?: ""
|
|
|
|
|
|
|
|
+ //视频测试url
|
|
|
|
+ //https://media.w3.org/2010/05/sintel/trailer.mp4
|
|
|
|
+ //http://cloud.ruiboyun.net/mp4/vod/9npkladw/mp4/index.mp4
|
|
|
|
+
|
|
if (!TextUtils.isEmpty(url)){
|
|
if (!TextUtils.isEmpty(url)){
|
|
if (!TextUtils.isEmpty(key)) {
|
|
if (!TextUtils.isEmpty(key)) {
|
|
val result = key.replace("&", "&")
|
|
val result = key.replace("&", "&")
|
|
@@ -66,15 +70,11 @@ class WebviewActivity :BaseActivity<BedWebviewActivityPresenter, WebciewLayBindi
|
|
} else {
|
|
} else {
|
|
showMessage("error: empty url!")
|
|
showMessage("error: empty url!")
|
|
}
|
|
}
|
|
-// webview.loadUrl("https://www.baidu.com/");
|
|
|
|
- //带参数
|
|
|
|
-// webview.loadDataWithBaseURL(HttpConstant.PATH, content, "text/html", "UTF-8", null);
|
|
|
|
}
|
|
}
|
|
|
|
|
|
override fun bindEvent() {
|
|
override fun bindEvent() {
|
|
back_btn.setOnClickListener {
|
|
back_btn.setOnClickListener {
|
|
finish()
|
|
finish()
|
|
-// push("/callingbed/main")
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
override fun onStart() {
|
|
override fun onStart() {
|
|
@@ -120,6 +120,7 @@ class WebviewActivity :BaseActivity<BedWebviewActivityPresenter, WebciewLayBindi
|
|
this.finish()
|
|
this.finish()
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
private fun webviewSetting(webSettings: WebSettings) {
|
|
private fun webviewSetting(webSettings: WebSettings) {
|
|
pb_web_base.setMax(100) //设置加载进度最大值
|
|
pb_web_base.setMax(100) //设置加载进度最大值
|
|
if (Build.VERSION.SDK_INT >= 19) {
|
|
if (Build.VERSION.SDK_INT >= 19) {
|
|
@@ -131,12 +132,12 @@ class WebviewActivity :BaseActivity<BedWebviewActivityPresenter, WebciewLayBindi
|
|
webSettings.loadsImagesAutomatically = false //图片自动缩放 关闭
|
|
webSettings.loadsImagesAutomatically = false //图片自动缩放 关闭
|
|
}
|
|
}
|
|
|
|
|
|
- webview.setLayerType(View.LAYER_TYPE_NONE, null) //硬件解码
|
|
|
|
|
|
+ //webview.setLayerType(View.LAYER_TYPE_NONE, null) //硬件解码
|
|
webSettings.javaScriptEnabled = true // 设置支持javascript脚本
|
|
webSettings.javaScriptEnabled = true // 设置支持javascript脚本
|
|
webSettings.setSupportZoom(true) // 设置可以支持缩放
|
|
webSettings.setSupportZoom(true) // 设置可以支持缩放
|
|
webSettings.builtInZoomControls = true // 设置出现缩放工具 是否使用WebView内置的缩放组件,由浮动在窗口上的缩放控制和手势缩放控制组成,默认false
|
|
webSettings.builtInZoomControls = true // 设置出现缩放工具 是否使用WebView内置的缩放组件,由浮动在窗口上的缩放控制和手势缩放控制组成,默认false
|
|
webSettings.displayZoomControls = false //隐藏缩放工具
|
|
webSettings.displayZoomControls = false //隐藏缩放工具
|
|
- webSettings.useWideViewPort = false // 扩大比例的缩放
|
|
|
|
|
|
+ webSettings.useWideViewPort = true // 扩大比例的缩放
|
|
webSettings.layoutAlgorithm = WebSettings.LayoutAlgorithm.SINGLE_COLUMN //自适应屏幕
|
|
webSettings.layoutAlgorithm = WebSettings.LayoutAlgorithm.SINGLE_COLUMN //自适应屏幕
|
|
webSettings.loadWithOverviewMode = true
|
|
webSettings.loadWithOverviewMode = true
|
|
webSettings.databaseEnabled = false //
|
|
webSettings.databaseEnabled = false //
|
|
@@ -145,7 +146,16 @@ class WebviewActivity :BaseActivity<BedWebviewActivityPresenter, WebciewLayBindi
|
|
webview.isSaveEnabled = true
|
|
webview.isSaveEnabled = true
|
|
webview.keepScreenOn = true
|
|
webview.keepScreenOn = true
|
|
webSettings.textZoom = 100
|
|
webSettings.textZoom = 100
|
|
- // 设置setWebChromeClient对象
|
|
|
|
|
|
+ webSettings.mediaPlaybackRequiresUserGesture = false //自动播放视频
|
|
|
|
+ //webSettings.allowContentAccess = true
|
|
|
|
+ //webSettings.allowFileAccess = true
|
|
|
|
+ //webSettings.setPluginState(WebSettings.PluginState.ON)
|
|
|
|
+ //webSettings.setRenderPriority(WebSettings.RenderPriority.HIGH)
|
|
|
|
+ //webSettings.setAllowUniversalAccessFromFileURLs(true)
|
|
|
|
+ if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
|
|
|
|
+ webSettings.mixedContentMode = WebSettings.MIXED_CONTENT_ALWAYS_ALLOW
|
|
|
|
+ }
|
|
|
|
+
|
|
// 设置setWebChromeClient对象
|
|
// 设置setWebChromeClient对象
|
|
webview.webChromeClient = object : WebChromeClient() {
|
|
webview.webChromeClient = object : WebChromeClient() {
|
|
override fun onReceivedTitle(view: WebView, title: String) {
|
|
override fun onReceivedTitle(view: WebView, title: String) {
|
|
@@ -158,24 +168,25 @@ class WebviewActivity :BaseActivity<BedWebviewActivityPresenter, WebciewLayBindi
|
|
super.onProgressChanged(view, newProgress)
|
|
super.onProgressChanged(view, newProgress)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
//设置此方法可在WebView中打开链接,反之用浏览器打开
|
|
//设置此方法可在WebView中打开链接,反之用浏览器打开
|
|
webview.setWebViewClient(object : WebViewClient() {
|
|
webview.setWebViewClient(object : WebViewClient() {
|
|
override fun onPageFinished(view: WebView?, url: String?) {
|
|
override fun onPageFinished(view: WebView?, url: String?) {
|
|
super.onPageFinished(view, url)
|
|
super.onPageFinished(view, url)
|
|
if (!webview.getSettings().getLoadsImagesAutomatically()) {
|
|
if (!webview.getSettings().getLoadsImagesAutomatically()) {
|
|
- webview.getSettings().setLoadsImagesAutomatically(true);
|
|
|
|
|
|
+ webview.getSettings().setLoadsImagesAutomatically(true)
|
|
}
|
|
}
|
|
- pb_web_base.setVisibility(View.GONE);
|
|
|
|
|
|
+ pb_web_base.setVisibility(View.GONE)
|
|
}
|
|
}
|
|
|
|
|
|
override fun onPageStarted(view: WebView?, url: String?, favicon: Bitmap?) {
|
|
override fun onPageStarted(view: WebView?, url: String?, favicon: Bitmap?) {
|
|
- pb_web_base.setVisibility(View.VISIBLE);
|
|
|
|
|
|
+ pb_web_base.setVisibility(View.VISIBLE)
|
|
super.onPageStarted(view, url, favicon)
|
|
super.onPageStarted(view, url, favicon)
|
|
}
|
|
}
|
|
|
|
|
|
override fun shouldOverrideUrlLoading(view: WebView, url: String?): Boolean {
|
|
override fun shouldOverrideUrlLoading(view: WebView, url: String?): Boolean {
|
|
// 在当前 WebView 中加载网页,而不是启动系统浏览器
|
|
// 在当前 WebView 中加载网页,而不是启动系统浏览器
|
|
-// view.loadUrl(url!!)
|
|
|
|
|
|
+ //view.loadUrl(url!!)
|
|
return true
|
|
return true
|
|
}
|
|
}
|
|
|
|
|