Coder Social home page Coder Social logo

leonhua / lfilepicker Goto Github PK

View Code? Open in Web Editor NEW
1.1K 26.0 212.0 3.27 MB

Android 检索手机目录方式的文件选择器,轻量且界面友好,定制性高。This is a lightweight file selector, it can select files by retrieve phone directory

Java 100.00%
android file filepicker

lfilepicker's Introduction


This is a lightweight file selector, it can select files by retrieve phone directory. At the same time contains:

  • A variety of interface style
  • Support file multiple-choice or radio
  • Support the file type filter
  • Support the fragments
  • custom title text and color
  • Internationalization (switch in both Chinese and English)
  • Maximum quantity limitation (withMaxNum)
  • All or all cancel
  • File size filtering
  • Default path specified

version update:

V1.8.0

V1.7.0

  • Adds an interface to specify the initial display path.
  • The added interface can filter the file size, larger than the specified size, or less than the specified size.

V1.6.0

  • Add folder path selection

V1.5.0

  • Select check to avoid duplication of data
  • Single mode does not show full selection operation

V1.4.0

  • Maximum quantity limitation
  • All or all cancel

Running effect:

dynamic effect(If the picture can't display properly, you can view the screenshot GIF files in the folder)

the page:

Quick to use

1. add reference

compile 'com.leon:lfilepickerlibrary:1.8.0'

2. add permission

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

3. open Activity

int REQUESTCODE_FROM_ACTIVITY = 1000;
new LFilePicker()
            .withActivity(MainActivity.this)
            .withRequestCode(REQUESTCODE_FROM_ACTIVITY)
             .withStartPath("/storage/emulated/0/Download")
             .withIsGreater(false)
             .withFileSize(500 * 1024)
            .start();

4. accept the results of the return

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (resultCode == RESULT_OK) {
        if (requestCode == REQUESTCODE_FROM_ACTIVITY) {
           //If it is a file selection mode, you need to get the path collection of all the files selected
            //List<String> list = data.getStringArrayListExtra(Constant.RESULT_INFO);//Constant.RESULT_INFO == "paths"
            List<String> list = data.getStringArrayListExtra("paths");
            Toast.makeText(getApplicationContext(), "selected " + list.size() , Toast.LENGTH_SHORT).show();
            //If it is a folder selection mode, you need to get the folder path of your choice
            String path = data.getStringExtra("path");
            Toast.makeText(getApplicationContext(), "The selected path is:" + path, Toast.LENGTH_SHORT).show();
        }
    }
}

Interface methods

method statement

method statement
withActivity(Activity activity) bind Activity
withFragment(Fragment fragment) bind Fragment
withSupportFragment(Fragment supportFragment) bind V4 Fragment
withRequestCode(int requestCode) set the request code
withTitle(String title) Set the title
withTitleColor(String color) Set the title color
withBackgroundColor(String color) Set the title background color
withIconStyle(int style) set the list icon style
withBackIcon(int backStyle) set back icon style
withFileFilter(String[] arrs) set the file type filter
withMutilyMode(boolean isMutily) setting a multiple-choice or radio mode
withAddText(String text) set the multiselect mode selected text
withNotFoundBooks(String text) Set the prompt information when no file selected
withMaxNum(int num) Set the max number of files
withChooseMode(boolean chooseMode) Set the folder selection mode, true (default) to select file, false to select folder
withStartPath(String path) Set the initial display path
withIsGreater(boolean isGreater) Set the filter mode,true(default) is greater than the specified size, or false less than the specified size
withFileSize(long size) Set the size of the specified filter file, and if it is 500K, enter 500*1024

Provide style

withIconStyle(int style) Value model:

  • Constant.ICON_STYLE_YELLOW
  • Constant.ICON_STYLE_BLUE
  • Constant.ICON_STYLE_GREEN

withBackIcon(int backStyle) Value model:

  • Constant.BACKICON_STYLEONE
  • Constant.BACKICON_STYLETWO
  • Constant.BACKICON_STYLETHREE

