webview加载完网页后,android如何注入本地js文件?

webview加载完网页后,android如何注入本地js文件?来处理当前的网页?js文件里包含很多方法的

2个回答

android是可以操作文档流的,所以你等页面加载完了在用android把这个js文件用标签append到body里面就可以了,跟JS操作一样

playboyanta123
show_code 回复fslinkin129: 我是做前端的,这个是android端做的,具体怎么做我不知道,但是可以做的,你可以再搜索看吧
接近 3 年之前 回复
fslinkin129
fslinkin129 有没例子学习一下,谢谢
接近 3 年之前 回复

可以试下 webview.evaluateJavaScript 方法

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Android webview加载js click后窗口无法弹出
用webview加载一个网页想要做自动登录功能,网址是 https://weixin.citicsinfo.com/tztweb/deal/index.html#!/account/activePhone.html 在获取验证码后会有一个弹窗。现如果点击webview上的获取验证码页面有弹窗但是调用js javascript:void(0);document.getElementById('phoneNum').value='18519056349'; $('#sendMsg')[0].click();等多种语句都无法实现弹出(js语句已经在浏览器中验证)
android webview 加载 基于webgl + three.js 的3D图形网页问题
html 网页中用webgl + three.js画了几个3D的方块。android测试程序中,使用 webview控件加载该html网页。代码如下: private WebView m_Webgl3D_WV; private WebSettings m_WebSettings; @SuppressLint("SetJavaScriptEnabled") @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); m_Webgl3D_WV = (WebView)this.findViewById(R.id.webgl3D_WV); m_WebSettings = m_Webgl3D_WV.getSettings(); m_WebSettings.setJavaScriptEnabled(true); String url = "file:///android_asset/webgl_test1.html"; //url = "http://10.2.3.104:8086/webgl_test1.html"; m_Webgl3D_WV.loadUrl(url); } 分别测试了本地加载html文件和远程加载html文件两种方式。在华为手机mate8(EMUI4.0 android 6.0)上测试,能够正常显示3D图形。但是在华为平板电脑m2-801w(EMUI3.1 android 5.1.1)上测试,正常加载网页,但是不显示3D图。在联想的一款平板电脑(android 4.4.4)上测试,能够正常显示3D图形。 请问华为平板电脑m2-801w对webgl的支持需要做什么特殊的设置吗?从代码层面或系统设置中怎样解决该问题。
安卓webview向网页注入js
用webview加载了某个网页,怎么样往里面注入JS来改变这个页面的背景或者隐藏一个div。 这是我搜索到的,我试了之后是无效的![图片说明](https://img-ask.csdn.net/upload/201603/01/1456821315_495269.png)
webview加载本地的url能不能获取到cookies值呢
把前端的h5页面还是css、js等文件打包成zip文件,然后从服务器下载到sdcard中然后进行解压用webview加载文件的html文件,获取到cookie吗?
android webview 拦截js 后显示空白
为了避免webview加载过慢的问题,将js文件放在android 本地, 加载时拦截js返回, 但是结果是显示的页面不出来了。ios组的却显示正常,纠结了一天,找不到问题,求大神解答 代码如下: public WebResourceResponse shouldInterceptRequest(WebView view, String url) { WebResourceResponse response = null; LogUtil.d(TAG, "-------------- 请求回复1111111111 = " + url); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { if (url.contains(str0)) { try { InputStream localCopy = getAssets().open("all.js");//打开本地存储的js文件 response = new WebResourceResponse("text/plain", "UTF-8", localCopy);//返回给h5的文件读取 } catch (IOException e) { e.printStackTrace(); LogUtil.d(TAG,"IO异常!!!"); } } } return response; }
Android 使用WebView加载网页时,网页不能向上滑动
小米手机会出现问题, 手滑动的时候打印如下log: Unable to preventDefault inside passive event listener due to target being treated as passive. See https://www.chromestatus.com/features/5093566007214080", source: http://res.jiayouxueba.com/static-page/recruit2/index.js (13)
android webview加载服务器上js自动轮播图片不显示问题,求大神帮忙
这个是手机版网站地址:m.daxuepai.com.cn 正常打开首页应该有轮播图片,如下图: ![图片说明](https://img-ask.csdn.net/upload/201601/20/1453302838_761230.png) 轮播功能是做web前端的人用js写的。 以下是我android中的代码,主要就是用webview加载了相应地址的资源,但是我加载了后那个轮播图就没有显示,代码如下: package com.example.testwebkit; import android.app.Activity; import android.os.Bundle; import android.util.Log; import android.view.Menu; import android.view.MenuItem; import android.view.Window; import android.view.WindowManager; import android.webkit.WebChromeClient; import android.webkit.WebSettings.ZoomDensity; import android.webkit.WebView; import android.webkit.WebViewClient; public class MainActivity extends Activity { private WebView webView; @SuppressWarnings("deprecation") @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); int flag=WindowManager.LayoutParams.FLAG_FULLSCREEN; //获得当前窗体对象 Window window=MainActivity.this.getWindow(); //设置当前窗体为全屏显示 window.setFlags(flag, flag); setContentView(R.layout.activity_main); webView = (WebView) findViewById(R.id.webView1); webView.getSettings().setJavaScriptEnabled(true); webView.getSettings().setDomStorageEnabled(true); webView.loadUrl("http://m.daxuepai.com.cn"); webView.setWebChromeClient(new WebChromeClient(){ @Override public void onReceivedTitle(WebView view, String title) { // TODO Auto-generated method stub super.onReceivedTitle(view, title); } }); webView.setWebViewClient(new WebViewClient(){ @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { // TODO Auto-generated method stub view.loadUrl(url); return super.shouldOverrideUrlLoading(view, url); } }); } } 打开后效果如下: ![图片说明](https://img-ask.csdn.net/upload/201601/20/1453303268_724677.png) 我用的是MX3,手机自带浏览器、手机版猎豹浏览器同样不加载轮播图片,手机qq浏览器、微信关注公众号后进首页都可以加载那个轮播图片,有大神能告诉我是为什么么? ``` ```
Android webview 关于js模态窗(showModalDialog)加载
在使用webview的时候,js权限,对话框重写alert全部写了, 但是在使用时无法加载js和css文件,IOS没有任何问题, 在谷歌和百度找寻了非常多的文章,发现有人说,因为Android的webview无法 加载模态窗导致的。对话框则没有问题,请问这个问题有大佬遇到过嘛?
android的webview加载jqm,单 选框 报这个错误
我用android的webview加载jqm,单 选框 报这个错误,复选框,没有问题,哪位高手帮我看一下这个是什么原因呢? [INFO:CONSOLE(2)] "Uncaught Error: cannot call methods on checkboxradio prior to initialization; attempted to call method 'refresh'", source: file:///android_asset/js/jquery.min.js (2) 代码如下: ![图片说明](https://img-ask.csdn.net/upload/201511/27/1448593561_571058.jpg) android调用代码如下: wb_content=(WebView) findViewById(R.id.wb_content); WebSettings webSettings = wb_content.getSettings(); webSettings.setSavePassword(false); webSettings.setSaveFormData(false); webSettings.setJavaScriptEnabled(true); webSettings.setSupportZoom(true); // Horizontal水平方向,Vertical竖直方向 wb_content.setHorizontalScrollBarEnabled(false); wb_content.setVerticalScrollBarEnabled(false); wb_content.setWebChromeClient(new WebChromeClient() { // 处理javascript中的alert public boolean onJsAlert(WebView view, String url, String message,final JsResult result) { // 构建一个Builder来显示网页中的对话框 Builder builder = new Builder(ShowProjectActivity.this); builder.setTitle("Alert"); builder.setMessage(message); builder.setPositiveButton(android.R.string.ok, new AlertDialog.OnClickListener() { public void onClick(DialogInterface dialog, int which) { // 点击确定按钮之后,继续执行网页中的操作 result.confirm(); } }); builder.setCancelable(false); builder.create(); builder.show(); return true; }; // 处理javascript中的confirm public boolean onJsConfirm(WebView view, String url, String message, final JsResult result) { Builder builder = new Builder(ShowProjectActivity.this); builder.setTitle("confirm"); builder.setMessage(message); builder.setPositiveButton(android.R.string.ok, new AlertDialog.OnClickListener() { public void onClick(DialogInterface dialog, int which) { result.confirm(); } }); builder.setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { result.cancel(); } }); builder.setCancelable(false); builder.create(); builder.show(); return true; }; // 设置网页加载的进度条 public void onProgressChanged(WebView view, int newProgress) { ShowProjectActivity.this.getWindow().setFeatureInt( Window.FEATURE_PROGRESS, newProgress * 100); super.onProgressChanged(view, newProgress); } // 设置应用程序的标题title public void onReceivedTitle(WebView view, String title) { ShowProjectActivity.this.setTitle(title); super.onReceivedTitle(view, title); } public void onReachedMaxAppCacheSize(long spaceNeeded, long totalUsedQuota, WebStorage.QuotaUpdater quotaUpdater) { quotaUpdater.updateQuota(spaceNeeded * 2); } }); wb_content.loadUrl(url); wb_content.addJavascriptInterface(new JavaScriptInterface(), "demo"); wb_content.loadUrl("file:///android_asset/22b40f93-e3aa-4e82-ad0d-d8c75d2a7cb6/1111.html");
关于android webview无法加载某些网页的问题
网址是去哪儿的:http://touch.qunar.com/h5/train/trainList?startStation=%E6%B7%B1%E5%9C%B3&endStation=%E5%B9%BF%E5%B7%9E&searchType=stasta&sort=3 用webview直接loadUrl()会一直停在"正在跳转"界面,如图: ![图片说明](https://img-ask.csdn.net/upload/201604/19/1461061462_394203.jpg) webSettings.setJavaScriptEnabled(true); 设置允许执行js后则出现如下界面: ![图片说明](https://img-ask.csdn.net/upload/201604/19/1461061478_124847.jpg) 百度了一下qunaraphone,了解到: 5、Schema schema是native同学提供的全局调用方式,业务可以通过schema来呼起另一个业务。 前端可以直接用location.href= 的形式,访问这个schema,并调起相应功能。 这里要注意的是,暂时有三种schema头,qunariphone:// (去哪儿IOS客户端)、qunariphonepro:// (去哪儿IOS pro客户端)、qunaraphone:// (去哪儿安卓客户端)。前端需要通过userAgent,判断是哪个客户端,来调用不同头的schema。(userAgent中有相应的keyword。) == 不知道这跟webview有什么关系,要怎么弄才能正常访问呢?还有不允许执行js时访问新浪网会提示需要开启js,开启后就能正常访问,但淘宝网是一直都访问不了,一点反应都没有...
Android中WebView使用loadurl加载过长js文件失效
最近在公司项目中遇到Android与H5交互的问题,使用的是BridgeWebView 在使用中,回调方法function.onCallBack(data) data为原生向后台请求返回的Json格式的字符串 一直使用都是正常的,但是有一次data返回了大量数据,字符串长度为23000左右 这时,回调就没有响应了,H5页面没有加载出相关的数据 查看BridgeWebView源码时发现,将接收到的data数据重新拼接成js文件字符串javascriptCommand(javascriptCommand字符串长度为30000左右),使用loadurl(javascriptCommand),在网上查找资料,可能的原因为安卓4.4以后使用evaluateJavascript(javascriptCommand),但是尝试修改之后还是没法正常显示数据。不知道怎么修改才能让H5正常显示出Android这边回调的数据。 IOS和H5原生调用都能正常显示,只有Android这边有问题,急急急
android webview 本地静态资源
请教 :客户端webview在加载服务端页面的时候,由于页面中引用到的js、css、图片等,导致在加载完整个页面的时候相当缓慢,现在想把服务端的静态资源都给放到客户端里,webview在加载服务端页面的时候引用的静态资源指向客户端的静态资源。请教怎么实现!
android 怎么判断网页完全加载
用webview加载网页,里面有js和ajax的交互,我要获取它们的数据,要怎么等他们加载完成
安卓WebView加载不出指定网页
package com.example.webviewdemo; import android.support.v7.app.ActionBarActivity; import android.view.KeyEvent; import android.view.View; import android.view.View.OnClickListener; import android.view.Window; import android.webkit.WebChromeClient; import android.webkit.WebSettings; import android.webkit.WebView; import android.webkit.WebViewClient; import android.widget.EditText; import android.widget.ImageButton; import android.widget.ProgressBar; import android.widget.Toast; import android.annotation.SuppressLint; import android.os.Bundle; public class MainActivity extends ActionBarActivity { private WebView webview; private ProgressBar pb; private EditText edt; private ImageButton refresh; private ImageButton go; private String url; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); init(); } @SuppressLint("SetJavaScriptEnabled") private void init() { // TODO Auto-generated method stub //进度条绑定视图,并设置进度条的最大值 pb = (ProgressBar) findViewById(R.id.pb); pb.setMax(100); //EditText绑定视图 edt=(EditText) findViewById(R.id.edt); url=edt.getText().toString(); //imageButton绑定视图 //刷新按钮 refresh=(ImageButton) findViewById(R.id.refresh); refresh.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub webview.loadUrl(webview.getUrl()); Toast.makeText(MainActivity.this, "刷新", Toast.LENGTH_SHORT).show(); } }); //跳转按钮 go=(ImageButton) findViewById(R.id.go); go.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub webview.loadUrl(url); Toast.makeText(MainActivity.this, "跳转", Toast.LENGTH_SHORT).show(); } }); //绑定WebView视图 webview=(WebView) findViewById(R.id.webview); //WebView加载web资源,同时也可以加载本地资源,将写好的HTML文件放在assets文件夹下,然后调用即可 // webview.loadUrl(url); webview.setWebChromeClient(new WebChromeClient() { @Override public void onProgressChanged(WebView view, int newProgress) { if (newProgress == 100) { pb.setVisibility(View.GONE); } else { // if (View.INVISIBLE == pb.getVisibility()) { pb.setVisibility(View.VISIBLE); // } pb.setProgress(newProgress); } super.onProgressChanged(view, newProgress); } }); //覆盖WebView默认从第三方浏览器打开网页的行为,直接从WebView中打开网页 webview.setWebViewClient(new WebViewClient(){ @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { // TODO Auto-generated method stub view.loadUrl(edt.getText().toString()); return true; } //WebViewClient帮助WebView去处理一些网页控制和请求 }); //设置启用javaScript WebSettings websetting=webview.getSettings(); websetting.setJavaScriptEnabled(true); websetting.setSupportZoom(true); websetting.setUseWideViewPort(true); websetting.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK); } //设置点击返回键返回上一个页面 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { // TODO Auto-generated method stub if(keyCode == KeyEvent.KEYCODE_BACK && webview.canGoBack()){ webview.goBack(); return true; } return super.onKeyDown(keyCode, event); } } xml代码: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <ProgressBar android:id="@+id/pb" style="?android:attr/progressBarStyleHorizontal" android:layout_width="match_parent" android:layout_height="8dip" android:indeterminateOnly="false" android:max="100" android:progressDrawable="@drawable/progress_bar_states" /> <LinearLayout android:layout_width="match_parent" android:layout_height="40dip" android:orientation="horizontal" android:background="@drawable/title_bg"> <EditText android:id="@+id/edt" android:layout_width="match_parent" android:layout_height="40dp" android:layout_weight="3" android:textColor="#000" android:hint="@string/edittext"/> <ImageButton android:id="@+id/refresh" android:layout_width="50dp" android:layout_height="40dp" android:layout_marginLeft="5dp" android:layout_marginRight="5dp" android:layout_weight="1" android:background="@drawable/refresh" android:contentDescription="@null" /> <ImageButton android:id="@+id/go" android:layout_width="50dp" android:layout_height="40dp" android:layout_weight="1" android:background="@drawable/go" android:contentDescription="@null" /> </LinearLayout> <WebView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/webview" /> </LinearLayout> 功能是在输入框中输入网址,然后点击跳转会跳转到指定网页,不知道为什么网页就是加载不出来,百度了半天没个结果。。。求解答
webview无法正常加载web
代码如下![图片说明](https://img-ask.csdn.net/upload/201604/22/1461291686_808645.png) rotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //设置webview视图 setContentView(R.layout.activity_web); //实例化webview wv = (WebView) findViewById(R.id.web); //设置webview属性,使其能执行js文件。 wv.getSettings().setJavaScriptEnabled(true); wv.setHorizontalScrollBarEnabled(false); wv.setVerticalScrollBarEnabled(false); //加载需要显示的网页文件 String url = "file:///android_asset/www/index.html"; wv.loadUrl(url); }
android 无法加载webview中 的function
在使用webview加载html页面时通过 chartView.loadUrl("javascript:refershView(" + dataStr.toString() + ");"); 调用js代码,运行时报 08-11 15:04:49.301: I/Choreographer(11893): Skipped 602 frames! The application may be doing too much work on its main thread. 08-11 15:04:49.661: W/AwContents(11893): nativeOnDraw failed; clearing to background color. 08-11 15:04:49.831: I/chromium(11893): [INFO:CONSOLE(1)] "Uncaught ReferenceError: refershView is not defined", source: (1) 08-11 15:04:49.911: I/chromium(11893): [INFO:async_pixel_transfer_manager_android.cc(56)] Async pixel transfers not supported 08-11 15:04:49.961: I/chromium(11893): [INFO:async_pixel_transfer_manager_android.cc(56)] Async pixel transfers not supported 新开启一个线程又报 webview必须运行在主线程,这个应该如何解决呢?有哪位大神能帮忙看看,弄了好久都无解 PS:4.1.2中可以运行,今天拿了个4.42的机器,无法运行
android webview webpage not available
初学android studio 今天尝试做了一个webview,权限什么的都已经搞定。 但是进入虚拟机,打开APP之后,打开网页却显示webpage not available。 但是如果我继续点击链接,就可以进入这个网站。求各位大神帮忙解决一下。 /* * @author hualang */ package com.example.sinma.myapplication; import android.app.Activity; import android.os.Bundle; import android.view.KeyEvent; import android.webkit.WebView; import android.webkit.WebViewClient; import com.example.sinma.myapplication.R; public class WebViewTest extends Activity { /** Called when the activity is first created. */ private WebView webview; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); webview=(WebView)findViewById(R.id.webview); //设置WebView属性,能够执行JavaScript脚本 webview.getSettings().setJavaScriptEnabled(true); //加载URL内容 webview.loadUrl("http://www.aimeeaccessories.com"); //设置web视图客户端 webview.setWebViewClient(new MyWebViewClient()); } //设置回退 public boolean onKeyDown(int keyCode,KeyEvent event) { if((keyCode==KeyEvent.KEYCODE_BACK)&&webview.canGoBack()) { webview.goBack(); return true; } return super.onKeyDown(keyCode,event); } //web视图客户端 public class MyWebViewClient extends WebViewClient { public boolean shouldOverviewUrlLoading(WebView view,String url) { view.loadUrl(url); return true; } } }
webview加载页面后form表单的位置不对,点了几下屏幕就又好了
![图片说明](https://img-ask.csdn.net/upload/201505/08/1431047968_751057.gif) 下边是我的MainActivity.java以及布局,跪求大牛指导。 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" > <ImageView android:id="@+id/wordpress_logo" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="-60dip" android:adjustViewBounds="true" android:background="@drawable/loading2" android:paddingLeft="20dip" android:paddingRight="20dip" android:scaleType="centerInside" /> <WebView android:id="@+id/eshetong_wv" android:layout_height="fill_parent" android:layout_width="fill_parent"/> </LinearLayout> ----------------------------------------------------------- public class MainActivity extends Activity { private WebView webView; private ImageView img; String url = "http://sttuolian.wicp.net:8086"; private Dialog myDialog; @SuppressLint("SetJavaScriptEnabled") @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activitymain); webView = (WebView) findViewById(R.id.eshetong_wv); img = (ImageView) findViewById(R.id.wordpress_logo); WebSettings webSettings = webView.getSettings(); // 支持JS webSettings.setJavaScriptEnabled(true); // 将图片调整到适合webView的大小 webSettings.setUseWideViewPort(false); // webSettings.setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN); // 支持缩放 webSettings.setSupportZoom(true); webSettings.setBuiltInZoomControls(true); // 可以访问文件 webSettings.setAllowFileAccess(true); // 支持通过JS打开新窗口 webSettings.setJavaScriptCanOpenWindowsAutomatically(true); // 支持自动加载图片 webSettings.setLoadsImagesAutomatically(true); // 使滚动条不占位 webView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY); webView.setWebViewClient(new WebViewClient() { @Override public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) { view.stopLoading(); view.clearView(); Message msg = handler.obtainMessage(); msg.what = 1;// handler.sendMessage(msg); } @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { return false; } @Override public void onPageFinished(WebView view, String url) { img.setVisibility(View.GONE); webView.setVisibility(View.VISIBLE); super.onPageFinished(view, url); } }); webView.loadUrl(url); } @Override public boolean onCreateOptionsMenu(Menu menu) { // TODO Auto-generated method stub getMenuInflater().inflate(R.menu.main, menu); return true; } @Override public boolean onKeyDown(int keyCode, KeyEvent event) { // TODO Auto-generated method stub if ((keyCode == KeyEvent.KEYCODE_BACK) && webView.canGoBack()) { webView.goBack(); return true; } return super.onKeyDown(keyCode, event); } protected Handler handler = new Handler() { public void handleMessage(Message message) { if(message.what==1){ webView.stopLoading(); webView.loadUrl("file:///android_asset/error.html"); }else{ myDialog.show(); } } }; } ```
Android Studio中使用webview显示本地html显示一片空白
代码如下: manifest: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.captain991.report" > <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name=".MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> <uses-permission android:name="android.permission.INTERNET"></uses-permission> </manifest> XML: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".MainActivity"> <WebView android:id="@+id/web_view" android:layout_width="wrap_content" android:layout_height="wrap_content"></WebView> </LinearLayout> JAVA: package com.example.captain991.report; import android.annotation.SuppressLint; import android.app.Activity; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.support.v7.app.ActionBarActivity; import android.os.Bundle; import android.view.KeyEvent; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.Window; import android.webkit.WebBackForwardList; import android.webkit.WebSettings; import android.webkit.WebView; import android.webkit.WebViewClient; public class MainActivity extends Activity { private WebView webview; @SuppressLint("SetJavaScriptEnabled") @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); webview = (WebView) findViewById(R.id.web_view); WebSettings webSettings = webview.getSettings(); //设置WebView属性,能够执行Javascript脚本 webSettings.setJavaScriptEnabled(true); //设置可以访问文件 webSettings.setAllowFileAccess(true); //设置支持缩放 webSettings.setBuiltInZoomControls(true); //加载需要显示的网页 webSettings.setBlockNetworkImage(false); webSettings.setBlockNetworkLoads(false); webSettings.setDomStorageEnabled(true); webview.loadUrl("file:///android_asset/index.htm"); //file:///android_asset/index.html //http://www.baidu.com //设置Web视图 webview.setWebViewClient(new webViewClient ()); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.menu_main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); //noinspection SimplifiableIfStatement if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } @Override //设置回退 //覆盖Activity类的onKeyDown(int keyCoder,KeyEvent event)方法 public boolean onKeyDown(int keyCode, KeyEvent event) { if ((keyCode == KeyEvent.KEYCODE_BACK) && webview.canGoBack()) { webview.goBack(); //goBack()表示返回WebView的上一页面 return true; } finish();//结束退出程序 return false; } //Web视图 private class webViewClient extends WebViewClient { public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } } }
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
【JSON解析】浅谈JSONObject的使用
简介 在程序开发过程中,在参数传递,函数返回值等方面,越来越多的使用JSON。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,同时也易于机器解析和生成、易于理解、阅读和撰写,而且Json采用完全独立于语言的文本格式,这使得Json成为理想的数据交换语言。 JSON建构于两种结构: “名称/值”对的集合(A Collection of name/va...
《MySQL 性能优化》之理解 MySQL 体系结构
本文介绍 MySQL 的体系结构,包括物理结构、逻辑结构以及插件式存储引擎。
程序员请照顾好自己,周末病魔差点一套带走我。
程序员在一个周末的时间,得了重病,差点当场去世,还好及时挽救回来了。
卸载 x 雷某度!GitHub 标星 1.5w+,从此我只用这款全能高速下载工具!
作者 | Rocky0429 来源 | Python空间 大家好,我是 Rocky0429,一个喜欢在网上收集各种资源的蒟蒻… 网上资源眼花缭乱,下载的方式也同样千奇百怪,比如 BT 下载,磁力链接,网盘资源等等等等,下个资源可真不容易,不一样的方式要用不同的下载软件,因此某比较有名的 x 雷和某度网盘成了我经常使用的工具。 作为一个没有钱的穷鬼,某度网盘几十 kb 的下载速度让我...
只因接了一个电话,程序员被骗 30 万!
今天想给大家说一个刚刚发生在我身边的一起真实的诈骗经历,我的朋友因此被骗走30万。注:为了保护当事人隐私,部分情节进行了修改。1平安夜突来的电话开始以为就像普通的诈骗一样,想办法让你把钱...
我一个37岁的程序员朋友
周末了,人一旦没有点事情干,心里就瞎想,而且跟几个老男人坐在一起,更容易瞎想,我自己现在也是 30 岁了,也是无时无刻在担心自己的职业生涯,担心丢掉工作没有收入,担心身体机能下降,担心突...
python自动下载图片
近日闲来无事,总有一种无形的力量萦绕在朕身边,让朕精神涣散,昏昏欲睡。 可是,像朕这么有职业操守的社畜怎么能在上班期间睡瞌睡呢,我不禁陷入了沉思。。。。 突然旁边的IOS同事问:‘嘿,兄弟,我发现一个网站的图片很有意思啊,能不能帮我保存下来提升我的开发灵感?’ 作为一个坚强的社畜怎么能说自己不行呢,当时朕就不假思索的答应:‘oh, It’s simple. Wait for me for a ...
一名大专同学的四个问题
【前言】   收到一封来信,赶上各种事情拖了几日,利用今天要放下工作的时机,做个回复。   2020年到了,就以这一封信,作为开年标志吧。 【正文】   您好,我是一名现在有很多困惑的大二学生。有一些问题想要向您请教。   先说一下我的基本情况,高考失利,不想复读,来到广州一所大专读计算机应用技术专业。学校是偏艺术类的,计算机专业没有实验室更不用说工作室了。而且学校的学风也不好。但我很想在计算机领...
复习一周,京东+百度一面,不小心都拿了Offer
京东和百度一面都问了啥,面试官百般刁难,可惜我全会。
Java 14 都快来了,为什么还有这么多人固守Java 8?
从Java 9开始,Java版本的发布就让人眼花缭乱了。每隔6个月,都会冒出一个新版本出来,Java 10 , Java 11, Java 12, Java 13, 到2020年3月份,...
达摩院十大科技趋势发布:2020 非同小可!
【CSDN编者按】1月2日,阿里巴巴发布《达摩院2020十大科技趋势》,十大科技趋势分别是:人工智能从感知智能向认知智能演进;计算存储一体化突破AI算力瓶颈;工业互联网的超融合;机器间大规模协作成为可能;模块化降低芯片设计门槛;规模化生产级区块链应用将走入大众;量子计算进入攻坚期;新材料推动半导体器件革新;保护数据隐私的AI技术将加速落地;云成为IT技术创新的中心 。 新的画卷,正在徐徐展开。...
轻松搭建基于 SpringBoot + Vue 的 Web 商城应用
首先介绍下在本文出现的几个比较重要的概念: 函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传。函数计算准备计算资源,并以弹性伸缩的方式运行用户代码,而用户只需根据实际代码运行所消耗的资源进行付费。Fun: Fun 是一个用于支持 Serverless 应用部署的工具,能帮助您便捷地管理函数计算、API ...
Python+OpenCV实时图像处理
目录 1、导入库文件 2、设计GUI 3、调用摄像头 4、实时图像处理 4.1、阈值二值化 4.2、边缘检测 4.3、轮廓检测 4.4、高斯滤波 4.5、色彩转换 4.6、调节对比度 5、退出系统 初学OpenCV图像处理的小伙伴肯定对什么高斯函数、滤波处理、阈值二值化等特性非常头疼,这里给各位分享一个小项目,可通过摄像头实时动态查看各类图像处理的特点,也可对各位调参、测试...
2020年一线城市程序员工资大调查
人才需求 一线城市共发布岗位38115个,招聘120827人。 其中 beijing 22805 guangzhou 25081 shanghai 39614 shenzhen 33327 工资分布 2020年中国一线城市程序员的平均工资为16285元,工资中位数为14583元,其中95%的人的工资位于5000到20000元之间。 和往年数据比较: yea...
为什么猝死的都是程序员,基本上不见产品经理猝死呢?
相信大家时不时听到程序员猝死的消息,但是基本上听不到产品经理猝死的消息,这是为什么呢? 我们先百度搜一下:程序员猝死,出现将近700多万条搜索结果: 搜索一下:产品经理猝死,只有400万条的搜索结果,从搜索结果数量上来看,程序员猝死的搜索结果就比产品经理猝死的搜索结果高了一倍,而且从下图可以看到,首页里面的五条搜索结果,其实只有两条才是符合条件。 所以程序员猝死的概率真的比产品经理大,并不是错...
害怕面试被问HashMap?这一篇就搞定了!
声明:本文以jdk1.8为主! 搞定HashMap 作为一个Java从业者,面试的时候肯定会被问到过HashMap,因为对于HashMap来说,可以说是Java集合中的精髓了,如果你觉得自己对它掌握的还不够好,我想今天这篇文章会非常适合你,至少,看了今天这篇文章,以后不怕面试被问HashMap了 其实在我学习HashMap的过程中,我个人觉得HashMap还是挺复杂的,如果真的想把它搞得明明白...
毕业5年,我问遍了身边的大佬,总结了他们的学习方法
我问了身边10个大佬,总结了他们的学习方法,原来成功都是有迹可循的。
推荐10个堪称神器的学习网站
每天都会收到很多读者的私信,问我:“二哥,有什么推荐的学习网站吗?最近很浮躁,手头的一些网站都看烦了,想看看二哥这里有什么新鲜货。” 今天一早做了个恶梦,梦到被老板辞退了。虽然说在我们公司,只有我辞退老板的份,没有老板辞退我这一说,但是还是被吓得 4 点多都起来了。(主要是因为我掌握着公司所有的核心源码,哈哈哈) 既然 4 点多起来,就得好好利用起来。于是我就挑选了 10 个堪称神器的学习网站,推...
这些软件太强了,Windows必装!尤其程序员!
Windows可谓是大多数人的生产力工具,集娱乐办公于一体,虽然在程序员这个群体中都说苹果是信仰,但是大部分不都是从Windows过来的,而且现在依然有很多的程序员用Windows。 所以,今天我就把我私藏的Windows必装的软件分享给大家,如果有一个你没有用过甚至没有听过,那你就赚了????,这可都是提升你幸福感的高效率生产力工具哦! 走起!???? NO、1 ScreenToGif 屏幕,摄像头和白板...
阿里面试,面试官没想到一个ArrayList,我都能跟他扯半小时
我是真的没想到,面试官会这样问我ArrayList。
曾经优秀的人,怎么就突然不优秀了。
职场上有很多辛酸事,很多合伙人出局的故事,很多技术骨干被裁员的故事。说来模板都类似,曾经是名校毕业,曾经是优秀员工,曾经被领导表扬,曾经业绩突出,然而突然有一天,因为种种原因,被裁员了,...
大学四年因为知道了这32个网站,我成了别人眼中的大神!
依稀记得,毕业那天,我们导员发给我毕业证的时候对我说“你可是咱们系的风云人物啊”,哎呀,别提当时多开心啦????,嗯,我们导员是所有导员中最帅的一个,真的???? 不过,导员说的是实话,很多人都叫我大神的,为啥,因为我知道这32个网站啊,你说强不强????,这次是绝对的干货,看好啦,走起来! PS:每个网站都是学计算机混互联网必须知道的,真的牛杯,我就不过多介绍了,大家自行探索,觉得没用的,尽管留言吐槽吧???? 社...
良心推荐,我珍藏的一些Chrome插件
上次搬家的时候,发了一个朋友圈,附带的照片中不小心暴露了自己的 Chrome 浏览器插件之多,于是就有小伙伴评论说分享一下我觉得还不错的浏览器插件。 我下面就把我日常工作和学习中经常用到的一些 Chrome 浏览器插件分享给大家,随便一个都能提高你的“生活品质”和工作效率。 Markdown Here Markdown Here 可以让你更愉快的写邮件,由于支持 Markdown 直接转电子邮...
看完这篇HTTP,跟面试官扯皮就没问题了
我是一名程序员,我的主要编程语言是 Java,我更是一名 Web 开发人员,所以我必须要了解 HTTP,所以本篇文章就来带你从 HTTP 入门到进阶,看完让你有一种恍然大悟、醍醐灌顶的感觉。 最初在有网络之前,我们的电脑都是单机的,单机系统是孤立的,我还记得 05 年前那会儿家里有个电脑,想打电脑游戏还得两个人在一个电脑上玩儿,及其不方便。我就想为什么家里人不让上网,我的同学 xxx 家里有网,每...
史上最全的IDEA快捷键总结
现在Idea成了主流开发工具,这篇博客对其使用的快捷键做了总结,希望对大家的开发工作有所帮助。
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
这种新手都不会范的错,居然被一个工作好几年的小伙子写出来,差点被当场开除了。
谁是华为扫地僧?
是的,华为也有扫地僧!2020年2月11-12日,“养在深闺人不知”的华为2012实验室扫地僧们,将在华为开发者大会2020(Cloud)上,和大家见面。到时,你可以和扫地僧们,吃一个洋...
Idea 中最常用的10款插件(提高开发效率),一定要学会使用!
学习使用一些插件,可以提高开发效率。对于我们开发人员很有帮助。这篇博客介绍了开发中使用的插件。
AI 没让人类失业,搞 AI 的人先失业了
最近和几个 AI 领域的大佬闲聊 根据他们讲的消息和段子 改编出下面这个故事 如有雷同 都是巧合 1. 老王创业失败,被限制高消费 “这里写我跑路的消息实在太夸张了。” 王葱葱哼笑一下,把消息分享给群里。 阿杰也看了消息,笑了笑。在座几位也都笑了。 王葱葱是个有名的人物,21岁那年以全额奖学金进入 KMU 攻读人工智能博士,累计发表论文 40 余篇,个人技术博客更是成为深度学习领域内风向标。 ...
立即提问