AndroidUtilCode
AndroidUtilCode copied to clipboard
utilcode:1.30.6或1.31.1引入后启动应用就会在”SD卡/Android/media/“路径下创建对应包名的文件夹,未授权存储权限的情况下存在调用外部SD卡的读写权限的情况
utilcode:1.30.6或1.31.1引入后启动应用就会在”SD卡/Android/media/“路径下创建对应包名的文件夹,未授权存储权限的情况下存在调用外部SD卡的读写权限的情况
在启动应用未调用任何初始化代码,也会触发创建文件夹得操作。
- AndroidUtilCode 的版本:utilcode:1.30.6和1.31.1
- 出现 Bug 的设备型号:所有设备
- 设备的 Android 版本:所有版本
未调用初始化代码,只是引入到项目中
implementation ('com.blankj:utilcodex:1.31.1')
异常详情
{"mkdir": "/storage/emulated/0/Android/media"}
异常堆栈
java.io.File.mkdir(File.java:1380)
java.io.File.mkdirs(File.java:1429)
java.io.File.mkdirs(File.java:1428)
android.app.ContextImpl.ensureExternalDirsExistOrFilter(ContextImpl.java:2464)
android.app.ContextImpl.getExternalMediaDirs(ContextImpl.java:694)
android.content.ContextWrapper.getExternalMediaDirs(ContextWrapper.java:287)
androidx.core.content.FileProvider.parsePathStrategy(FileProvider.java:28)
androidx.core.content.FileProvider.getPathStrategy(FileProvider.java:3)
androidx.core.content.FileProvider.attachInfo(FileProvider.java:4)
android.app.ActivityThread.installProvider(ActivityThread.java:6583)
android.app.ActivityThread.installContentProviders(ActivityThread.java:6149)
android.app.ActivityThread.handleBindApplication(ActivityThread.java:6066)
android.app.ActivityThread.-wrap1(Unknown Source:0)
android.app.ActivityThread$H.handleMessage(ActivityThread.java:1988)
android.os.Handler.dispatchMessage(Handler.java:106)
android.os.Looper.loop(Looper.java:164)
android.app.ActivityThread.main(ActivityThread.java:6843)
java.lang.reflect.Method.invoke(Native Method)
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
截图