withFileFilter(String[] arrs) Value model:

 withFileFilter(new String[]{".txt", ".png", ".docx"})

Thanks


If the library is useful to you, welcome to star or fork! Welcome to visit [blog] 3 for more articles.

License

Copyright (C) 2017 leonHua

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

lfilepicker's People

Contributors

275873859 avatar leonhua avatar moeshin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

lfilepicker's Issues

请问选择文件后能加提示信息吗?

我是做上传功能时,想在点击文件后加一个对话框,提示是否上传,是否可以呢?不行的话我只能在跳转回我自己的App时再提示,这样有点不对劲。谢谢

1.8.0 使用发现的两个小问题

1,withTitle("xxx") 无效,原因LFilePickerActivity 中调用 mToolbar.setTitle() 在 setSupportActionBar(mToolbar) 之后调用导致的。
2,withBackIcon()无效,原因是 LFilePickerActivity 中注掉了 mToolbar.setNavigationIcon() 方法的调用

过滤文件大小

比如我希望显示所有TXT文件且大于500kb的文件,希望可以增加一个配置接口。这个文件大小可以配置。

不能支持AndroidX

我的项目使用AndroidX,这个库仍然使用旧的support library,运行会crash

引入LFilePicker后,应用名字被修改为LFilePicker...

如题,即使在项目的AndroidManifest.xml文件下,在节点添加tools:replace="android:label",app运行起来后,app的名字还是为LFilePicker...,初步查找发现是这个库AndroidManifest.xml文件下节点也添加了tools:replace="android:label",导致gradle合并清单文件有冲突,暂未找到可行的解决办法

app应用名称被修改

为什么使用你的这个库后,app的名称都被修改了,有什么办法改回我自己的吗?谢谢!

github保存的代码似乎不是最新的?

在代码里versionCode 1 versionName "1.0",当前版本已经1.8.当然这并不是什么问题。真正的问题是我下载了这个项目并用as编译,项目生成的apk运行无异常;但是使用项目生成的aar作为本地lib给我的项目用,项目启动文件选择器时就崩溃了;使用公共仓库1.8版本没有这样的问题。
崩溃的错误代码如下

