【问题标题】:Facebook link sharing fails for some image urls in androidandroid 中某些图片网址的 Facebook 链接共享失败
【发布时间】:2015-06-24 11:35:39
【问题描述】:

我正在尝试在 Facebook 上分享链接。我正在使用最新(4.2)facebook sdk 的 FacebookDialog 类和 ShareLinkContent 类,如以下指南所示。 https://developers.facebook.com/docs/sharing/android

我在 ShareLinkContent 中设置图片网址。成功分享其他图片时,无法分享部分图片。

这是失败案例的 logcat 输出:

06-24 16:43:11.356  10101-10101/com.tws.android W/System.err﹕ Error  publishing message
06-24 16:43:11.392  10101-10101/com.tws.android W/System.err﹕ at com.facebook.internal.NativeProtocol.getExceptionFromErrorData(NativeProtocol.java:695)
06-24 16:43:11.392  10101-10101/com.tws.android W/System.err﹕ at com.facebook.share.internal.ShareInternalUtility.handleActivityResult(ShareInternalUtility.java:184)
06-24 16:43:11.392  10101-10101/com.tws.android W/System.err﹕ at com.facebook.share.internal.ShareInternalUtility$3.onActivityResult(ShareInternalUtility.java:276)
06-24 16:43:11.392  10101-10101/com.tws.android W/System.err﹕ at com.facebook.internal.CallbackManagerImpl.onActivityResult(CallbackManagerImpl.java:82)
06-24 16:43:11.392  10101-10101/com.tws.android W/System.err﹕ at com.tws.android.activities.WalletActivity.onActivityResult(WalletActivity.java:388)
06-24 16:43:11.392  10101-10101/com.tws.android W/System.err﹕ at android.app.Activity.dispatchActivityResult(Activity.java:6192)
06-24 16:43:11.392  10101-10101/com.tws.android W/System.err﹕ at android.app.ActivityThread.deliverResults(ActivityThread.java:3570)
06-24 16:43:11.392  10101-10101/com.tws.android W/System.err﹕ at android.app.ActivityThread.handleSendResult(ActivityThread.java:3617)
06-24 16:43:11.392  10101-10101/com.tws.android W/System.err﹕ at android.app.ActivityThread.access$1300(ActivityThread.java:151)
06-24 16:43:11.393  10101-10101/com.tws.android W/System.err﹕ at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1352)
06-24 16:43:11.393  10101-10101/com.tws.android W/System.err﹕ at android.os.Handler.dispatchMessage(Handler.java:102)
06-24 16:43:11.393  10101-10101/com.tws.android W/System.err﹕ at android.os.Looper.loop(Looper.java:135)
06-24 16:43:11.393  10101-10101/com.tws.android W/System.err﹕ at android.app.ActivityThread.main(ActivityThread.java:5254)
06-24 16:43:11.393  10101-10101/com.tws.android W/System.err﹕ at java.lang.reflect.Method.invoke(Native Method)
06-24 16:43:11.393  10101-10101/com.tws.android W/System.err﹕ at java.lang.reflect.Method.invoke(Method.java:372)
06-24 16:43:11.393  10101-10101/com.tws.android W/System.err﹕ at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
06-24 16:43:11.393  10101-10101/com.tws.android W/System.err﹕ at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)

【问题讨论】:

    标签: android android-facebook


    【解决方案1】:

    为了将来参考,我偶然发现了同样的问题,并通过检查以下项目解决了它:

    • “设置”下 Facebook 仪表板中的显示名称必须与您的 strings.xml 文件中的 app_id 完全匹配
    • “设置”下 Facebook 仪表板中的 Google Play 包名称必须与您的项目结构完全匹配
    • 确保您已正确生成哈希值。如果您想根据调试/发布更改您的应用程序 ID,您可以将它们放在您的 gradle 文件中,如下所示: resValue "string", "facebook_app_id", "\"YOUR_APP_ID\"" 然后在清单文件中获取参考,如下所示: <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id"/>

    在我的例子中,我正在开发一个分支,所以我在我的 gradle 文件中附加了一个“.dev”,在我没有放在 Facebook 仪表板中的包结构的末尾。

    【讨论】:

      猜你喜欢
      • 2017-12-15
      • 1970-01-01
      • 2012-02-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-04
      相关资源
      最近更新 更多