PDA

Просмотр полной версии : Как вызвать другое приложение из AIR for Android?


Comer
06.10.2015, 14:15
Уважаемые форумчане! Подскажите, пожалуйста, можно ли из Android-приложения вызвать запуск другого приложения, имеющегося в телефоне? Вот, например, Skype можно вызвать, если в коде кнопки вызова будет записано так:
btn_SKYPE.addEventListener(TouchEvent.TOUCH_TAP, fl_TapHandler_1);

function fl_TapHandler_1(event:TouchEvent):void
{
navigateToURL(new URLRequest("skype:SkypeName?call"));
}
Этот код вызовет запуск Skype. А можно ли как-то вызвать, например, другое Android-приложение?

Добавлено через 49 минут
Ага, вроде нашёл:
startActivityForResult(new Intent(android.provider.Settings.ACTION_SETTINGS), 0);
Я так понимаю, что ACTION_SETTINGS - это то приложение, которое нужно запустить. Только я не пойму, чем конкретно я должен это заменить. Пробовал записать сначала его имя, потом имя apk-файла, но ничего не получилось. Кто-нибудь может с этим разобраться?

illuzor
06.10.2015, 15:16
Ага, вроде нашёл:
Это java код. Из as3 его напрямую не запустить.

Думаю, существуют ane для вашей задачи, нужно только погуглить.

Comer
06.10.2015, 18:59
Это java код. Из as3 его напрямую не запустить.

Думаю, существуют ane для вашей задачи, нужно только погуглить.

Вот нашёл ещё один код. Говорят, что он хорошо работает. Только я здесь ничего не понимаю. Кто-нибудь сможет разложить его по полочкам для меня?
Intent intent = new Intent();
intent.setComponent(new ComponentName("com.example", "com.example.MyExampleActivity"));
startActivity(intent);

illuzor
06.10.2015, 19:23
Ещё раз повторяю. Это java код.

Comer
06.10.2015, 19:54
Ещё раз повторяю. Это java код.
Так и есть. Это ява код. Посмотри, здесь человеку всё объяснили. Он понял и остался доволен. А вот до меня не дошло. Может поможешь разобраться?
http://www.cyberforum.ru/android-dev/thread1252189.html

caseyryan
06.10.2015, 19:58
Может с этого раза дойдет. Это java код и из AIR его запустить невозможно

Comer
06.10.2015, 20:04
Может с этого раза дойдет. Это java код и из AIR его запустить невозможно
А вот это оно? Посмотри, пожалуйста!
http://developer.alexanderklimov.ru/android/activity.php#result

caseyryan
06.10.2015, 20:07
Это прикол что ли?) Тебе уже 3 раза написали, что джава код нельзя запустить в AIR приложении. Не может AIR никак запускать другое приложение на андроиде. Есть ANE (Air Native Extension), но с таким уровнем знаний о них говорить смысла нет

Comer
06.10.2015, 20:10
Это прикол что ли?) Тебе уже 3 раза написали, что джава код нельзя запустить в AIR приложении.
Но ты же видишь, что этой теме посвящена целая статья! Даже с картинками, изображающими мобильный телефон! Прокрути её пониже. Для какой программы это написано?
====
Вот я и хочу научиться!

caseyryan
06.10.2015, 20:16
Но ты же видишь, что этой теме посвящена целая статья!
Я больше скажу, этой теме посвящены целые книги, видео конференции и куча обучалок на ютубе, lynda.com и еще целой куче ресурсов. И что?
Это разные языки и разные платформы. AIR != Java.
Под андроид можно код и на C++ написать и на JavaScript и на C# и еще на некоторых языках. И это не значит, что все это можно дернуть из AIR приложения

Comer
06.10.2015, 20:22
Под андроид можно код и на C++ написать и на JavaScript и на C# и еще на некоторых языках. И это не значит, что все это можно дернуть из AIR приложения
Понимаешь, я сделал один проект для Андроид, потратил много сил и времени. Самое главное то, что он работает! Я проверял. Но этот проект состоит из двух AIR-приложений, которые загружены на телефон в виде apk-файлов. Если я не найду способа, как из одного приложения запустить другое, то вся работа на смарку. Помоги мне, пожалуйста!

