将java变量/数组传递给android webview中的javascript

Pass java variable/array to javascript in android webview

本文关键字:android webview 中的 javascript java 变量 数组      更新时间:2023-09-26

嗨,我想使用谷歌图在android webview中绘制图。我正在调用web服务来获取数据。我只需要将这些数据传递给javascript来绘制图形。以下是谷歌图形api使用的数据。

 var data = google.visualization.arrayToDataTable([
          ['Frequency', 'HVAC', 'Lighting', 'Overall', 'Cost'],
          ['00:00',100,200,0,80],
          ['00:00',0,0,522,50],
          ['1:00',125,78,0,115],
          ['1:00',0,0,153,125],
          ['2:00',100,90,0,100],
          ['2:00',0,0,119,120]
        ]);

以及等图形选项

var options = {
          title : 'Monthly Coffee Production by Country',
          vAxis: {title: "Cups"},
          hAxis: {title: "Month"},
          seriesType: "bars",
          isStacked: true,
          series: {3: {type: "line"}}
        };

我认为这是一个javascript数组。我需要将数据传递给javascript。我可以将这种数组从android上下文传递给javascript吗?

您只能通过webview.loadUrl("javascript:myfunction(arg1,..)")将字符串传递到webview,但该字符串也可以包含JSON数据。在javascript函数(即myfunction)中,您调用JSON.parse(arg1)将字符串转换回javascript对象。