本文共 989 字,大约阅读时间需要 3 分钟。
为安全的从你的app向另外一个app提供文件,应该配置app提供content url的格式。fileprovide 基于你在XML中提供的规格为文件产生URIs. 要定义一个FileProvide,必须在manifest文件中定义一个<provide>,这个<provide>规定authority 以让用户产生URIs,同事也指明你的app可以共享文件的目录。 下面是一个例子。 <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.myapp"> <application ...> <provider android:name="android.support.v4.content.FileProvider" android:authorities="com.example.myapp.fileprovider" android:grantUriPermissions="true" android:exported="false"> <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/filepaths" /> </provider> ... </application> </manifest> <meta-data> 中指明可以共享文件的路径android:resource="@xml/filepaths" 我们在来看看xml/filepaths.xml的定义。 <paths> <files-path path="images/" name="myimages" /> </paths> 可以看到共享的文件是files/images/myimages.其中files-path 规定共享的文件是在内部存储中。<external-path>规定共享的文件是在外部存储中, <cache-path>规定共享的文件是在cache 目录中. 如上所示产生的content 完整路径为:content://com.example.myapp.fileprovider/myimages/default_image.jpg转载地址:http://jtcmi.baihongyu.com/