[英]How to use share photo from internal storage to stories using Android Facebook SDK?
我怎么用
new SharePhoto.Builder()
.setImageUrl(Uri uri)
.build();
从内部存储共享文件到Facebook故事? 该文档提到添加
<provider android:authorities="com.facebook.app.FacebookContentProvider{APP_ID}"
android:name="com.facebook.FacebookContentProvider"
android:exported="true"/>
到AndroidManifest.xml
,但这还不够。
有一种方法FacebookContentProvider.getAttachmentUrl()
提供了我试图用来将文件保存在那里的路径,但是它不起作用。
我从Facebook SDK回调管理器收到的错误如下。
复制贴纸失败
有一些可能的原因无法正确获取文件。
第一个是,Facebook SDK需要将文件存储在本地存储中,并带有有效的文件Uri
。 因此,如果文件实际上没有存储在本地存储中,则可能是一个问题。
另一件事是正确设置您的应用程序,以便它可以访问内部存储中的文件。 我建议您检查一下您的应用程序中可能缺少的内容。
检查您的AndroidManifest.xml
是否具有FileProvider
,如下所示。
<provider
android:name="android.support.v4.content.FileProvider"
android:authorities="${applicationId}"
android:exported="false"
android:grantUriPermissions="true"
tools:replace="android:authorities">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_provider_paths"
tools:replace="android:resource" />
</provider>
并且/res/xml
文件夹中应该有一个file_provider_paths.xml
文件,其中应该包含文件的位置,如下所示。
<?xml version="1.0" encoding="utf-8"?>
<paths>
<external-path
name="documents"
path="Android/data/bd.com.ipay.android/files/Pictures" />
</paths>
希望有帮助!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.