gpt4 book ai didi

android - 如何使 FileProvider 可用于其他应用程序?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:14:42 25 4
gpt4 key购买 nike

是否可以让其他应用程序使用 FileProvider?

list .xml

...
<provider
android:name="android.support.v4.content.FileProvider"
android:authorities="com.example.myapp.fileprovider"
android:exported="true"
android:grantUriPermissions="false"
android:permission="com.example.filesvisible.permission.READ" >
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/filespath" />
</provider>
...

来自doc :

false: The provider is not available to other applications. Set android:exported="false" to limit access to the provider to your applications. Only applications that have the same user ID (UID) as the provider will have access to it.

我尝试将 exported 设置为 true 但出现此异常无法获取提供程序 android.support.v4.content.FileProvider:java.lang.SecurityException:提供程序不得导出为什么我无法导出 FileProvider?

最佳答案

Is it possible to have a FileProvider available to other applications ?

是的。这通常是重点。

Why I can't export a FileProvider ?

因为这不是您使用 FileProvider 的方式.

背后的要点FileProvidergive select access to files to third-party apps .你可以通过FLAG_GRANT_READ_URI_PERMISSION来做到这一点和/或 FLAG_GRANT_WRITE_URI_PERMISSION , 在 Intent您用来传递提供商之一的 Uri第三方应用程序的值(例如,通过 ACTION_VIEW IntentstartActivity() 一起使用)。

另见 the training guide on sharing files .

关于android - 如何使 FileProvider 可用于其他应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24090667/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com