Android 如何使用ContentProvider实现意图。你要送什么?

Android 如何使用ContentProvider实现意图。你要送什么?,android,android-contentprovider,android-fileprovider,Android,Android Contentprovider,Android Fileprovider,我使用Intent.ACTION\u SEND将文件发送到其他设备。我用Lolipop(带有文件Uri)做得很好。但当我尝试使用Naugat时,它给出了一个异常,然后我知道我必须使用内容Uri而不是文件Uri。我可以使用FileProvider,但我尝试共享的是“/system/app”、“/data/app”和“/mnt/asec”(您可能知道我正在尝试做什么:),FileProvider不允许(或我还不知道)访问这些文件夹。stackoverflow中有人告诉我应该使用ContentProv

我使用Intent.ACTION\u SEND将文件发送到其他设备。我用Lolipop(带有文件Uri)做得很好。但当我尝试使用Naugat时,它给出了一个异常,然后我知道我必须使用内容Uri而不是文件Uri。我可以使用FileProvider,但我尝试共享的是“/system/app”、“/data/app”和“/mnt/asec”(您可能知道我正在尝试做什么:),FileProvider不允许(或我还不知道)访问这些文件夹。stackoverflow中有人告诉我应该使用ContentProvider,但这对我来说太过分了。我想问的是,有没有办法用FileProvider实现这一点?如果没有,谁能告诉我如何实现这样的内容提供商?我找遍了所有我能找到的地方,但没有找到任何有帮助的。我知道这个问题不清楚,但请告诉我,我一点也不清楚



我知道“外部路径”不包含“/system”或“/data”。如果可能,请告诉我应该在那里放置什么

您只需要实现query()、getType()和openFile()。只要从记录所有参数值的所有调用开始,您很快就会看到询问的内容。
搜索了所有我能搜索到的地方,但没有找到任何有帮助的内容。
很难相信。我在谷歌上搜索了contentprovider示例中的文件,并立即找到:。这就是您所需要的一切。
<?xml version="1.0" encoding="utf-8"?>
<paths>
<'what should i use here?'external-path name="device_app_path" 
path="/system"/>
<external-path name="sd_card_app_path" path="/data"/>
<external-path name="system_app_path" path="/mnt/asec"/>
</paths>