2009-12-04 2 views
2

Так вот, ситуация: У меня есть приложение Flash, которое я развертываю в facebook как приложение для холста. В этом приложении есть разные состояния - разные «страницы», вроде.Facebook, Flash и поддерживая состояние

Я хочу, чтобы иметь возможность поделиться этим приложением с другими пользователями, используя механизм обмена в Facebook. Тем не менее, я хочу, чтобы каждое государство имело свою собственную кнопку совместного доступа. Таким образом, когда кто-то нажимает «Поделиться» на странице 3, они фактически делят страницу 3, а не корень всего приложения.

Кто-нибудь знает, есть ли в Facebook механизм, с помощью которого это возможно? Это было бы так же просто, как передать строку в iFrame, которая содержит приложение canvas, поэтому я мог бы загрузить его в качестве FlashVar и работать оттуда.

Я как бы отбиваюсь головой о стену - разве эта просьба имеет смысл, и кто-нибудь раньше занимался чем-то подобным?

Спасибо!

ответ

0

Если вы используете новые Stream.publish API, вы можете динамически генерировать ссылку вы обмена (Использование JavaScript)

FB.Connect.streamPublish

Все, что вам нужно сделать сейчас, это настроить ваш флэш вызвать функцию яваскрипта который обновляет, на какой странице вы находитесь.

0

Я точно не знаю о механизме facebook, но вы можете опубликовать URL-адрес своего приложения, когда вы «делитесь», который принимает аргумент, который указывает желаемую страницу. Взгляните на этот http://livedocs.adobe.com/flex/3/html/help.html?content=deep_linking_5.html на пример чтения аргумента url. Надеюсь это поможет.

+0

Да, строки URL запроса и якорные теги и POST и GET вары могут быть приняты в качестве FlashVars, которые дали бы мне функциональность мне нужно - к сожалению, Facebook сила вспышки на запускаются в изолированном iFrame и, похоже, они не хотят, чтобы вы могли передавать переменные таким образом. Приложение не имеет доступа к URL-адресу, поэтому даже тег #anchor не будет работать. Я что-то придумаю. Спасибо за ответ! – Myk

0

Вы можете передать данные обратно в приложение из JavaScript с помощью FBJSBridge. Это в основном песочница версии ExternalInterface. Поскольку facebook меняет все ваши имена методов js при разборе страницы, это позволяет вам по-прежнему вызывать эти методы со вспышки с их исходными именами. Вот ссылка на документы:

http://wiki.developers.facebook.com/index.php/Fb:fbjs-bridge

Смежные вопросы