Unable to get provider android.support.v4.content.FileProvider: java.lang.ClassNotFoundException:“问题
最新推荐文章于 2021-05-08 15:37:39 发布
blockbox
最新推荐文章于 2021-05-08 15:37:39 发布
最近公司一个Android项目代码很难继续在原来基础【外包代码】上修修补补了,于是决定全面重构一下,中间出了一个小插曲就是在用androidx替换原来support时报如下错:
Unable to get provider android.support.v4.content.FileProvider: java.lang.ClassNotFoundException: Didn’t find class “android.support.v4.content.FileProvider” on path: DexPathList[[zip file “/data/app/com.xxxx-2/base.apk”],nativeLibraryDirectories=[/data/app/comxxxx-2/lib/arm64, /vendor/lib64, /system/lib64]]
FATAL EXCEPTION: main
Process: xxx.xxxx.xxxx, PID: 12835
java.lang.RuntimeException: Unable to get provider android.support.v4.content.FileProvider: java.lang.ClassNotFoundException: Didn't find class "android.support.v4.content.FileProvider" on path: DexPathList[[zip file "/data/app/com.xxxx-2/base.apk"],nativeLibraryDirectories=[/data/app/com.xxxx-2/lib/arm64, /vendor/lib64, /system/lib64]]
at android.app.ActivityThread.installProvider(ActivityThread.java:5149)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:4727)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4667)
at android.app.ActivityThread.access$1600(ActivityThread.java:175)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1430)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5418)
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:1037)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:832)
Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.v4.content.FileProvider" on path: DexPathList[[zip file "/data/app/com.xxxx-2/base.apk"],nativeLibraryDirectories=[/data/app/com.xxxx-2/lib/arm64, /vendor/lib64, /system/lib64]]
其他的项目中早就替换为androidx了都记不清之前替换的时候都修改了啥,反正上一次是很顺利的很快就搞定了于跟老板说androidx替换support很easy的,结果出了这个小问题下午一直卡的第二天才逐个排查解决问题,所以这里记录一下。
问题根源是由于适配Android7.0文件权限中在manifest中provider中忘记修改的路径名导致的:
Android support包时provider的配置【主要是name】
<provider
android:name="android.support.v4.content.FileProvider"
android:authorities="apk-package-name.fileprovider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_paths" />
</provider>
使用Android androidx基础组件包时provider的正确配置
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="apk-package-name.fileprovider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_paths" />
</provider>
最后补充是还是自己开始就没有去仔细看错误分析一下,习惯性直接复制错误然后百度,结果浪费时间精力。总结是遇到问题应该先冷静下分析然后解决,一味靠baidu和google不仅不能提高还浪费时间精力,还有网上的解答只有极少的内容是有价值的,其他都是抄袭的垃圾。
Unable to get provider android.support.v4.content.FileProvider: java.lang.ClassNotFoundException:“问题
最近公司一个Android项目代码很难继续在原来基础【外包代码】上修修补补了,于是决定全面重构一下,中间出了一个小插曲就是在用androidx替换原来support时报如下错:FATAL EXCEPTION: main Process: com.poobo.peakecloud, PID: 12835 java.lang.RuntimeException: Unable to g...
照着第二版第一行代码敲的调用摄像头部分,因为编译器提示没有android.support.v4.content.fileprovider。就自己导了一个名字带provider的
android.provider.DocumentsProvider
报错信息如下:
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.cameraalbumtest, PID: 13140
java.lang.RuntimeExcep
在AndroidManifest.xml中加入下面这段话后,
<provider
android:name="android.support.v4.content.FileProvider"
android:authorities="com.boxin.forklift.fileprovider"
android:exp...
在新项目中已开始迁移到Androidx遇到Unable to get provider androidx.lifecycle.ProcessLifecycleOwnerInitializer错误,APP在安卓4.4上面启动奔溃,记录解决办法。参考原文
在安卓4.4中,这是一个dex问题。解决办法是
1、在app.gradle中,defaultconfig内启用multidex
defaultCo...
这个异常通常表示在运行时找不到指定的类。在你的情况下,这个异常是由于找不到 com.alibaba.fastjson2.support.AwtRederModule 类而引起的。
要解决这个问题,你可以尝试以下几个步骤:
1. 确保你的项目中包含了 fastjson 依赖。你可以在项目的 pom.xml(如果是 Maven 项目)或者 build.gradle(如果是 Gradle 项目)文件中添加 fastjson 的依赖项。
2. 检查 fastjson 的版本是否正确。确保你使用的 fastjson 版本与 AwtRederModule 类兼容。有时候,版本冲突可能会导致类找不到的异常。
3. 如果你已经添加了正确的依赖并且版本也正确,但仍然出现这个异常,那么可能是由于编译器没有正确地将相关的类编译到输出目录中。你可以尝试清理并重新构建你的项目,以确保所有的类都被正确地编译和打包。
如果你仍然无法解决这个问题,建议提供更多的上下文信息,例如你正在使用的开发环境、项目结构、相关代码片段等,以便更好地帮助你解决这个问题。
Unable to get provider android.support.v4.content.FileProvider: java.lang.ClassNotFoundException:“问题
Unable to get provider android.support.v4.content.FileProvider: java.lang.ClassNotFoundException:“问题
m0_56735256:
Java中ReentrantLock的使用
Java中ReentrantLock的使用
weixin_45822867: