Страница 1 из 4

Отправить фотографию на стену пользователя (wall.savePost)

Добавлено: 11 июн 2011, 20:28
Александр
Отправить фотографию на стену пользователя (контейнер, wall.savePost, saveWallPost)
ActionScript 3.0, контейнер

Этот урок - это обновленная версия урока Публикации картинок с сервера на стену (wall.savePost).


1. Добавляем на сцену:
Текстовые поля с именами:
- to_id_tf (поле ввода id того, кому будет отправляться фото)
- result_tf (поле, в котором будет выводиться результат)

Кнопку send_btn.

2. Создаём Main.as и пишем код:

Код: Выделить всё

/*     http://flapps.ru/forum/ - форум о создании приложений */package {    import flash.display.*;    import flash.events.*;     public class Main extends Sprite {        private var viewer_id;        private var wrapper:Object;         public function Main():void {            this.addEventListener( Event.ADDED_TO_STAGE, onAddedToStage );        }         private function onAddedToStage(e: Event):void {            wrapper=Object(parent.parent);             // если приложение открыто со стены            if (wrapper.application.parameters.referrer=='wall_view_inline'||wrapper.application.parameters.referrer=='wall_view') {                result_tf.text='Здесь вы можете считать post_id и загрузить большое изображение.\n' +                 'post_id=' + wrapper.application.parameters.post_id; // post_id передаётся в запросе ниже            }             send_btn.addEventListener(MouseEvent.CLICK, send_btnClick);            viewer_id=wrapper.application.parameters.viewer_id;            to_id_tf.text=viewer_id;        }         private function send_btnClick(e: MouseEvent):void {            // отправляем запрос ('стена пользователяь которому будет отправлено фото (id)', 'photo_id', 'Сообщение')            var to_id=int(to_id_tf.text); // id пользователя, на стену которого будет отправляться фото            var post_id='post1';// id записи. Этот параметр будет передаваться в приложение через flashVars при просмотре записи на стене пользователя            var photo_id='6492_135055734';//  идентификатор фотографии в фотоальбоме            var post_message='Исходник этого приложения на http://flapps.ru/forum/';            wrapper.external.api('wall.savePost', {wall_id:to_id,post_id:post_id,photo_id:photo_id,message:post_message}, photoPosted, onError);        }         private function photoPosted(data: Object):void {            // сохраняем запись на стене пользователя            wrapper.external.callMethod('saveWallPost', data.post_hash);                        // пользователь нажал Добавить запись или Отмена            wrapper.addEventListener("onWallPostSave", onWallPostSave);             wrapper.addEventListener("onWallPostCancel", onWallPostCancel);         }                // пользователь подтвердил публикацию записи на стене        private function onWallPostSave(e: Object): void {             result_tf.text='Запись добавлена';        }         // пользователь отменил публикацию записи на стену        private function onWallPostCancel(e: Object): void {             result_tf.text='Вы нажали Отмена';        }                        // ошибка при обращении к серверу api        private function onError(data: Object):void        {            result_tf.text = data.error_msg;        }            }}
3. Подключаем Main.as к fla
Если не знаете как, то посмотрите как это было сделано в этом уроке http://flapps.ru/forum/topic3.html

4. Загружаем приложение в контакт

Редактирование -> Настройки -> Настройки -> Состояние -> Приложение включено и видно всем

Настройки контейнера -> Flash

Flash-контейнер -> C использованием контейнера -> Сохранить изменения

Обновление SWF-приложения -> Загрузить приложение

5. Всё готово!

Исходник http://flapps.ru/example/wall_savepost_wrapper.rar

Re: Отправить фотографию на стену пользователя (wall.savePost)

Добавлено: 11 июн 2011, 22:17
Evgesha
Спасибо большое! Всё работает! Очень хотелось опробовать wall.savePost

Re: Отправить фотографию на стену пользователя (wall.savePost)

Добавлено: 28 июн 2011, 01:18
savdev
Это только можно с контейнером делать?

Re: Отправить фотографию на стену пользователя (wall.savePost)

Добавлено: 06 июл 2011, 22:07
DeniS22
А как можно создать выбор фотографии?

Например человек выберет из миниатюр фотку и загружает именно её?

Re: Отправить фотографию на стену пользователя (wall.savePost)

Добавлено: 07 июл 2011, 20:25
Александр
DeniS22
В чём проблема? Если недостаточно знаний флеша, то нужно просто подучить.
Чтобы отправить другую фотографию надо менять параметр

Код: Выделить всё

photo_id='6492_135055734'

Re: Отправить фотографию на стену пользователя (wall.savePost)

Добавлено: 08 июл 2011, 13:25
DeniS22
Александр писал(а):DeniS22
В чём проблема? Если недостаточно знаний флеша, то нужно просто подучить.
Чтобы отправить другую фотографию надо менять параметр

Код: Выделить всё

photo_id='6492_135055734'
Александр, ты меня не правильно понял.
Я хотел узнать как сделать выбор фотографии.
Пользователь выбирает одну из нескольких и отправляет её.

Re: Отправить фотографию на стену пользователя (wall.savePost)

Добавлено: 08 июл 2011, 14:21
Evgesha
тут тоже всё просто...например сделать фото кликабельными, и при нажатии на одно, будет передана ссылка на эту картинку в photo_id=';

Re: Отправить фотографию на стену пользователя (wall.savePost)

Добавлено: 08 июл 2011, 21:05
Александр
DeniS22 писал(а):Я хотел узнать как сделать выбор фотографии.
Александр писал(а):Если недостаточно знаний флеша, то нужно просто подучить.
Для этого надо знать флеш. Какой способ выбора фотографии хочешь - решать тебе. При клике на фото, при выборе фото из списка и нажатии на кнопку или ещё какой-то способ... Когда у тебя будет четкий план того как будет работать твое приложение, тогда и придумывай способ реализации.

Re: Отправить фотографию на стену пользователя (wall.savePost)

Добавлено: 23 авг 2011, 06:24
Влаd
как сделать так, чтобы вот я кликнул на одну фотку, отправилась она, кликнул на другую фотку, отправилась другая?

Re: Отправить фотографию на стену пользователя (wall.savePost)

Добавлено: 23 авг 2011, 20:10
Александр
Влаd
Кликнул на первую, передавай параметр photo_id этой фотки. Кликнул на вторую - photo_id второй фотки...