问题:
我需要做些什么才能使webView.loadUrl(javaScript)在API 18或更低版本中工作(与API 19或更高版本相比)?
问题描述:
我正在使用WebView进行聊天。
这在API> = 19中完全正常,但在API< = 18中无效。
仍会从其他设备收到聊天消息,但其他设备不会从API为18或更低的设备收到任何消息。 使用完全相同的代码。
我经常搜索并继续搜索。如果你有答案,任何我可以测试或可以将我重定向到相关信息的想法请分享。提前谢谢。
修改:
字符串中的JavaScript标记设置为小写(具有相同的问题): webView.loadUrl(“javascript:”+ javaScriptFunction);
答案 0 :(得分:3)
<强>解强>
我发现问题是JavaScript函数中发送的(编码)消息参数中包含换行符[ \ n ]。使用拆分功能 msg.split(&#34; \ n&#34;); 删除它使其工作。
答案 1 :(得分:1)
我无法确定这是导致您出现问题的原因,但请尝试使用
webView.loadUrl("javascript:" + theJavaScriptCode);
小写"javascript:"
。
API 19+并不关心loadUrl
中JavaScript协议的情况(尽管您可以在API 19+中使用evaluateJavascript()
),但API 18和down不会&# 39;除非用小写字母书写,否则不承认。