# FilePickerSDK **Repository Path**: Ser/FilePickerSDK ## Basic Information - **Project Name**: FilePickerSDK - **Description**: 文件管理器 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2021-08-05 - **Last Updated**: 2021-08-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Android文件选择器 # # 1.快速接入 # ## 1.1远程依赖 ## ①在项目 build.gradle 配置文件添加仓库: allprojects { repositories { // ... jcenter() 等其他仓库 maven { url 'https://jitpack.io' } } } ②在子模块(app)的配置文件添加依赖: dependencies { // 添加下面的内容 implementation 'com.gitee.ddgameshop:FilePickerSDK:v1.0.0' implementation "androidx.recyclerview:recyclerview:1.1.0" // ... 其他依赖项 } ## 1.2本地依赖 ## ①将 XHFilePickerSDKv1.0.0.aar 包放在您的应用工程的 libs 目录下 ![locallib1](https://gitee.com/ddgameshop/FilePickerSDK/raw/master/screenshots/locallib1.png) ②在主项目的 build.gradle 中,添加下面的内容,将 libs 目录作为依赖仓库。 ![locallib2](https://gitee.com/ddgameshop/FilePickerSDK/raw/master/screenshots/locallib2.png) allprojects { repositories { // 添加下面的内容 flatDir { dirs 'libs' } // ... jcenter() 等其他仓库 } } ③在您 App Module 的 build.gradle 中,添加下面的内容,将识别 SDK 作为项目依赖。 ![locallib3](https://gitee.com/ddgameshop/FilePickerSDK/raw/master/screenshots/locallib3.png) dependencies { // 添加下面的内容 implementation (name: 'XHFilePickerSDKv1.0.0', ext: 'aar') implementation "androidx.recyclerview:recyclerview:1.1.0" // ... 其他依赖项 } # 2.调用说明 # ## 2.1调用方式 ## XHFilePicker.from(this) .addConfigBuilder() .setRootDirectory(Environment.getExternalStorageDirectory().toString()) .selectMultipleFiles(true) .selectMaxNum(9) .setFilters(new String[]{"png", "jpg", "jpeg"}) .showHiddenFiles(false) .addItemDivider(false) .showOnlyDirectory(false) .build() .forResult(100); 在onActivityResult 中接收结果 @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (data != null && resultCode == Activity.RESULT_OK) { //单选取第一个,例如:pathList.get(0) List pathList = data.getStringArrayListExtra(XHFilePicker.RESULT_DATA); } } ## 2.2方法说明 ## | 方法 | 描述 | 默认值 | |------------------------------|-----------------------------------------------------------------|---------------------------------| | from(Activity) | 绑定Activity | 无 | | from(Fragment) | 绑定Fragment | 无 | | forResult(int) | 设置请求码,并且启动文件选择器 | 无 | | setRootDirectory(String) | 设置根目录 | SD卡根目录: /storage/emulated/0 | | selectMultipleFiles(boolean) | 设置多选或单选 | 单选: false | | selectMaxNum(int) | 设置多选最多选择数 | 无 | | setFilters(String[]) | 设置需要显示的文件类型,例如: new String[]{"png", "jpg", "jpeg"} | 无 | | showHiddenFiles(boolean) | 设置显示隐藏目录和文件 | 不显示: false | | addItemDivider(boolean) | 设置显示Item分割线 | 不显示: false | | showOnlyDirectory(boolean) | 设置只显示目录,传true会忽略多选配置,只能单选 | 显示目录和文件: false | # 常见问题 # ### Q:build工程,报错 Could not find :XHFilePickerSDKv1.0.0 ### A:检查项目是否在指定位置上添加flatDir {dirs 'libs'},可参考[快速接入本地依赖②](#12本地依赖)。 ### Q:build工程,报错Didn't find class "androidx.recyclerview.widget.RecyclerView" ### A:检查项目是否在指定位置上添加implementation "androidx.recyclerview:recyclerview:1.1.0",可参考[快速接入远程依赖②](#11本地依赖)。 ### Q:调用报错 Didn't find class "androidx.appcompat.app.AppCompatActivity" ### A:暂不支持使用support库的项目。 ### Q:项目启用代码混淆,需要添加怎样的混淆规则 ### A:无需添加任何混淆规则(内部自带混淆规则)。 # DEMO APK # ![demoapk](https://gitee.com/ddgameshop/FilePickerSDK/raw/master/screenshots/demoapk_qrcode.png)