Я хочу поделиться своим игровым счетом на facebook. Я проверил множество ссылок, и каждый пост сказал, что POSTING на facebook с помощью INTENT не возможно. Если мы используем намерение, поделиться только ссылкой.
Если нам нужно поделиться чем-то на facebook, мы должны использовать FaceBook SDK.
У меня есть еще одно сомнение, что все вопросы и ответы были опубликованы до 2014 года. Любая новая вещь приходит после 2014 года.
Мой фактический вопрос: возможно ли делиться оценкой на Facebook с помощью Намерения или мне нужно использовать Facebook SDK?
ниже - код намерения, который я использовал для моего приложения, которое не работает......
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_TEXT, message);
startActivity(Intent.createChooser(intent, "Share on"));
а ниже - код FacebookSDK... и Проблема, в этом не отображается оценка в сообщении только изображение., и название и описание отсутствует.
FacebookSdk.sdkInitialize(getApplicationContext());
shareDialog = new ShareDialog(this);
if (ShareDialog.canShow(ShareLinkContent.class)) {
linkContent = new ShareLinkContent.Builder()
.setContentTitle(title)
.setContentDescription(description)
.setContentUrl(Uri.parse(link)).
.setImageUrl(Uri.parse(imageLink)
.build();
shareDialog.show(linkContent);
}
Я использовал ShareDialog, потому что
Диалоговое окно "Поделиться" переключается на собственное приложение для Facebook для Android, а затем возвращает управление вашему приложению после публикации публикации. Если приложение Facebook не установлено, оно автоматически будет отвисеть от веб-диалога.
Ниже представлен результат..........
@pravin это ошибка, возникающая после использования вашего API-интерфейса share
@Pravin это мой код вашего ответа на ваш ответ........
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
FacebookSdk.sdkInitialize(getApplicationContext());
callbackManager = CallbackManager.Factory.create();
setContentView(R.layout.activity_facebook);
Button mShare= (Button) findViewById(R.id.share);
mShare.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ShareOpenGraphObject object = new ShareOpenGraphObject.Builder()
.putString("og:type", "game.achievement")
.putString("og:title", "Name of your game")
.putString("og:description", "description. You can share your score here")
.putString("game:points", "445")
.build();
ShareOpenGraphAction action = new ShareOpenGraphAction.Builder()
.setActionType("games.achieves")
.putObject("game", object)
.build();
if (ShareDialog.canShow(ShareLinkContent.class)) {
ShareOpenGraphContent content = new ShareOpenGraphContent.Builder()
.setPreviewPropertyName("game")
.setAction(action)
.build();
ShareDialog.show(Facebook.this, content);
}
}
});
shareDialog = new ShareDialog(this);
}
Thanx заранее................