├── app ├── .gitignore ├── src │ └── main │ │ ├── res │ │ ├── values │ │ │ ├── strings.xml │ │ │ ├── colors.xml │ │ │ └── styles.xml │ │ ├── drawable-hdpi │ │ │ ├── ic_diy_yp.png │ │ │ └── ic_my_txt.png │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ ├── xml │ │ │ └── file_manage_paths.xml │ │ └── layout │ │ │ ├── layout_result_txt.xml │ │ │ ├── activity_java_sample.xml │ │ │ ├── fragment_blank.xml │ │ │ ├── activity_fragment_sample.xml │ │ │ ├── activity_main.xml │ │ │ ├── item_dialog_super.xml │ │ │ └── dialog_super.xml │ │ ├── java │ │ └── com │ │ │ └── kathline │ │ │ └── demo │ │ │ ├── content │ │ │ ├── Content.java │ │ │ └── App.java │ │ │ ├── diy │ │ │ ├── MyTxtType.java │ │ │ ├── MyFileTypeListener.java │ │ │ └── MyFileImageListener.java │ │ │ ├── FragmentSampleActivity.java │ │ │ ├── SuperAdapter.java │ │ │ ├── BlankFragment.java │ │ │ ├── MainActivity.java │ │ │ ├── JavaSampleActivity.java │ │ │ └── SuperDialog.java │ │ └── AndroidManifest.xml ├── proguard-rules.pro └── build.gradle ├── filePicker ├── .gitignore ├── consumer-rules.pro ├── src │ └── main │ │ ├── res │ │ ├── drawable-hdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_zfile_pdf.png │ │ │ ├── ic_zfile_ppt.png │ │ │ ├── ic_zfile_txt.png │ │ │ ├── ic_zfile_zip.png │ │ │ ├── ic_zfile_audio.png │ │ │ ├── ic_zfile_empty.png │ │ │ ├── ic_zfile_excel.png │ │ │ ├── ic_zfile_folder.png │ │ │ ├── ic_zfile_other.png │ │ │ ├── ic_zfile_quan.png │ │ │ ├── ic_zfile_word.png │ │ │ ├── ic_zfile_aduio_pause.png │ │ │ ├── ic_zfile_audio_play.png │ │ │ └── ic_zfile_right_back.png │ │ ├── drawable │ │ │ ├── zfile_dialog_shape.xml │ │ │ ├── zfile_down.xml │ │ │ ├── zfile_ripple_bg.xml │ │ │ ├── zfile_close.xml │ │ │ ├── zfile_checkbox_seletor.xml │ │ │ ├── zfile_back.xml │ │ │ ├── zfile_quan3.xml │ │ │ └── zfile_quan2.xml │ │ ├── values │ │ │ ├── dimen.xml │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── style.xml │ │ ├── anim │ │ │ ├── zfile_in_bottom.xml │ │ │ └── zfile_out_bottom.xml │ │ ├── menu │ │ │ ├── zfile_qw_menu.xml │ │ │ └── zfile_list_menu.xml │ │ ├── layout │ │ │ ├── activity_zfile_pic.xml │ │ │ ├── item_zfile_path.xml │ │ │ ├── activity_zfile_video_play.xml │ │ │ ├── fragment_zfile_qw.xml │ │ │ ├── item_zfile_list_folder.xml │ │ │ ├── activity_zfile_qw.xml │ │ │ ├── dialog_zfile_rename.xml │ │ │ ├── dialog_zfile_audio_play.xml │ │ │ ├── dialog_zfile_select_folder.xml │ │ │ ├── activity_zfile_list.xml │ │ │ ├── item_zfile_list_file.xml │ │ │ └── dialog_zfile_sort.xml │ │ └── xml │ │ │ └── file_paths.xml │ │ ├── java │ │ └── com │ │ │ └── kathline │ │ │ └── library │ │ │ ├── Function1.java │ │ │ ├── FileProvider.java │ │ │ ├── Function2.java │ │ │ ├── Function3.java │ │ │ ├── ui │ │ │ ├── ProxyListener.java │ │ │ ├── adapter │ │ │ │ └── ZFilePathAdapter.java │ │ │ ├── ZFilePicActivity.java │ │ │ ├── player │ │ │ │ ├── BaseMediaPlayer.java │ │ │ │ ├── IMediaPlayer.java │ │ │ │ └── ScaleTextureView.java │ │ │ ├── ZFileVideoPlayActivity.java │ │ │ ├── ProxyFragment.java │ │ │ ├── dialog │ │ │ │ ├── ZFileRenameDialog.java │ │ │ │ └── ZFileSortDialog.java │ │ │ └── ZFileQWFragment.java │ │ │ ├── Function.java │ │ │ ├── type │ │ │ ├── VideoType.java │ │ │ ├── ImageType.java │ │ │ ├── PdfType.java │ │ │ ├── PptType.java │ │ │ ├── TxtType.java │ │ │ ├── WordType.java │ │ │ ├── XlsType.java │ │ │ ├── ZipType.java │ │ │ ├── AudioType.java │ │ │ ├── OtherType.java │ │ │ └── ApkType.java │ │ │ ├── content │ │ │ ├── ZFileQWBean.java │ │ │ ├── ZFilePathBean.java │ │ │ ├── ZFileInfoBean.java │ │ │ └── ZFileBean.java │ │ │ ├── common │ │ │ ├── ZFileActivity.java │ │ │ ├── ZFileType.java │ │ │ ├── ZFileFragment.java │ │ │ ├── ZFileTypeManage.java │ │ │ ├── ZFileManageDialog.java │ │ │ ├── ZFileViewHolder.java │ │ │ ├── ZFileCommonDialog.java │ │ │ └── ZFileAdapter.java │ │ │ ├── util │ │ │ ├── ZFileHelp.java │ │ │ ├── ZFileLog.java │ │ │ ├── ZFileOpenUtil.java │ │ │ └── ZFileOtherUtil.java │ │ │ ├── listener │ │ │ ├── ZFileFilter.java │ │ │ ├── ZFileQWFilter.java │ │ │ └── ZFileDefaultLoadListener.java │ │ │ └── async │ │ │ ├── ZFileThread.java │ │ │ ├── ZFileAsync.java │ │ │ ├── ZFileQWAsync.java │ │ │ └── ZFileAsyncImpl.java │ │ └── AndroidManifest.xml ├── proguard-rules.pro └── build.gradle ├── settings.gradle ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── .gitignore ├── gradle.properties ├── gradlew.bat ├── bintray.gradle ├── gradlew └── mavencentral.gradle /app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /filePicker/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /filePicker/consumer-rules.pro: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | include ':filePicker' 2 | include ':app' 3 | rootProject.name = "FilePicker" -------------------------------------------------------------------------------- /app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 文件管理器 3 | 4 | 5 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/ic_diy_yp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/app/src/main/res/drawable-hdpi/ic_diy_yp.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/ic_my_txt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/app/src/main/res/drawable-hdpi/ic_my_txt.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /filePicker/src/main/res/drawable-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/filePicker/src/main/res/drawable-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /filePicker/src/main/res/drawable-hdpi/ic_zfile_pdf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/filePicker/src/main/res/drawable-hdpi/ic_zfile_pdf.png -------------------------------------------------------------------------------- /filePicker/src/main/res/drawable-hdpi/ic_zfile_ppt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/filePicker/src/main/res/drawable-hdpi/ic_zfile_ppt.png -------------------------------------------------------------------------------- /filePicker/src/main/res/drawable-hdpi/ic_zfile_txt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/filePicker/src/main/res/drawable-hdpi/ic_zfile_txt.png -------------------------------------------------------------------------------- /filePicker/src/main/res/drawable-hdpi/ic_zfile_zip.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/filePicker/src/main/res/drawable-hdpi/ic_zfile_zip.png -------------------------------------------------------------------------------- /filePicker/src/main/java/com/kathline/library/Function1.java: -------------------------------------------------------------------------------- 1 | package com.kathline.library; 2 | 3 | public interface Function1 { 4 | 5 | void invoke(); 6 | 7 | } 8 | -------------------------------------------------------------------------------- /filePicker/src/main/res/drawable-hdpi/ic_zfile_audio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/filePicker/src/main/res/drawable-hdpi/ic_zfile_audio.png -------------------------------------------------------------------------------- /filePicker/src/main/res/drawable-hdpi/ic_zfile_empty.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/filePicker/src/main/res/drawable-hdpi/ic_zfile_empty.png -------------------------------------------------------------------------------- /filePicker/src/main/res/drawable-hdpi/ic_zfile_excel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/filePicker/src/main/res/drawable-hdpi/ic_zfile_excel.png -------------------------------------------------------------------------------- /filePicker/src/main/res/drawable-hdpi/ic_zfile_folder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/filePicker/src/main/res/drawable-hdpi/ic_zfile_folder.png -------------------------------------------------------------------------------- /filePicker/src/main/res/drawable-hdpi/ic_zfile_other.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/filePicker/src/main/res/drawable-hdpi/ic_zfile_other.png -------------------------------------------------------------------------------- /filePicker/src/main/res/drawable-hdpi/ic_zfile_quan.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/filePicker/src/main/res/drawable-hdpi/ic_zfile_quan.png -------------------------------------------------------------------------------- /filePicker/src/main/res/drawable-hdpi/ic_zfile_word.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/filePicker/src/main/res/drawable-hdpi/ic_zfile_word.png -------------------------------------------------------------------------------- /app/src/main/res/xml/file_manage_paths.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | -------------------------------------------------------------------------------- /filePicker/src/main/java/com/kathline/library/FileProvider.java: -------------------------------------------------------------------------------- 1 | package com.kathline.library; 2 | 3 | public class FileProvider extends androidx.core.content.FileProvider { 4 | } 5 | -------------------------------------------------------------------------------- /filePicker/src/main/res/drawable-hdpi/ic_zfile_aduio_pause.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/filePicker/src/main/res/drawable-hdpi/ic_zfile_aduio_pause.png -------------------------------------------------------------------------------- /filePicker/src/main/res/drawable-hdpi/ic_zfile_audio_play.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/filePicker/src/main/res/drawable-hdpi/ic_zfile_audio_play.png -------------------------------------------------------------------------------- /filePicker/src/main/res/drawable-hdpi/ic_zfile_right_back.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncKathline/FilePicker/HEAD/filePicker/src/main/res/drawable-hdpi/ic_zfile_right_back.png -------------------------------------------------------------------------------- /app/src/main/java/com/kathline/demo/content/Content.java: -------------------------------------------------------------------------------- 1 | package com.kathline.demo.content; 2 | 3 | public class Content { 4 | 5 | // public static final String APK = "apk"; 6 | 7 | } -------------------------------------------------------------------------------- /filePicker/src/main/java/com/kathline/library/Function2.java: -------------------------------------------------------------------------------- 1 | package com.kathline.library; 2 | 3 | public interface Function2 { 4 | 5 | void invoke(boolean isSuccess); 6 | 7 | } 8 | -------------------------------------------------------------------------------- /filePicker/src/main/java/com/kathline/library/Function3.java: -------------------------------------------------------------------------------- 1 | package com.kathline.library; 2 | 3 | public interface Function3 { 4 | 5 | void invoke(boolean isSuccess, String name); 6 | 7 | } 8 | -------------------------------------------------------------------------------- /filePicker/src/main/java/com/kathline/library/ui/ProxyListener.java: -------------------------------------------------------------------------------- 1 | package com.kathline.library.ui; 2 | 3 | import android.content.Intent; 4 | 5 | public interface ProxyListener { 6 | void onResult(int requestCode, int resultCode, Intent data); 7 | } 8 | -------------------------------------------------------------------------------- /app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #008577 4 | #00574B 5 | #D81B60 6 | 7 | -------------------------------------------------------------------------------- /filePicker/src/main/java/com/kathline/library/Function.java: -------------------------------------------------------------------------------- 1 | package com.kathline.library; 2 | 3 | import com.kathline.library.content.ZFileBean; 4 | 5 | import java.util.List; 6 | 7 | public interface Function { 8 | void invoke(List list); 9 | } 10 | -------------------------------------------------------------------------------- /filePicker/src/main/res/drawable/zfile_dialog_shape.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Thu May 23 22:41:35 CST 2019 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip 7 | -------------------------------------------------------------------------------- /filePicker/src/main/res/values/dimen.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10dp 5 | 15dp 6 | 5dp 7 | 8 | -------------------------------------------------------------------------------- /filePicker/src/main/res/anim/zfile_in_bottom.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 11 | -------------------------------------------------------------------------------- /filePicker/src/main/res/anim/zfile_out_bottom.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 11 | -------------------------------------------------------------------------------- /filePicker/src/main/res/drawable/zfile_down.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /filePicker/src/main/res/drawable/zfile_ripple_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /filePicker/src/main/res/menu/zfile_qw_menu.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 10 | 11 | -------------------------------------------------------------------------------- /app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /app/src/main/java/com/kathline/demo/diy/MyTxtType.java: -------------------------------------------------------------------------------- 1 | package com.kathline.demo.diy; 2 | 3 | import android.widget.ImageView; 4 | 5 | import com.kathline.demo.R; 6 | import com.kathline.library.type.TxtType; 7 | 8 | /** 9 | * 改变 txt 原本显示的图标 10 | */ 11 | public class MyTxtType extends TxtType { 12 | 13 | @Override 14 | public void loadingFile(String filePath, ImageView pic) { 15 | pic.setImageResource(R.drawable.ic_my_txt); 16 | } 17 | 18 | } -------------------------------------------------------------------------------- /filePicker/src/main/res/drawable/zfile_close.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /filePicker/src/main/res/drawable/zfile_checkbox_seletor.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/layout/layout_result_txt.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 11 | 12 | -------------------------------------------------------------------------------- /app/src/main/java/com/kathline/demo/content/App.java: -------------------------------------------------------------------------------- 1 | package com.kathline.demo.content; 2 | 3 | import android.app.Application; 4 | 5 | import com.kathline.demo.diy.MyFileImageListener; 6 | import com.kathline.demo.diy.MyFileTypeListener; 7 | import com.kathline.library.content.ZFileContent; 8 | 9 | public final class App extends Application { 10 | public void onCreate() { 11 | super.onCreate(); 12 | ZFileContent.getZFileHelp().init(new MyFileImageListener()).setFileTypeListener(new MyFileTypeListener()); 13 | } 14 | } -------------------------------------------------------------------------------- /filePicker/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #03A9F4 4 | #000000 5 | #666666 6 | #ffffff 7 | #2c832e 8 | #e01d07 9 | #bbbbb9 10 | #f2f2f2 11 | #f2f2f2 12 | -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_java_sample.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 |