Приложение получающее данные с любого внешнего источника

Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в Flash-приложениях (ActionScript)
monax
Сообщения: 33
Зарегистрирован: 13 дек 2009, 23:23

Приложение получающее данные с любого внешнего источника

Сообщение monax »

Всем привет!
Внезапно возникла непосильная для меня задача: Написать приложение для Вконтакте. К сожаление опыта работы с Flash и AS никакого не имею, решить поставленную задачу с "наскоку" не вышло. Немного почитав понял что для решения даже самых простых задач придется вникать в эту среду программирования чуть ли не с головой. А так как это разовая потребность, то и смысла особого в этом нет. Поэтому прошу вашей помощи.

Задача: Простенькое приложение получающее данные с любого внешнего источника(rss, страница в интернете, текстовый файл, заметки вконтакте, или еще откуда либо) выводит их пользователю. Главное! Приложение как только на внешнем источники появилась новая запись, должно оповещать пользователя что появилась новая информация(в виде уведомлений от приложения)

Информация вида:

Заголовок: Тестовый заголовок 1, Дата: ХХ.ХХ.ХХХХ
Сообщение: Тестовое сообщение 1.
-------------------------------------------------------------------------------
Заголовок: Тестовый заголовок 2, Дата: ХХ.ХХ.ХХХХ
Сообщение: Тестовое сообщение 2.
-------------------------------------------------------------------------------
Заголовок: Тестовый заголовок 3, Дата: ХХ.ХХ.ХХХХ
Сообщение: Тестовое сообщение 3.

Я дико извиняюсь за такой нубский вопрос, сам пограмируя на С#, PHP и являясь линуксером, ненавижу видеть такие вопросы... но до чего нас только жизнь не доводит. Заранее огромное спасибо всем откликнувшихся!
monax
Сообщения: 33
Зарегистрирован: 13 дек 2009, 23:23

Re: Помогите написать приложение

Сообщение monax »

Конечно если кто нибудь умудрится объяснить мне как решить такую задачу самому я попробую, но я истинный ноль в этом деле(
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Помогите написать приложение

Сообщение Александр »

Код загружает файл и отображает содержимое в поле result_tf:

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

var loader:URLLoader = new URLLoader();var request:URLRequest=new URLRequest("http://flapps.ru/file.txt");loader.load(request);loader.addEventListener(Event.COMPLETE, onComplete); function onComplete(event:Event):void {    result_tf.text=loader.data;}
Так же можно получить и страницу в интернете. На сайте, к которому обращается скрипт, должен быть файл crossdomain.xml.

Уведомления отправляются с сервера. Серверная часть и должна определять появилась ли новая запись.
monax
Сообщения: 33
Зарегистрирован: 13 дек 2009, 23:23

Re: Помогите написать приложение

Сообщение monax »

Так, это у же интересно.
Так же можно получить и страницу в интернете.
Тоесть можно загрузить целую страницу? crossdomain.xml - это файл разоешающий приложению загружать страницу? Сама же страница может быть с любым разрешение (HTML, PHP)?
Как-то я сам об этом не подумал... ведь это реализовано почти на всех языках))))

Если можно об этом поконкретнее. Тоесть я создаю страницу, например на php, делаю на ней вывод новостей, а приложение тупо отображает все что есть на моей странице? Если это возможно, то для меня это самый выгодный вариант.
Уведомления отправляются с сервера. Серверная часть и должна определять появилась ли новая запись.
эм... к сожалению совершенно не понял эту строчку((
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Помогите написать приложение

Сообщение Александр »

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

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

result_tf.htmlText=loader.data;
Как отправлять уведомления написано здесь http://flapps.ru/forum/topic19.html

Как не запущенное у пользователя приложение может узнать была ли обновлена запись? Никак.
Проверять обновления нужно у себя на сервере. Знания PHP есть? Вот они и понадобятся.
monax
Сообщения: 33
Зарегистрирован: 13 дек 2009, 23:23

Re: Приложение получающее данные с любого внешнего источника

Сообщение monax »

Так, сегодня немного поковырял эту тему уже у редакторе, потестил несколько приложений.
var loader:URLLoader = new URLLoader();
var request:URLRequest=new URLRequest("http://flapps.ru/file.txt");
loader.load(request);
loader.addEventListener(Event.COMPLETE, onComplete);

function onComplete(event:Event):void {
result_tf.text=loader.data;
}
это почему-то не работает.
следовательно
result_tf.htmlText=loader.data;
тоже не робит(
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Приложение получающее данные с любого внешнего источника

Сообщение Александр »

Что именно не работает? Какой эффект? Про crossdomain.xml не забыл?
monax
Сообщения: 33
Зарегистрирован: 13 дек 2009, 23:23

Re: Приложение получающее данные с любого внешнего источника

Сообщение monax »

Создаю test.fla Делаю поле для текста, делаю поле динамическим, называю result_tf.
Создаю main.as
Вбиваю в него:

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

var loader:URLLoader = new URLLoader();
var request:URLRequest=new URLRequest("http://homeparty.xost.ru/news.txt");
loader.load(request);
loader.addEventListener(Event.COMPLETE, onComplete);

function onComplete(event:Event):void {
   result_tf.text=loader.data;
}
- Адрес текстового документа http://homeparty.xost.ru/news.txt
Жму Ctrl+Enter
В логе 5007: An ActionScript file must have at least one externally visible definition.
В открывшемся окне пустота, заливаю в контакт, тоже пусто(но ведь должно работать и не только в котнтакте)
monax
Сообщения: 33
Зарегистрирован: 13 дек 2009, 23:23

Re: Приложение получающее данные с любого внешнего источника

Сообщение monax »

crossdomain.xml пи запросе к текстовому файлу тоже нужен?
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Приложение получающее данные с любого внешнего источника

Сообщение Александр »

monax, создаёшь класс и в него пишешь только этот код? Если создаешь класс, то описывай его как следует по структуре или же напиши этот код прямо в кадр.
crossdomain.xml нужен вообще при запросе к любому файлу на другом сайте.
Если запускаешь приложение во флеше при проверке, то он не обязателен. Если загрузишь в контакт и файла crossdomain.xml не будет, то приложение не будет работать как тебе надо.
Ответить