【问题标题】:Pre-filled message for the user in Facebook share dialog.在 Facebook 共享对话框中为用户预先填写的消息。
【发布时间】:2015-08-01 12:22:46
【问题描述】:

我偶然发现fb已经删除了预填充消息参数。 https://developers.facebook.com/docs/apps/review/prefill

使用用户未填写的任何内容预填充用户消息参数 输入自己,即使他们之前可以编辑或删除该内容 分享。这适用于帖子、cmets、照片说明和照片 专辑标题。

我正在使用“SocialSharing-PhoneGap-Plugin”并想在他的 fb 墙上发布用户的分数。是否有任何解决方法,以便我可以用用户的分数预填充共享对话框描述。其次,网络链接也不起作用,只允许发布图片。

【问题讨论】:

  • 如果您使用 android 的默认共享意图,则无法预填充消息。您必须在developers.facebook.com 上注册您的应用,然后才能分享。

标签: android facebook cordova facebook-graph-api phonegap-plugins


【解决方案1】:

使用此代码。但您必须在https://developers.facebook.com/ 上注册您的应用程序。获取 AppId 并使用它。

CallbackManager callbackManager;
private LoginManager manager;

@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		FacebookSdk.sdkInitialize(this.getApplicationContext());
		setContentView(R.layout.Your_layout);
		callbackManager = CallbackManager.Factory.create();

		//call method for sharing post
		FaceBookSharing();
}

public void FaceBookSharing() {
List<String> permissionNeeds = Arrays.asList("publish_actions");
	manager = LoginManager.getInstance();
	manager.logInWithPublishPermissions(this, permissionNeeds);

	manager.registerCallback(callbackManager,
		new FacebookCallback<LoginResult>() {
			@Override
			public void onSuccess(LoginResult loginResult) {
				PostImage();
			}

			@Override
			public void onCancel() {
				System.out.println("onCancel");
			}

			@Override
				public void onError(FacebookException exception) {
				System.out.println("onError");
			}
	});
}
private void PostImage() {
	Bitmap image = BitmapFactory.decodeResource(getResources(),
				R.drawable.ic_launcher);

	SharePhoto photo = new SharePhoto.Builder().setBitmap(image)
				.setCaption("Hey this is Demo post!")
				.build();

	SharePhotoContent content = new SharePhotoContent.Builder().addPhoto(
				photo).build();

	ShareApi.share(content, null);
	Toast.makeText(this, "Succsesfully posted on your wall", Toast.LENGTH_LONG)
	.show();	
}

【讨论】:

  • SharePhoto photo = new SharePhoto.Builder().setBitmap(image) .setCaption("嘿,这是演示帖!") .build();在这里在标题中添加您的文字。
  • 但是您正在设置“Caption”参数,并且您必须注册您的应用程序从用户那里获取 auth-token,然后您才能代表该用户发布。但我问的是不需要任何权限的共享对话框,不幸的是,FB 已经删除了自定义消息参数。
猜你喜欢
  • 1970-01-01
  • 2016-07-03
  • 1970-01-01
  • 2011-11-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-11-11
  • 1970-01-01
相关资源
最近更新 更多