Java Android与其他应用程序共享多个图像
我正在尝试使用本机Android共享功能来共享我使用的检索到的一组图像。因此,任何与这些图像兼容的应用程序都会出现在Android的共享菜单中 我创建了一个在单击共享时调用的方法Java Android与其他应用程序共享多个图像,java,android,android-glide,android-fileprovider,Java,Android,Android Glide,Android Fileprovider,我正在尝试使用本机Android共享功能来共享我使用的检索到的一组图像。因此,任何与这些图像兼容的应用程序都会出现在Android的共享菜单中 我创建了一个在单击共享时调用的方法 private void onShareClicked() { GlideUrl glideUrl = new GlideUrl(url1, new LazyHeaders.Builder().addHeader("x-auth-token", mToken).build()); FutureTarg
private void onShareClicked() {
GlideUrl glideUrl = new GlideUrl(url1, new LazyHeaders.Builder().addHeader("x-auth-token", mToken).build());
FutureTarget<File> image1 = mGlide.load(glideUrl).downloadOnly(SIZE_ORIGINAL, SIZE_ORIGINAL);
glideUrl = new GlideUrl(url2, new LazyHeaders.Builder().addHeader("x-auth-token", token).build());
FutureTarget<File> image2 = mGlide.load(glideUrl).downloadOnly(SIZE_ORIGINAL, SIZE_ORIGINAL);
new ShareImagesTask(this, "image/png").execute(image1, image2);
}
这是我的AndroidManifest.xml文件提供者:
<provider
android:name=".provider.MyAppFileProvider"
android:authorities="com.myapp.fileprovider"
android:grantUriPermissions="true"
android:exported="false">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/filepaths" />
</provider>
我能够调用FileProvider.getUriForProvider()
,它给出了下面的异常。我还尝试将filepath.xml
中的路径更改为异常中提到的路径的变体,但我得到了相同的错误。有什么想法吗
java.lang.IllegalArgumentException:找不到配置的根目录
包含
/data/data/com.myapp/cache/image\u manager\u disk\u cache/11fa9845150748cc77d49a75954d92f246cc7095e72e36b85d6a07dbdeb9cf46.0
替换:
<cache-path name="shared_images" path="/data/data/com.myapp/cache/image_manager_disk_cache/"/>
与:
或可能与:
<cache-path name="shared_images" path="image_manager_disk_cache/"/>
如果您试图将FileProvider
限制为getCacheDir()
的子集
<cache-path name="shared_images" path="/data/data/com.myapp/cache/image_manager_disk_cache/"/>
<cache-path name="shared_images" />
<cache-path name="shared_images" path="image_manager_disk_cache/"/>