这个问题是怎么处理的,我现在也遇见了
这个问题是怎么处理的,我现在也遇见了
准备下载源码看看能不能去掉创建的代码,目前还没找到代码位置
我也碰到了,被应用宝拒绝了
我也碰到了,被应用宝拒绝了
是的,可能是之前检测范围没有涉及到这部分,现在测到了就都被拒了
我也碰到了,被应用宝拒绝了
是的,可能是之前检测范围没有涉及到这部分,现在测到了就都被拒了
下载源码,去掉在provider初始化,改为同意隐私政策后再初始化,应该暂时可以
我也碰到了,被应用宝拒绝了
是的,可能是之前检测范围没有涉及到这部分,现在测到了就都被拒了
下载源码,去掉在provider初始化,改为同意隐私政策后再初始化,应该暂时可以
要是定位到要修改的位置烦请告知,我还没找到。。。
util_code_provider_paths.xml 文件去掉
<external-media-path name="external_media_path" path="." />
就不会自动在media下创建包名文件夹
util_code_provider_paths.xml 文件去掉
<external-media-path name="external_media_path" path="." />就不会自动在media下创建包名文件夹
看到了,感谢!!
我是直接在manifest中直接改的resource文件
<provider
android:name="com.blankj.utilcode.util.UtilsFileProvider"
android:authorities="${applicationId}.utilcode.fileprovider"
android:exported="false"
android:grantUriPermissions="true">
我是直接在manifest中直接改的resource文件
下载了aar包,直接注释掉了xml文件里的代码,然后重新生成了aar 引用的
分享下我的临时解决办法: AndroidManifest.xml 中添加:
<provider
android:name="com.blankj.utilcode.util.UtilsFileProvider"
android:exported="false"
android:authorities="com.tttell.xmx.utilcode.fileprovider"
android:grantUriPermissions="true"
android:enabled="false"> <!-- 这里设置为 false 禁止 ContentProvider 初始化 -->
</provider>
手动初始化:
if (用户同意隐私政策){
Utils.init(application);
}
楼上的方法确实好用,但手动初始化并不成功
楼上的方法确实好用,但手动初始化并不成功
@WilburLe 请问怎么看出来初始化不成功? 我理解的初始化工作好像核心就一行 UtilsBridge.init() 内部也只调用了 UtilsActivityLifecycleImpl.INSTANCE.init(app) 内部的主要工作也就是给 application 设置了 activity 生命周期回调吧?
我是直接在manifest中直接改的resource文件
下载了aar包,直接注释掉了xml文件里的代码,然后重新生成了aar 引用的
能否发个改后的aar包,我这边对项目打包,各种错误
utilcode:1.30.6或1.31.1引入后启动应用就会在”SD卡/Android/media/“路径下创建对应包名的文件夹,未授权存储权限的情况下存在调用外部SD卡的读写权限的情况
在启动应用未调用任何初始化代码,也会触发创建文件夹得操作。
- AndroidUtilCode 的版本:utilcode:1.30.6和1.31.1
- 出现 Bug 的设备型号:所有设备
- 设备的 Android 版本:所有版本
未调用初始化代码,只是引入到项目中
implementation ('com.blankj:utilcodex:1.31.1')异常详情
{"mkdir": "/storage/emulated/0/Android/media"}异常堆栈
java.io.File.mkdir(File.java:1380) java.io.File.mkdirs(File.java:1429) java.io.File.mkdirs(File.java:1428) android.app.ContextImpl.ensureExternalDirsExistOrFilter(ContextImpl.java:2464) android.app.ContextImpl.getExternalMediaDirs(ContextImpl.java:694) android.content.ContextWrapper.getExternalMediaDirs(ContextWrapper.java:287) androidx.core.content.FileProvider.parsePathStrategy(FileProvider.java:28) androidx.core.content.FileProvider.getPathStrategy(FileProvider.java:3) androidx.core.content.FileProvider.attachInfo(FileProvider.java:4) android.app.ActivityThread.installProvider(ActivityThread.java:6583) android.app.ActivityThread.installContentProviders(ActivityThread.java:6149) android.app.ActivityThread.handleBindApplication(ActivityThread.java:6066) android.app.ActivityThread.-wrap1(Unknown Source:0) android.app.ActivityThread$H.handleMessage(ActivityThread.java:1988) android.os.Handler.dispatchMessage(Handler.java:106) android.os.Looper.loop(Looper.java:164) android.app.ActivityThread.main(ActivityThread.java:6843) java.lang.reflect.Method.invoke(Native Method) com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438) com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)截图
兄弟你这个是什么隐私检测软件,是第三方的吗
utilcode:1.30.6或1.31.1引入后启动应用就会在“SD卡/Android/media/”路径下创建对应包名的文件夹,未授权存储权限的情况下存在调用外部SD卡的读写权限的情况
在启动应用未调用任何初始化代码,也会触发创建文件夹得操作。
- AndroidUtilCode 的版本:utilcode:1.30.6和1.31.1
- 出现 Bug 的设备型号:所有设备
- 设备的 Android 版本:所有版本
未调用初始化代码,只是引入到项目中
implementation ('com.blankj:utilcodex:1.31.1')异常详情
{"mkdir": "/storage/emulated/0/Android/media"}异常堆栈
java.io.File.mkdir(File.java:1380) java.io.File.mkdirs(File.java:1429) java.io.File.mkdirs(File.java:1428) android.app.ContextImpl.ensureExternalDirsExistOrFilter(ContextImpl.java:2464) android.app.ContextImpl.getExternalMediaDirs(ContextImpl.java:694) android.content.ContextWrapper.getExternalMediaDirs(ContextWrapper.java:287) androidx.core.content.FileProvider.parsePathStrategy(FileProvider.java:28) androidx.core.content.FileProvider.getPathStrategy(FileProvider.java:3) androidx.core.content.FileProvider.attachInfo(FileProvider.java:4) android.app.ActivityThread.installProvider(ActivityThread.java:6583) android.app.ActivityThread.installContentProviders(ActivityThread.java:6149) android.app.ActivityThread.handleBindApplication(ActivityThread.java:6066) android.app.ActivityThread.-wrap1(Unknown Source:0) android.app.ActivityThread$H.handleMessage(ActivityThread.java:1988) android.os.Handler.dispatchMessage(Handler.java:106) android.os.Looper.loop(Looper.java:164) android.app.ActivityThread.main(ActivityThread.java:6843) java.lang.reflect.Method.invoke(Native Method) com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438) com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)截图
兄弟你这个是什么隐私检测软件,是第三方的吗
应用宝更新版本时检测出来的。
utilcode:1.30.6或1.31.1引入后启动应用就会在“SD卡/Android/media/”路径下创建对应包名的文件夹,未授权存储权限的情况下存在调用外部SD卡的读写权限的情况
在启动应用未调用任何初始化代码,也会触发创建文件夹得操作。
- AndroidUtilCode 的版本:utilcode:1.30.6和1.31.1
- 出现 Bug 的设备型号:所有设备
- 设备的 Android 版本:所有版本
未调用初始化代码,只是引入到项目中
implementation ('com.blankj:utilcodex:1.31.1')异常详情
{"mkdir": "/storage/emulated/0/Android/media"}异常堆栈
java.io.File.mkdir(File.java:1380) java.io.File.mkdirs(File.java:1429) java.io.File.mkdirs(File.java:1428) android.app.ContextImpl.ensureExternalDirsExistOrFilter(ContextImpl.java:2464) android.app.ContextImpl.getExternalMediaDirs(ContextImpl.java:694) android.content.ContextWrapper.getExternalMediaDirs(ContextWrapper.java:287) androidx.core.content.FileProvider.parsePathStrategy(FileProvider.java:28) androidx.core.content.FileProvider.getPathStrategy(FileProvider.java:3) androidx.core.content.FileProvider.attachInfo(FileProvider.java:4) android.app.ActivityThread.installProvider(ActivityThread.java:6583) android.app.ActivityThread.installContentProviders(ActivityThread.java:6149) android.app.ActivityThread.handleBindApplication(ActivityThread.java:6066) android.app.ActivityThread.-wrap1(Unknown Source:0) android.app.ActivityThread$H.handleMessage(ActivityThread.java:1988) android.os.Handler.dispatchMessage(Handler.java:106) android.os.Looper.loop(Looper.java:164) android.app.ActivityThread.main(ActivityThread.java:6843) java.lang.reflect.Method.invoke(Native Method) com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438) com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)截图
兄弟你这个是什么隐私检测软件,是第三方的吗
应用宝更新版本时检测出来的。
我在尝试hook provider初始化时机至隐私弹窗后,可以讨论下,方便加下我微信吗,18802092131
我是直接在manifest中直接改的resource文件
下载了aar包,直接注释掉了XML文件里的代码,然后重新生成了AAR 引用的
能否发个改后的aar包,我这边对项目打包,各种错误
修改aar文件重新打包对后续升级版本也需要重写打包,所以我在清单文件里重写了这部分。可以参考一下

