android开发学习日志(其二)
学了几天安卓开发基础感觉很好,于是基于webview开发了个简易的音乐播放器。这里记录下一些我认为的要点:
1、webview可以挂载线上网站页面也可以挂本地html,只要在项目根路径创建assets目录下,再把网页相关的资源放进去就可以访问,例如:webview.loadUrl("file:///android_asset/你的网页.html")。
2、网页要支持js需要设置webview.settings.javaScriptEnabled=true。
3、安卓webview使用的谷歌内核,遵循同源策略(不允许跨域请求),发普通http(非https)请求需要在AndroidManifest.xml配置 android:usesCleartextTraffic="true"。
4、文件上传采用input type="file"标签的话需要在webChromeClient中复写onShowFileChooser方法并处理文件activity回调。
5、安卓13开始读取MP3这类媒体文件除了在AndroidManifest.xml中申请android.permission.READ_EXTERNAL_STORAGE外部存储读取权限还需要申请android.permission.READ_MEDIA_AUDIO权限,并且弹窗提醒用户去设置里允许媒体读写权限否则只能读到公共文件夹读不到里面的文件列表。
6、webview的audio标签src可以直接使用/storage/emulated/0/Download/这种路径读取本地文件,前提是满足了第五步的权限申请处理。
7、使用webview.addJavascriptInterface配合@JavascriptInterface注解可以暴露安卓内部的方法给webview的js直接调用,实现js桥。
以上。
更多>>