Facebook从我的应用程序分享 [英] Facebook Share from my app

查看:152
本文介绍了Facebook从我的应用程序分享的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想从我的应用程序在Facebook上分享内容。
当我点击分享按钮,它应该从对话框登录和共享内容。
登录工作正常,但我不知道如何从Facebook SDK中分享没有默认分享按钮



我的Facebook登录代码如下

  final ProfileTracker [] mProfileTracker = new ProfileTracker [1]; 
LoginManager.getInstance()。logInWithReadPermissions(MainActivity.this,Arrays.asList(public_profile,email));
LoginManager.getInstance()。registerCallback(callbackManager,
new FacebookCallback< LoginResult>(){


@Override
public void onSuccess(LoginResult loginResult ){

}

@Override
public void onCancel(){
//应用代码
Toast.makeText(MainActivity.this ,验证与Facebook失败!,Toast.LENGTH_LONG).show();

}

@Override
public void onError(FacebookException exception){
//应用代码
Toast.makeText(MainActivity.this,Authentication with Facebook failed!,Toast.LENGTH_LONG).show();

}
} );
}


解决方案

成功登录后使用 ShareLinkContent 在Facebook墙上分享:



代码

  if(ShareDialog.canShow(ShareLinkContent.class)){
ShareLinkContent linkContent = new ShareLinkContent.Builder()
.setContentTitle(Any标题)
/ * .setContentDescription(
'Hello Facebook')* /
.setContentUrl(Uri.parse(https://www.google.com))
.build();

shareDialog.show(linkContent);
}

在loginManager的onSuccess方法中使用这个代码。

$在 onCreate 中,b
$ b

并初始化 ShareDialog CallbackManager 活动像这样:

  callbackManager = CallbackManager.Factory.create ); 
shareDialog = new ShareDialog(this);
shareDialog.registerCallback(callbackManager,new FacebookCallback< Sharer.Result>(){
@Override
public void onSuccess(Sharer.Result result){

}

@Override
public void onCancel(){

}

@Override
public void onError(FacebookException e){

}
});

onActivityResult Activity添加回调管理器:

  @Override 
protected void onActivityResult(int requestCode,int resultCode,Intent data)
{
super.onActivityResult(requestCode,resultCode,data);
callbackManager.onActivityResult(requestCode,resultCode,data);
}


I want share content on Facebook from my app. When i click share button it should login and share content from dialog. Login is Working fine, But i don't know how share without default share button from Facebook SDK

My Facebook login code as follows

final ProfileTracker[] mProfileTracker = new ProfileTracker[1];
LoginManager.getInstance().logInWithReadPermissions(MainActivity.this, Arrays.asList("public_profile", "email"));
LoginManager.getInstance().registerCallback(callbackManager,
        new FacebookCallback<LoginResult>() {


            @Override
            public void onSuccess(LoginResult loginResult) {

            }

            @Override
            public void onCancel() {
                // App code
                Toast.makeText(MainActivity.this, "Authentication with Facebook failed!", Toast.LENGTH_LONG).show();

            }

            @Override
            public void onError(FacebookException exception) {
                // App code
                Toast.makeText(MainActivity.this, "Authentication with Facebook failed!", Toast.LENGTH_LONG).show();

            }
        });
}

解决方案

After successful login use ShareLinkContent to share on facebook wall :

code :

 if (ShareDialog.canShow(ShareLinkContent.class)) {
                        ShareLinkContent linkContent = new   ShareLinkContent.Builder()
                                .setContentTitle("Any Title")
                               /* .setContentDescription(
                                        "'Hello Facebook'")*/
                                .setContentUrl(Uri.parse("https://www.google.com"))
                                .build();

                        shareDialog.show(linkContent);
                    }

In onSuccess method of LoginManager use this peice of code.

and initialize ShareDialog and CallbackManager in onCreate of Activity like this :

callbackManager=CallbackManager.Factory.create();
            shareDialog=new ShareDialog(this);
            shareDialog.registerCallback(callbackManager, new   FacebookCallback<Sharer.Result>() {
                @Override
                public void onSuccess(Sharer.Result result) {

                }

                @Override
                public void onCancel() {

                }

                @Override
                public void onError(FacebookException e) {

                }
            });

and onActivityResult method of Activity add callback manager :

  @Override
  protected void onActivityResult(int requestCode, int resultCode, Intent   data)
  {
    super.onActivityResult(requestCode, resultCode, data);
  callbackManager.onActivityResult(requestCode, resultCode, data);
   }

这篇关于Facebook从我的应用程序分享的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