原生调用js方法,带参数
activityBaseWebAddWebView.loadUrl("javascript:changeColor('" + viewColor + "')");//changeColor是js方法,viewColor是参数
js调用原生
1、创建js通信接口
//js通信接口
class JavascriptInterface {
private Context context;
JavascriptInterface(Context context) {
this.context = context;
}
@android.webkit.JavascriptInterface
public void openImage(String imageUrls, String img) {
Intent intent = new Intent();
intent.putExtra("imageUrls", imageUrls);
intent.putExtra("curImageUrl", img);
intent.setClass(GreetingCardWebActivity.this, PhotoBrowserActivity.class);
startActivity(intent);
}
@android.webkit.JavascriptInterface
public void toLogin() {
startActivity(new Intent(getApplicationContext(), LoginActivity.class));
}
@android.webkit.JavascriptInterface
public void toCompanyDetail(int epId, String accessPath) {
// window.yxbl_app.toCompanyDetail() //js调用android源码方法
Intent intent = new Intent(GreetingCardWebActivity.this, CompanyDetailWebActivity.class);
intent.putExtra("epId", epId);
intent.putExtra("accessPath", accessPath);
startActivity(intent);
}
@android.webkit.JavascriptInterface
public void getGreetingCardProc(String title, String imgUrl, String content, String url) {
mtitle = title;
mlogo = imgUrl;
mcontent = content;
mshareUrl = url;
mTitleText.setText(mtitle);
}
}
2、webview添加js通信接口
webView.addJavascriptInterface(new JavascriptInterface(this), "yxbl_app");