Существуют ли какие-либо браузеры Android, которые поддерживают загрузку Java-апплета в браузере?

20

У нас есть клиент, который переключается с Windows Mobile (и IE Mobile) на устройства на базе Android.

У нас есть определенное программное обеспечение, которое мы развертываем для своих сотрудников WM через апплет ActiveX, который загружается в IE Mobile, но, очевидно, Android не будет поддерживать ActiveX. Поэтому нам нужно будет перенастроить наше приложение на платформу для Android, и Java является очевидным выбором для этого.

Существуют ли какие-либо браузеры Android, которые поддерживают загрузку Java-апплета в браузере, во многом аналогично тому, как апплет ActiveX загружается в IE (т.е. он полностью интегрируется в процесс просмотра).

samthebrand
источник

Ответы:

9

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

Почему бы просто не скачать Android SDK и создать собственное приложение? Вам не нужно продавать его на рынке, но если ваше приложение может быть использовано другими, вы можете сделать это, что поможет вернуть часть денег, потраченных на разработку.


источник
1
Why not just download the Android SDK and make your own app- потому что наше приложение должно быть максимально кроссплатформенным. Это невероятно сложно, и затраты на его перевод из веб-приложения в автономное приложение просто феноменальны. Спасибо за головы, хотя. Так что абсолютно невозможно встроить какой-либо дополнительный функционал в браузер? Главное, что мы делаем - собираем подписи, как курьер после доставки. В IE это был кусок пирога с крошечным элементом управления ActiveX.
Если ваше приложение JAVA существует на веб-сайте, на который вы указали свой телефон, возможно, вы сможете запустить код JAVA таким образом, но я все еще сомневаюсь в этом, потому что в ОС Android нет собственного способа понимания кода JAVA, как вы и я. знаю это. Версия JAVA на Android модифицирована. Лучше всего было бы заняться созданием приложений для разных платформ или использованием другого языка, такого как HTML5 или flash (не поддерживается на устройствах Apple без джейлбрейка).
Извините за двойной провал, но, как вы знаете, создание приложений для Apple и Android теперь действительно легко. У них есть системы графического интерфейса, которые могут сделать большую часть работы за вас. Может быть не так сложно, как вы думаете. Я бы хотя бы расследовал.
1
Поскольку Android 2.2 и выше (и некоторые телефоны под управлением Android 2.1) могут запускать Flash-апплеты в браузере, Flash может стать для вас лучшим кроссплатформенным выбором, чем Java.
GAThrawn
1
в то время как Android Dalvik не совместим с байт-кодом с байт-кодом JVM; Java-код, который не использует библиотеки, которые опущены в Android (например, Swing / AWT), должен быть в значительной степени совместим с исходным кодом, поэтому вам нужно будет только перекомпилировать, и большинство вещей должно работать, пока он не использует эти пропущенные библиотеки ,
Ли Райан
3

Единственные два варианта, о которых я могу подумать, - это создать кроссплатформенное мобильное приложение HTML5, которое будет работать по всему спектру, сказав, что я могу понять корпоративную среду, желающую цепляться за IE для поддержки приложений ActiveX в браузере, который наводит вас на мысль, что Java на рабочем столе такая же, как на Android, что не соответствует действительности .

По большей части и во втором варианте SDK охватывает подмножество Java 5, коллекции, apache и т. Д., С точки зрения синтаксиса, идентичны, поэтому, возможно, перекомпиляция бизнес-логики и новый пользовательский интерфейс для интерфейса для Платформа Android. (Да, вы можете перекомпилировать этот целевой пакет Android SDK ...)

Короче говоря, никто не может обойтись, если не будет мотива и стремления восстановить его, чтобы он был совместим с устройствами сейчас и в будущем.

редактировать

После комментариев, оставленных ниже, резюмируем:

  • Браузер не поддерживает запуск апплетов Java внутри себя. JRE! = Android Java Runtime, также известный как DalvikVM. В настольной Java используется JavaVM / JRE, одобренная Sun / Oracle и OpenJava JDK, санкционированная Oracle. JRE = среда выполнения Java

  • Терминальная IDE, которая содержит «Java-компилятор», скорее всего (я установлю его и сообщу об этом, кстати), это крайне ограниченная урезанная версия OpenJDK, единственная доступная для ARM, согласно этому блогу которые не могут создавать собственные приложения Java Windowing, такие как Swing или JavaBeans, по той простой причине, что версия Java Runtime Environment сильно отличается для Android и сильно оптимизирована для собственного процессора.

Кроме того, DalvikVM ничего не знает о Swing, JavaBeans и т. Д., Поэтому объясняет, что Java на настольном компьютере отличается от Java на Android.