`08-25 00:00:55.410 24256-24256/com.yazii.mediainfocli W/System.err: Application uncaught exception in thread "main" java.lang.RuntimeException: Unable to start activity ComponentInfo{com.yazii.mediainfocli/com.leon.lfilepickerlibrary.ui.LFilePickerActivity}: android.view.InflateException: Binary XML file line #62: Binary XML file line #62: Error inflating class com.leon.lfilepickerlibrary.widget.EmptyRecyclerView
08-25 00:00:55.411 24256-24256/com.yazii.mediainfocli W/System.err: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2594)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2654)
at android.app.ActivityThread.access$900(ActivityThread.java:173)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1431)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:171)
at android.app.ActivityThread.main(ActivityThread.java:5731)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:732)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:622)
Caused by: android.view.InflateException: Binary XML file line #62: Binary XML file line #62: Error inflating class com.leon.lfilepickerlibrary.widget.EmptyRecyclerView
at android.view.LayoutInflater.inflate(LayoutInflater.java:539)
at android.view.LayoutInflater.inflate(LayoutInflater.java:423)
at android.view.LayoutInflater.inflate(LayoutInflater.java:374)
at android.support.v7.app.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:467)
at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
at com.leon.lfilepickerlibrary.ui.LFilePickerActivity.onCreate(LFilePickerActivity.java:54)
at android.app.Activity.performCreate(Activity.java:6320)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1121)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2547)
... 9 more
Caused by: android.view.InflateException: Binary XML file line #62: Error inflating class com.leon.lfilepickerlibrary.widget.EmptyRecyclerView
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:776)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:835)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798)
at android.view.LayoutInflater.inflate(LayoutInflater.java:515)
... 17 more
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.leon.lfilepickerlibrary.widget.EmptyRecyclerView" on path: DexPathList[[zip file "/data/app/com.yazii.mediainfocli-1/base.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_dependencies_apk.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_slice_0_apk.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_slice_1_apk.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_slice_2_apk.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_slice_3_apk.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_slice_4_apk.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_slice_5_apk.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_slice_6_apk.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_slice_7_apk.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_slice_8_apk.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_slice_9_apk.apk"],nativeLibraryDirectories=[/data/app/com.yazii.mediainfocli-1/lib/arm64, /vendor/lib64, /system/lib64]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
at android.view.LayoutInflater.createView(LayoutInflater.java:583)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:764)
... 21 more
Suppressed: java.lang.NoClassDefFoundError: com.leon.lfilepickerlibrary.widget.EmptyRecyclerView
08-25 00:00:55.412 24256-24256/com.yazii.mediainfocli W/System.err: at dalvik.system.DexFile.defineClassNative(Native Method)
at dalvik.system.DexFile.defineClass(DexFile.java:226)
at dalvik.system.DexFile.loadClassBinaryName(DexFile.java:219)
at dalvik.system.DexPathList.findClass(DexPathList.java:338)
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:54)
... 25 more
Suppressed: java.lang.ClassNotFoundException: com.leon.lfilepickerlibrary.widget.EmptyRecyclerView
at java.lang.Class.classForName(Native Method)
at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
... 24 more
Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack trace available

--------- beginning of crash

08-25 00:00:55.412 24256-24256/com.yazii.mediainfocli E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.yazii.mediainfocli, PID: 24256
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.yazii.mediainfocli/com.leon.lfilepickerlibrary.ui.LFilePickerActivity}: android.view.InflateException: Binary XML file line #62: Binary XML file line #62: Error inflating class com.leon.lfilepickerlibrary.widget.EmptyRecyclerView
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2594)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2654)
at android.app.ActivityThread.access$900(ActivityThread.java:173)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1431)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:171)
at android.app.ActivityThread.main(ActivityThread.java:5731)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:732)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:622)
Caused by: android.view.InflateException: Binary XML file line #62: Binary XML file line #62: Error inflating class com.leon.lfilepickerlibrary.widget.EmptyRecyclerView
at android.view.LayoutInflater.inflate(LayoutInflater.java:539)
at android.view.LayoutInflater.inflate(LayoutInflater.java:423)
at android.view.LayoutInflater.inflate(LayoutInflater.java:374)
at android.support.v7.app.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:467)
at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
at com.leon.lfilepickerlibrary.ui.LFilePickerActivity.onCreate(LFilePickerActivity.java:54)
at android.app.Activity.performCreate(Activity.java:6320)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1121)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2547)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2654) 
at android.app.ActivityThread.access$900(ActivityThread.java:173) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1431) 
at android.os.Handler.dispatchMessage(Handler.java:102) 
at android.os.Looper.loop(Looper.java:171) 
at android.app.ActivityThread.main(ActivityThread.java:5731) 
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:732) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:622) 
Caused by: android.view.InflateException: Binary XML file line #62: Error inflating class com.leon.lfilepickerlibrary.widget.EmptyRecyclerView
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:776)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:835)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798)
at android.view.LayoutInflater.inflate(LayoutInflater.java:515)
at android.view.LayoutInflater.inflate(LayoutInflater.java:423) 
at android.view.LayoutInflater.inflate(LayoutInflater.java:374) 
at android.support.v7.app.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:467) 
at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140) 
at com.leon.lfilepickerlibrary.ui.LFilePickerActivity.onCreate(LFilePickerActivity.java:54) 
at android.app.Activity.performCreate(Activity.java:6320) 
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1121) 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2547) 
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2654) 
at android.app.ActivityThread.access$900(ActivityThread.java:173) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1431) 
at android.os.Handler.dispatchMessage(Handler.java:102) 
at android.os.Looper.loop(Looper.java:171) 
at android.app.ActivityThread.main(ActivityThread.java:5731) 
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:732) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:622) 
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.leon.lfilepickerlibrary.widget.EmptyRecyclerView" on path: DexPathList[[zip file "/data/app/com.yazii.mediainfocli-1/base.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_dependencies_apk.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_slice_0_apk.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_slice_1_apk.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_slice_2_apk.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_slice_3_apk.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_slice_4_apk.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_slice_5_apk.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_slice_6_apk.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_slice_7_apk.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_slice_8_apk.apk", zip file "/data/app/com.yazii.mediainfocli-1/split_lib_slice_9_apk.apk"],nativeLibraryDirectories=[/data/app/com.yazii.mediainfocli-1/lib/arm64, /vendor/lib64, /system/lib64]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
at android.view.LayoutInflater.createView(LayoutInflater.java:583)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:764)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704) 
at android.view.LayoutInflater.rInflate(LayoutInflater.java:835) 
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798) 
at android.view.LayoutInflater.inflate(LayoutInflater.java:515) 
at android.view.LayoutInflater.inflate(LayoutInflater.java:423) 
at android.view.LayoutInflater.inflate(LayoutInflater.java:374) 
at android.support.v7.app.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:467) 
at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140) 
at com.leon.lfilepickerlibrary.ui.LFilePickerActivity.onCreate(LFilePickerActivity.java:54) 
at android.app.Activity.performCreate(Activity.java:6320) 
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1121) 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2547) 
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2654) 
at android.app.ActivityThread.access$900(ActivityThread.java:173) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1431) 
at android.os.Handler.dispatchMessage(Handler.java:102) 
at android.os.Looper.loop(Looper.java:171) 
at android.app.ActivityThread.main(ActivityThread.java:5731) 
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:732) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:622) 
Suppressed: java.lang.NoClassDefFoundError: com.leon.lfilepickerlibrary.widget.EmptyRecyclerView
at dalvik.system.DexFile.defineClassNative(Native Method)
at dalvik.system.DexFile.defineClass`

