разлики между reauthorizeWithPublishPermissions и openActiveSessionWithPublishPermissions?

От Facebook iOS SDK 3.1.1 Facebook раздели openActiveSessionWithPermissions на 2 части: openActiveSessionWithReadPermissions и openActiveSessionWithPublishPermissions (обяснено тук).

Документацията на Facebook обаче казва първо да се обадите на openActiveSessionWithReadPermissions, а след това на reauthorizeWithPublishPermissions. Не виждам никакво обяснение кога трябва да използвам openActiveSessionWithPublishPermissions.

Моля, помогнете ми да разбера разликата между 2 метода и кога трябва да ги използвам.

Благодаря предварително,


person Min Kim    schedule 19.10.2012    source източник


Отговори (2)


Ето някои възможни сценарии:

  1. Потребителят, ако посещава приложението ви за първи път и никога не е упълномощавал приложението ви.
  2. Потребителят се връща към приложението ви и преди това е упълномощил приложението ви. Наличен е кеширан токен, така че сесията да може да бъде отворена. Кешираният токен също съхранява предишни предоставени разрешения.

В случай (1) можете да отворите сесия само за разрешения за четене. Не можете да поискате разрешения за публикуване първия път.

В случай (2) можете да поискате разрешения за публикуване. Трябва да проверите дали има кеширан токен.

И в двата случая (1) или (2) винаги можете да извикате методите за повторно упълномощаване, след като сесията е първоначално отворена.

person C Abernathy    schedule 14.11.2012

Има 2 подхода, които можете да следвате:

  • О. Можете да поискате от потребителите разрешения за действия по публикуване, когато се свържат с Facebook и упълномощят вашето приложение за първи път.

В този случай ще трябва да използвате reauthorizeWithPublishPermissions:..

  • Б. Алтернативата е да поискате разрешения, когато искат да извършат конкретно действие за публикуване.

В този случай ще трябва първо да използвате reauthorizeWithPublishPermissions и по-късно reauthorizeWithPublishPermissions

IMHO първият подход е по-безпроблемен, но в крайна сметка може да доведе до лоши резултати, тъй като някои потребители не искат да дават разрешения още при първото разрешаване на приложение. Вторият подход изисква повече взаимодействие от потребителя, но му дава повече контрол.

Facebook препоръчва втория подход, но всъщност това е вашият избор.

наздраве

person Lio    schedule 29.10.2012
comment
Не можете да поискате разрешения за публикуване при първото отваряне на сесия, трябва да поискате основно разрешение за четене и след това да удостоверите отново за повече разрешения. - person Maurizio; 22.02.2013
comment
@Maurizio това твърдение вече не е вярно - person Pochi; 19.08.2014