Facebook从我的应用程序分享 [英] Facebook Share from my app
问题描述
当我点击分享按钮,它应该从对话框登录和共享内容。
登录工作正常,但我不知道如何从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屋!