【问题标题】:android & facebook sdk - post a simple text to wallandroid & facebook sdk - 将简单的文字发布到墙上
【发布时间】:2014-09-29 11:55:50
【问题描述】:

我想要做的是在 android studio 中使用 facebook sdk 在墙上发布一个简单的文本。 我想在用户不需要 Facebook 应用程序的情况下发布文本。 这可能吗?

我读过 https://developers.facebook.com/docs/android/share

我有 2 个问题。

1) 如何设置分享的文字?

   FacebookDialog shareDialog = new FacebookDialog.ShareDialogBuilder(this)
            .setLink("https://developers.facebook.com/android")
            .build();
    uiHelper.trackPendingDialogCall(shareDialog.present());

我看不到任何 setText 方法..或类似的东西..

如果我的手机上没有安装 facebook 应用程序,我也可以这样做吗?

我得到了错误

Failed to find provider info for com.facebook.katana.provider.AttributionIdProvider

我不想强迫我的用户安装 facebook。我该怎么办?

【问题讨论】:

标签: android facebook android-studio share


【解决方案1】:

在应用程序清单中添加权限

<uses-permission android:name="android.permission.INTERNET"/>

<uses-permission android:name="android.permission.SET_DEBUG_APP"/>

【讨论】:

  • 我已经有了 .. 我问了 2 件事,如何在没有安装应用程序的情况下与 facebook sdk 共享文本,以及如何仅共享文本,我的代码将共享一个链接
  • shareIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); shareIntent.setType("text/plain"); shareIntent.putExtra(android.content.Intent.EXTRA_TEXT, "全民免费教育!linkd.in/xU8mCc"); startActivity(shareIntent);
  • @Partizio 我不想分享链接,我想分享文字,有那么难理解吗?
  • @Paul 你有任何解决方案。我只需要分享文字。
  • @SrishtiRoy 我想我知道了,但这是很久以前的事了,我不记得我是怎么做到的了。
【解决方案2】:

Failed to find provider info for com.facebook.katana.provider.AttributionIdProvider

这可能是由于以下原因造成的:

  1. 您未连接到互联网
  2. 您没有授予 Internet 访问权限 (Manifest.xml)
  3. 您没有为应用使用正确的hashkey
  4. 您没有提供正确的应用 ID
  5. 您尚未在设备中安装 Facebook

检查是否添加了权限:

<uses-permission android:name="android.permission.INTERNET"/>

<uses-permission android:name="android.permission.SET_DEBUG_APP"/>

编辑: 您可以使用setName(String) 设置标题,使用setDescription(String) 设置描述。看看这个documentation link.

【讨论】:

  • 我已经知道为什么我有这个问题,是 5.. 再次阅读我的问题
  • by "How can I set the text of my share" 你的意思是你想为你的FacebookDialog 自定义标题?
  • FacebookDialog shareDialog = new FacebookDialog.ShareDialogBu​​ilder(this) .setApplicationName("Excuse Me").setCaption("LALALA").setDescription("asda").setName("neim") .build( ); uiHelper.trackPendingDialogCall(shareDialog.present());如果我没有安装 facebook,这将使我的应用程序崩溃,如果我安装了它,它将在 facebook 上打开一个空的帖子对话框,没有任何文字,只是“你在想什么”......
  • 关于什么的错误?没有 facebook sdk 就不能使用这种方法。这就是问题.. 错误:com.facebook.FacebookException:发布消息时出错
  • “我想在用户不需要 Facebook 应用的情况下发布文本” 我认为不可能
猜你喜欢
  • 2011-11-07
  • 2011-09-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-05
  • 1970-01-01
  • 1970-01-01
  • 2018-06-01
相关资源
最近更新 更多