1.7.0版本有一个问题。

选择文件时,选择九个以上时,会弹出选择超出数量,为什么不直接限制它的数量?让他在选择九个后,第十个选择不了呢?能否把这里改一下。

app_name

兄弟你会打包到远程库么,你就不能把你设置的string里面的清一清

toast消息

未选择文件点击选中的Toast的内容修改一下,后者写个接口自行修改

可以做到动态筛选文件吗

现在想在选择器布局中添加一个下拉菜单,里边内容是各种文件后缀,来作为动态过滤的条件。想问下用这个文件选择器好实现不

FileProvider 可配置

android.support.v4.content.FileProvider 可以自己配置就好了,直接使用和现在的FileProvider冲突

获取文件失败

在onActivityResult中,条用data.getStringArrayExtra(Constant.RESULT_INFO) 为空
Caused by: java.lang.NullPointerException: Attempt to get length of null array
at tonda.tdledwizard.ui.UpdateFragment.onActivityResult(UpdateFragment.kt:209)
at android.support.v4.app.FragmentActivity.onActivityResult(FragmentActivity.java:175)
at android.app.Activity.dispatchActivityResult(Activity.java:6192)
at android.app.ActivityThread.deliverResults(ActivityThread.java:3570)
at android.app.ActivityThread.handleSendResult(ActivityThread.java:3617) 
at android.app.ActivityThread.access$1300(ActivityThread.java:151) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1352) 
at android.os.Handler.dispatchMessage(Handler.java:102) 
at android.os.Looper.loop(Looper.java:135) 
at android.app.ActivityThread.main(ActivityThread.java:5258) 
at java.lang.reflect.Method.invoke(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:372) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) 

java.lang.RuntimeException: Parcelable encountered IOException reading a Serializable object (name = com.leon.lfilepickerlibrary.model.ParamEntity)

