安卓+X5内核+vue开发的app,安卓和h5之间如何通讯?
运行后h5的地址是:file:///android_asset/dist/index.html
安卓和h5通讯使用了@JavascriptInterface
注解,可直接在h5中调用app的方法。但是它只能传输基本类型(字符串,数字,Boolean)。图片或其他复杂的数据无法传输。
尝试过在app中运行了http服务器(NanoHTTPD),页面通过http请求回去文件,但是这种方式不能使用http://127.0.0.1
的地址。提示strict-origin-when-cross-origin
,加了Access-Control-Allow-Origin
请求头也不管用。
也尝试过把文件转为iso-8859-1
的字符串,但在js中没能转换回文件。
请问还有什么方式可以通讯?
如何传输文件?
安卓中为什么不能使用http://127.0.0.1
?
http服务器,文件转字符串
能传输基本类型(字符串,数字,Boolean)
图片或其他复杂的数据通过
编码
转成字符串
,接收方再对应解码
,就可以了不想自己整
编解码
,JSON 的库应该挺多的,图像转data uri
应该也有很多现成代码