Что касается представления о том, что Android очень похож на Linux, то я придерживаюсь того мнения, что это не Linux, а само ядро ​​linux, но инструменты пользовательской среды предоставляются busybox , более того, запускается собственный C-код. временная библиотека под Android называется бионической и ограничена из-за таких маленьких процессоров, как ARM. По сравнению с настольной версией Linux есть библиотека времени выполнения, предоставляемая gcc - GNU C Library или более широко известная как glibc - которая поддерживает гораздо больше специфических особенностей C / C ++, таких как STL, Boost, полная обработка исключений. Это моя точка зрения, и она отделена от темы и отклоняется от проторенного пути. :)

t0mm13b
источник
Корпоративная система нуждается в Java, и я ничего не могу с этим поделать. Единственное, что я могу сделать, это настроить планшет Android. Я не совсем понимаю, почему браузер с открытым исходным кодом плюс jre нельзя заставить работать на планшете с ОС Android.
Феликс
1
Браузер не поддерживает запуск апплетов Java внутри себя. JRE! = Android Java Runtime, также известный как DalvikVM. Java для настольных компьютеров использует JavaVM, одобренный Sun / Oracle и OpenJava JDK ...
t0mm13b
Правильно. Я не понимаю, почему openjava jdk не может быть скомпилирован и установлен для запуска в Android. Может быть, у меня слишком оптимистичный взгляд на то, насколько Android похож на Linux?
Феликс
Интересно, что есть Terminal-ide.com, который содержит компилятор Java, кажется.
Феликс
1
Я ценю уход с пути, спасибо! Я все больше и больше убеждаюсь , что в настоящее время он является вполне возможно , что это просто , что никто не сделал настройки и компиляции работы еще. Я должен добавить, что я знаю, что родной далвиквм не имеет значения. Мой вопрос никогда не был об этом. Речь шла о ком-то, кто собирает настольный компьютер для Android. Я думаю, что уже есть версия ARM. Просто не андроид один.
Феликс
2

Самое близкое, что я нашел, это http://www.apogee.com/products/cjre-a

К сожалению, как указано на этой странице:

Обратите внимание, что Apogee временно приостановил дальнейшее развитие CJREs + A в июне 2012 года из-за недостаточного спроса на них. Пожалуйста, свяжитесь с Apogee, если вы заинтересованы в CJRE + A, ориентированном на устройство под управлением Android по вашему выбору для «массового» распространения среди ваших клиентов и / или других третьих лиц.

... и загрузить / демо-версию нигде не найти.

Взято со страницы их продуктов http://www.apogee.com/products , звучит так, как будто было бы здорово иметь:

CJRE + A - «CJRE для Android» подходит для устройств под управлением Android v4.x или выше, которым необходимо выполнять приложения Java SE 5 и SE 6 в дополнение к выполнению приложений Android.

Мы все еще можем мечтать. Я не связывался с ними. Мне известно о многих компаниях, которые ищут эту функциональность. Я не могу себе представить, что это будет слишком быстро (или, скажем, медленнее, чем вспышка)?

Я не обращался к Apogee, возможно, стоит попробовать ... Если кто-нибудь найдет решение, пожалуйста, держите нас в курсе! Благодарю.

TryTryAgain
источник
1

Android по-прежнему не поддерживает Java-апплеты и не будет работать без основной работы.

Java в Android не «настоящая» Java - это пользовательская версия, написанная Google. Приложения Android могут быть написаны на Java, но они преобразуются в Dalvik во время компиляции.

Таким образом, почти невозможно разработать браузер, совместимый с апплетами Java.

Лиам В
источник
Есть ли причина, по которой сторонние браузеры не могут включать поддержку плагинов Java? Я заметил, что m0rtadelo на stackoverflow.com/questions/2433338/… на самом деле утверждает, что он заработал! Я на самом деле заинтересован только в том, чтобы заставить его работать на планшете, если это что-то меняет.
Феликс
1
@ Феликс, потому что Android не имеет его в системе. m0rtadelo запускала целую ОС внутри своего устройства, и именно так они и заработали.
Лиам W
ОК ... Я не против сделать это на моем планшете в качестве обходного пути, если это не опасно, и это единственный вариант. Может быть, это отдельный вопрос.
Феликс
0

В Stack Overflow есть пост, озаглавленный «Есть ли возможность запускать апплеты на Android или Blackberry», который предоставит вам больше информации, его можно найти здесь:

/programming/2433338/is-there-a-possibility-to-run-applets-on-android-or-blackberry

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

Саймон
источник