升级Lib后,经常出现以下错误:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.sun.beizikeji.ota/com.leon.lfilepickerlibrary.ui.LFilePickerActivity}: java.lang.RuntimeException: Parcelable encountered IOException reading a Serializable object (name = com.leon.lfilepickerlibrary.model.ParamEntity)

  1. android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2767)
  2. android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2853)
  3. android.app.ActivityThread.-wrap12(ActivityThread.java)
  4. android.app.ActivityThread$H.handleMessage(ActivityThread.java:1557)
  5. android.os.Handler.dispatchMessage(Handler.java:102)
  6. android.os.Looper.loop(Looper.java:154)
  7. android.app.ActivityThread.main(ActivityThread.java:6369)
  8. java.lang.reflect.Method.invoke(Native Method)
  9. com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
  10. com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)

希望核实解决下~

MultiDex (Multiple dex files define) Error

Hello, I'm using AndroidUtilCode seperatly in my project and also using MultiDex option. When add your library in my project, Then i got 'MultiDex: Multiple dex files define Lcom/Blankj/utilcode/util/LogUtils' !

空指针问题 进来看一下

java.lang.IndexOutOfBoundsException: Invalid index 6, size is 0
atjava.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:255)
atjava.util.Arrays$ArrayList.get(Arrays.java:66)
atcom.leon.lfilepickerlibrary.ui.LFilePickerActivity$3.click(LFilePickerActivity.java)
atcom.leon.lfilepickerlibrary.adapter.PathAdapter$1.onClick(PathAdapter.java)
atandroid.view.View.performClick(View.java:4457)
atandroid.view.View$PerformClick.run(View.java:18496)
atandroid.os.Handler.handleCallback(Handler.java:733)
atandroid.os.Handler.dispatchMessage(Handler.java:95)
atandroid.os.Looper.loop(Looper.java:136)
atandroid.app.ActivityThread.main(ActivityThread.java:5291)
atjava.lang.reflect.Method.invokeNative(Native Method)
atjava.lang.reflect.Method.invoke(Method.java:515)
atcom.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:849)
atcom.android.internal.os.ZygoteInit.main(ZygoteInit.java:665)
atdalvik.system.NativeStart.main(Native Method)

出现JNI异常

image
image
我手机里有这个文件 但是无法手动删除 用电脑打开资源管理找不到这个文件
直接用手机文件浏览器浏览是有的 但是文件大小是0kb 点击提示文件不存在
无法对文件进行操作

应用名覆盖问题

你好,我在导入这个库之后,原来的应用名就会被你这个库的应用名覆盖,请问有什么解决办法吗?

A TaskDescription's primary color should be opaque

java.lang.RuntimeException: Unable to start activity ComponentInfo{a21theone.tbm/com.leon.lfilepickerlibrary.ui.LFilePickerActivity}: java.lang.RuntimeException: A TaskDescription's primary color should be opaque
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2678)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2747)
at android.app.ActivityThread.access$900(ActivityThread.java:187)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1585)
at android.os.Handler.dispatchMessage(Handler.java:111)
at android.os.Looper.loop(Looper.java:194)
at android.app.ActivityThread.main(ActivityThread.java:5879)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1119)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:885)
Caused by: java.lang.RuntimeException: A TaskDescription's primary color should be opaque
at android.app.ActivityManager$TaskDescription.(ActivityManager.java:555)
at android.app.Activity.onApplyThemeResource(Activity.java:3767)
at android.view.ContextThemeWrapper.initializeTheme(ContextThemeWrapper.java:140)
at android.view.ContextThemeWrapper.setTheme(ContextThemeWrapper.java:85)
at android.support.v7.app.AppCompatActivity.setTheme(AppCompatActivity.java:90)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2624)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2747) 
at android.app.ActivityThread.access$900(ActivityThread.java:187) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1585) 
at android.os.Handler.dispatchMessage(Handler.java:111) 
at android.os.Looper.loop(Looper.java:194) 
at android.app.ActivityThread.main(ActivityThread.java:5879) 
at java.lang.reflect.Method.invoke(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:372) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1119) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:885) 

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.