私は Android フィットネス アプリケーションに取り組んでいます。Facebook コースの詳細 (Android アプリケーションを介して距離、期間、カロリーなど) を送信できますが、場所のデータポイント リストを送信してタイムライン ステータスにマップを描画することはできません。この目的のための次のコード:
public void shareWorkout (View v)
{
if (FacebookDialog.canPresentShareDialog(getApplicationContext(),
FacebookDialog.ShareDialogFeature.SHARE_DIALOG))
{
OpenGraphObject course = OpenGraphObject.Factory.createForPost(null);
course.setType("fitness.course");
course.setTitle("Walking Course");
course.setUrl("http://samples.ogp.me/136756249803614");
course.setDescription("walked a course");
course.getData().setProperty("distance:value", 2.5f);
course.getData().setProperty("distance:units", "km");
course.getData().setProperty("duration:value", 1800.0f);
course.getData().setProperty("duration:units", "s");
course.getData().setProperty("speed:value", 3.0f);
course.getData().setProperty("speed:units", "m/s");
int[] cals = {50,70};
course.getData().setProperty("metrics:calories",cals);
OpenGraphAction action = GraphObject.Factory.create(OpenGraphAction.class);
action.setProperty("course", course);
FacebookDialog shareDialog = new FacebookDialog.OpenGraphActionDialogBuilder(this, action, "fitness.walks", "course").build();
uiHelper.trackPendingDialogCall(shareDialog.present());
}
}
このコードを実行した後、例外が発生しました。
com.facebook.facebookexception: failed to generate preview for user.