feat: 添加文件选择和相机拍照功能
主要功能: 1. 支持WebView中选择文件(任意类型) 2. 支持选择图片(相册+相机) 3. 支持直接调用相机拍照 4. 自动处理相机和存储权限请求 新增文件: - FileChooserHelper.java - 文件选择和相机功能核心工具类 - CameraHelper.java - 直接调用相机的JavaScript接口 - FileTestActivity.java - 文件选择测试Activity - file_paths.xml - FileProvider配置文件 - file_test.html - 功能测试页面(ES5语法兼容老版本) - INTEGRATION_GUIDE.md - 接入指南文档 - FILE_CHOOSER_USAGE.md - 详细使用文档 修改文件: - AndroidManifest.xml - 添加相机和存储权限,注册FileProvider和FileTestActivity - MainActivity.java - 集成FileChooserHelper,添加WebChromeClient支持文件选择 - menu_main.xml - 添加"文件测试"菜单项 - strings.xml - 添加相关字符串资源 技术特性: - 支持Android 9+(API 28+) - 适配Android 10+分区存储 - 适配Android 13+新媒体权限 - 权限授予后自动重新打开文件选择器 - 使用ES5语法兼容老版本WebView - 支持FileProvider安全文件共享 使用方式: 在WebView加载的HTML页面中使用标准input标签: <input type="file" accept="image/*" capture="environment"> 版本:2.15
This commit is contained in:
11
app/src/main/res/layout/activity_file_test.xml
Normal file
11
app/src/main/res/layout/activity_file_test.xml
Normal file
@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<WebView
|
||||
android:id="@+id/webViewFileTest"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent" />
|
||||
|
||||
</RelativeLayout>
|
||||
@ -14,4 +14,10 @@
|
||||
android:orderInCategory="100"
|
||||
app:showAsAction="never" />
|
||||
|
||||
<item
|
||||
android:id="@+id/action_file_test"
|
||||
android:title="@string/action_file_test"
|
||||
android:orderInCategory="100"
|
||||
app:showAsAction="never" />
|
||||
|
||||
</menu>
|
||||
@ -4,6 +4,8 @@
|
||||
<string name="title_activity_setting_network">网络设置界面</string>
|
||||
<string name="action_setting_voice">语音设置</string>
|
||||
<string name="title_activity_setting_voice">语音设置界面</string>
|
||||
<string name="action_file_test">文件测试</string>
|
||||
<string name="title_activity_file_test">文件选择测试</string>
|
||||
<string name="title_activity_main">主页</string>
|
||||
|
||||
<!-- 讯飞离线语音appid-->
|
||||
|
||||
7
app/src/main/res/xml/file_paths.xml
Normal file
7
app/src/main/res/xml/file_paths.xml
Normal file
@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<paths xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<external-path name="external_files" path="." />
|
||||
<external-cache-path name="external_cache" path="." />
|
||||
<cache-path name="cache" path="." />
|
||||
<files-path name="files" path="." />
|
||||
</paths>
|
||||
Reference in New Issue
Block a user