utilcode:1.30.6或1.31.1引入后启动应用就会在“SD卡/Android/media/”路径下创建对应包名的文件夹,未授权存储权限的情况下存在调用外部SD卡的读写权限的情况
在启动应用未调用任何初始化代码,也会触发创建文件夹得操作。
- AndroidUtilCode 的版本:utilcode:1.30.6和1.31.1
- 出现 Bug 的设备型号:所有设备
- 设备的 Android 版本:所有版本
未调用初始化代码,只是引入到项目中
implementation ('com.blankj:utilcodex:1.31.1')异常详情
{"mkdir": "/storage/emulated/0/Android/media"}异常堆栈
java.io.File.mkdir(File.java:1380) java.io.File.mkdirs(File.java:1429) java.io.File.mkdirs(File.java:1428) android.app.ContextImpl.ensureExternalDirsExistOrFilter(ContextImpl.java:2464) android.app.ContextImpl.getExternalMediaDirs(ContextImpl.java:694) android.content.ContextWrapper.getExternalMediaDirs(ContextWrapper.java:287) androidx.core.content.FileProvider.parsePathStrategy(FileProvider.java:28) androidx.core.content.FileProvider.getPathStrategy(FileProvider.java:3) androidx.core.content.FileProvider.attachInfo(FileProvider.java:4) android.app.ActivityThread.installProvider(ActivityThread.java:6583) android.app.ActivityThread.installContentProviders(ActivityThread.java:6149) android.app.ActivityThread.handleBindApplication(ActivityThread.java:6066) android.app.ActivityThread.-wrap1(Unknown Source:0) android.app.ActivityThread$H.handleMessage(ActivityThread.java:1988) android.os.Handler.dispatchMessage(Handler.java:106) android.os.Looper.loop(Looper.java:164) android.app.ActivityThread.main(ActivityThread.java:6843) java.lang.reflect.Method.invoke(Native Method) com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438) com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)截图
兄弟你这个是什么隐私检测软件,是第三方的吗
应用宝更新版本时检测出来的。
我在尝试hook provider初始化时机至隐私弹窗后,可以讨论下,方便加下我微信吗,18802092131
如果你需要在媒体路径存储内容可以直接申请权限,如果暂时不需要就可以先注释掉SD卡媒体文件夹的创建。应用宝的检测也是一直在变的,之前设置了禁止初始化ContentProvider,后面发现确实无法初始化成功sdk,所以成上面回复的了。