![]() |
javascript через Air
Чего бы хотелось: чего нить наподобие ExternalInterface.callBackup
но под air for android. То есть это apk приложение без всякого браузера. Есть куча javascript-а в облаке, скажем Parse. Есть некий Parse as3 класс, но он жутко кастрирован - ничего кроме обращений к базе он делать не умеет. То есть там нет даже подобия Parse.Cloud.run. Вообщем, хотелось бы запустить яваскрипт на неком сайте и получить ответ напрямую из Air. Смотрел некий StageWebViewBridge, но там проблем больше чем толку, так и не запустился, даже пример. |
Попробуй обычный StageWebView.
Грузи в него страницу с необходимыми скриптами. Сообщение будет происходить так: Javascript слышит ActionScript с помощью сбытия onhashchange, когда ты пытаешься из Flash изменить адрес сайта на mysite.com/brigde.html#someCommandFormASToJS. ActionScript слышит Javascript с помощью события LOCATION_CHANGING, когда из Javascript ты пытаешься перейти по адресу mysite.com/brigde.html?someCommandFormJSToAS. Почему в первом случае хеш, а во втором параметры GET-запроса? Ну вот что-то не работает с хешом в обратном направлении. Остальное, полагаю, уже додумаешь: как выделить команду, как передать аргументы и все, что душе угодно. |
Идейно понятно (кодом потом попробую). Тогда такой вопрос, с локального js файла, то есть webView.loadURL('app:/localfile.js') такой подход будет работать?
То есть если в ответе на такой запрос в js будет location.href = 'localfile.js?returndata=12345' то webView.addEventListener(LocationChangeEvent.LOCATION_CHANGING, function) его услышит? |
Пробовал поднимать html локально, но на моем SGT 3 7 не сработало (( отказался. Это самое "неаккуратненькое" место.
Можно еще попробовать loadString(). |
| Часовой пояс GMT +4, время: 23:24. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.