1

我有以下源代码:

FileProvider.getUriForFile(activity, activity.getPackageName() + ".file", file);

以及 Manifest.xml 中的以下内容:

<provider
    android:name="androidx.core.content.FileProvider"
    android:authorities="app.domain.app-name.file"
    ...
</provider>

当应用程序运行时,它可以正常工作。但是,在运行检测测试时,activity.getPackageName() 返回我的应用程序的包名称,并附加了“.test”,导致以下异常:

java.lang.IllegalArgumentException: 
Couldn't find meta-data for provider with authority app.domain.app-name.test.file

在这两种情况下都适用的正确设置是什么?

4

1 回答 1

1

将您更改android:authorities为:

android:authorities="${applicationId}.file"
于 2020-06-30T13:04:55.450 回答