neonoviiwolf
06.10.2015, 20:56
Понимаешь, я сделал один проект для Андроид, потратил много сил и времени. Самое главное то, что он работает! Я проверял. Но этот проект состоит из двух AIR-приложений, которые загружены на телефон в виде apk-файлов. Если я не найду способа, как из одного приложения запустить другое, то вся работа на смарку. Помоги мне, пожалуйста!

Человек понял, потому что он пишет на другом языке, который называется Java. А тут, так уж вышло, пишут на AS2/3

Comer
06.10.2015, 21:12
Человек понял, потому что он пишет на другом языке, который называется Java. А тут, так уж вышло, пишут на AS2/3
Вот мне-то как раз и нужно на AS3. Поэтому я и спросил - это оно? Это то, что мне нужно? Если да, то я буду сидеть и разбираться.
http://developer.alexanderklimov.ru/android/activity.php#result

undefined
06.10.2015, 21:23
Дай я чтоль попробую.Эта статья про то как такое сделать на яве.К AS это отношения не имеет

neonoviiwolf
06.10.2015, 21:24
:wacko: это Java, вы знаете Java?

Добавлено через 2 минуты
Дай я чтоль попробую.Эта статья про то как такое сделать на яве.К AS это отношения не имеет

Я думаю человеку нужно дать возможность поразбираться, пусть потратить недельку другую, возможно это поможет сильно в будущем

Comer
06.10.2015, 21:31
:wacko: это Java, вы знаете Java?

Добавлено через 2 минуты


Я думаю человеку нужно дать возможность поразбираться, пусть потратить недельку другую, возможно это поможет сильно в будущем
Да я-то не против того, чтобы потратить недельку-другую на то, чтобы разобраться. Просто будет обидно, если я потрачу время, а через недельку выяснится, что не в том разбирался...

illuzor
06.10.2015, 21:38
Comer, если хочется разобраться, пожалуйста (http://gamedevblogs.ru/blog/android/1156.html).
Задача вполне решаема, но нужно знать, как к ней подойти.

Comer
06.10.2015, 21:40
... нужно знать, как к ней подойти.
Золотые слова! Именно этого я от всех вас и прошу - помогите мне найти правильный подход (нужный материал).

illuzor
06.10.2015, 21:42
Золотые слова! Именно этого я от всех вас и прошу - помогите мне найти правильный подход (нужный материал).
Я не понимаю. Вас носом что-ли тыкать нужно? В моём прошлом сообщении ссылка. На неё надо кликнуть. Там урок. Его нужно прочитать. И понять. Затем нужно применить полученные знания к вашей задаче.

Comer
06.10.2015, 21:43
Я не понимаю. Вас носом что-ли тыкать нужно? В моём прошлом сообщении ссылка. На неё надо кликнуть. Там урок. Его нужно прочитать. И понять. Затем нужно применить полученные знания к вашей задаче.

Я уже кликнул. Читаю. Спасибо за ссылку!

Добавлено через 12 минут
:wacko: это Java, вы знаете Java?


Скажите, а это же тоже ява-код? А ведь он запускается из AIR...
navigateToURL(new URLRequest("skype:SkypeName?call"));

illuzor
06.10.2015, 22:15
Скажите, а это же тоже ява-код?Нет, это ActionScript 3

Termer
07.10.2015, 19:48
Пишите своё ANE(Adobe native extension) на Java, это не так сложно. Рано или поздно вы столкнётесь с ANE поскольку android-air без этого взаимодействия с нативными сервисами не реализует весь потенциал.
Рекомендую урок: http://gamedevblogs.ru/blog/android/1156.html

Вставляете нужный вам Java код и радуетесь новым знаниям и открытиям. Удачи!

Bletraut
07.10.2015, 20:26
"skype:SkypeName?call"

Это Javascript и выполняется он через браузер.

AlexCooper
08.10.2015, 02:19
переходите на тёмную сторону, у нас есть печеньки:rtfm: (https://github.com/jakehilton/PackageManagerANE)

Comer
10.10.2015, 18:47
Спасибо Вам за реальную подсказку и поддержку!