1.前端调用类
webview.getSettings().setTextZoom(100);//当前字体百分比 webview.getSettings().setDefaultTextEncodingName("utf-8");//指定编码方式 webview.getSettings().setJavaScriptEnabled(true);//支持js webview.getSettings().setDomStorageEnabled(true); //设置支持DomStorage webview.getSettings().setAllowFileAccess(true);//设置在WebView内部是否允许访问文件 webview.getSettings().setBlockNetworkLoads(false);//设置WebView是否从网络加载资源,Application需要设置访问网络权限,否则报异常 webview.getSettings().setBlockNetworkImage(false);//设置WebView是否以http、https方式访问从网络加载图片资源,默认false aj = new AndroidToastForJs(WebViewActivity.this, webview); webview.addJavascriptInterface(aj, "AppNativeInterface");//JS交互 webview.loadUrl("http://ldj.oapi.xunmall.com:3038/service/bussiness?uid=1440&f=1&token=3e2f600c5437f083ab93cf19b871dc51&v=58");
public class AndroidToastForJs { private Context mContext; private com.tencent.smtt.sdk.WebView mWebView; // 初始化方法 public AndroidToastForJs(Context context, WebView myweb) { this.mContext = context; this.mWebView = myweb; } /** * 用于前端自己跳转h5页面方法 * url:加载的网址 * titleText:标题名称 * titleType:标题栏显示类型 * */ @JavascriptInterface public void toAppHTML(String strJson) { webviewBean webviewbean = FastJsonUtil.toBean(strJson,webviewBean.class); Intent intent = new Intent(mContext, WebViewActivity.class); intent.putExtra("url",webviewbean.getUrl()); intent.putExtra("title",webviewbean.getTitle()); intent.putExtra("titleType",webviewbean.getBankType()); mContext.startActivity(intent); } //前端调用方法 @JavascriptInterface public void toApp(int type, String strJson) { switch (type) { case 0:// 商品列表 toGoodList(strJson); break; case 1:// 商品详情页 toGoodDetails(strJson); break; case 2:// 店铺详情页 toShop(strJson); break; case 3:// 账户余额 toBalance(strJson); break; case 4:// 订单列表 toOrderList(strJson); break; case 5:// 我的资料 toUserData(strJson); break; case 6:// 我的优惠劵 toRedPage(strJson); break; case 7:// 充值 toRecharge(strJson); break; case 8:// 我的收藏 toCollection(strJson); break; case 9:// 主页 jumpShouye(strJson); break; case 11:// 分类 Classify(strJson); break; case 12:// 购物车 toShopCar(strJson); break; case 13:// 个人中心 Center(strJson); break; case 14:// 版本更新 break; case 15:// 拨打电话 cllMoble(strJson); break; case 16:// 返利列表 toRebate(strJson); break; case 17: toOrderDetails(strJson); break; case 18: break; case 19: MaiMaiJin(strJson); break; case 20: toErweima(strJson); break; case 21: Login(strJson); break; case 22: Register(strJson); break; case 23: Lostpassword(strJson); break; case 24:// 搜索页 toSearchPage(strJson); break; case 25: toGoodSureOrderActivity(strJson); break; case 26: break; case 27: break; case 28: toGoodAllActivity(strJson); break; case 29: break; case 30: break; case 31: break; case 32: toShopSearchActivity(strJson); break; case 33: break; case 34:// 活动页面 break; case 35: break; case 36: toFavActivity(strJson); break; case 37: toPingJiaActivity(strJson); break; case 38: toServiceActivity(strJson); break; default: break; } } }
2.调用前端
webview.loadUrl("javascript:openMusic()");//加载结束,加载音乐