繁体   English   中英

如何使用Android Facebook SDK从内部存储共享照片到故事?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM