LINUX.ORG.RU

Сколько весит софт на Qt для Android?

 ,


1

4

Сабж. Не могу найти софта на Qt для андроида, чтобы сравнить/узнать. На нём ведь пишут для андроида, да? :) Про то, что существует возможность подтянуть «расшаренную» версию Qt для всех qt-программ вкурсе, но меня интересует средний вес программ, которые носят Qt с собой. Речь о Qt5.

Перемещено Klymedy из talks


15-20 мегабайт, сложно сказать точнее, как впрочем и средний вес нативных приложений, зависит от ресурсов.

CrossFire ★★★★★ ()

Минимум 7 МиБ. Верхнего предела, очевидно, нет.
Core+Multimedia+собственно программа потянули на почти 8.

Stahl ★★☆ ()
Ответ на: комментарий от Stahl

Т.е. простой калькулятор на кутях для андроида будет весить в пределах 8 метров? Можешь дать ссылку на программу о которой речь?

vehn ()
Ответ на: комментарий от Stahl

Да. Например:
https://play.google.com/store/apps/details?id=org.asciigames.fillfield&hl=en

Оооо, круть, живой разработчик на qt для андроида :) Какую лицуху используешь для разработки? В блоге у них в комментах упоминалось, что для разработчиков-одиночек и молодых стартапов коммерческая лицуха будет стоить дешевле, чем 350 баксов в месяц, не вкурсе сколько?

Накидай минусов, пожалуйста, при разработке для андроида (и вообще) на кутях. Понимаю, что будет отчасти субъективно, но всё же, ато собираюсь жизнь свою связать с чем-то гуевым кроссплатформенным, вот выбираю в какое болото нырять :)

vehn ()
Ответ на: комментарий от vehn

LGPL. Мне ведь сам Qt изменять не нужно. И не думаю, что когда-либо будет нужно. И статически линковаться я с ним не собираюсь.

при разработке для андроида (и вообще) на кутях.

Самое страшное это обращение к телефонной книге, вибромотору и прочим сугубо андроидовским вещам. Разумеется Qt ничего не знает про вибромотор. Поэтому приходится такие штуки писать на Яве и использовать костыли для взаимодействия Явы и Си++.

Stahl ★★☆ ()

Как здесь уже отвечали, писать на Qt — это использование костылей. Лучше писать нативно на жабе. Притом, что существуют бесплатные прекрасно адаптированные иде и плагины к ним для полноценной разработки с эмуляторами любой андроид платформы.

Жаба вполне похожа на Си по синтаксису. Отличается только тем, что нет возможности напрямую адресовать память. Переход почти безболезненный.

Serg_HIS ()
Ответ на: комментарий от Stahl

LGPL. Мне ведь сам Qt изменять не нужно. И не думаю, что >когда-либо будет нужно. И статически линковаться я с ним не >собираюсь.

Я вот этот момент не совсем понял, когда читал их доку/википедию. Я правильно понимаю, что если не изменяю код самого qt-фреймворка и статически не линкуюсь с ним, то могу не открывать исходных кодов своего гениального мегатворения?

Самое страшное это обращение к телефонной книге, вибромотору и прочим сугубо андроидовским вещам. Разумеется Qt ничего не знает про вибромотор. Поэтому приходится такие штуки писать на Яве и использовать костыли для взаимодействия Явы и Си++.

Хм, так в этом же вся соль, когда фрейворк предоставляет апи к этим стандартным функциям мобильного устройства. В чём тогда суть за исключением нативных виджитов?

vehn ()
Ответ на: комментарий от Serg_HIS

Да так-то оно так, ну а хочется, допустим, чтобы сразу на многих платформах работало. Логика-то приложения одна и тажа.

Насчёт IDE. Ты про Android Studio? Я мельком встречал комментарии, что оно pain in the ass. Или они уже исправились?

vehn ()
Ответ на: комментарий от vehn

то могу не открывать

Именно так.

В чём тогда суть

Qt это кроссплатформенный фреймворк, а не фреймворк для Андроида. Т.е. программа, написанная на Qt с минимальными правками (а иногда и вовсе без них) скомпилируется под линь, БСДю, винду, андроид, иОС и может ещё подо что-то, чего я не помню.

Stahl ★★☆ ()
Ответ на: комментарий от vehn

Иде которое я использую eclipse.

Код классов которы делают логику приложения или там всякие киллер фичи типа своих компрессоров и шифровальщиков, тупо можно использовать загнав в jar библиотеки и использовать в любом жаба проекте. Интерфейсные фигни типа рисования кнопок под нужное разрешение экрана или использования вибро и акселерометра? — ну да, они всегда разные. На spark сервере их нет например. Или ты о какой переносимости?

Serg_HIS ()
Ответ на: комментарий от Stahl

Qt это кроссплатформенный фреймворк, а не фреймворк для Андроида. Т.е. программа, написанная на Qt с минимальными правками (а иногда и вовсе без них) скомпилируется под линь, БСДю, винду, андроид, иОС и может ещё подо что-то, чего я не помню.

Да это понятно. Но даже молодой phonegap/cordova предоставляет этот функционал для веб-девелоперов желающих писать софт «кроссмобильно». От кутей хочется ожидать не меньшего, учитывая возраст.

vehn ()
Ответ на: комментарий от vehn

Ну если ты можешь писать на JS, HTML и CSS и тебя это не напрягает, от действительно смотри в сторону phonegap/cordova. Qt это плюсы.

Stahl ★★☆ ()
Ответ на: комментарий от Stahl

Ну если ты можешь писать на JS, HTML и CSS и тебя это не напрягает

А зачем ты сюда привлек вуду куклы и тайные заклинания вебдевелопмента?

Serg_HIS ()
Ответ на: комментарий от Serg_HIS

Все уже поняли, что ты любишь Java, успокойся.

anonymous ()
Ответ на: комментарий от Stahl

Qt это кроссплатформенный фреймворк, а не фреймворк для Андроида. Т.е. программа, написанная на Qt с минимальными правками (а иногда и вовсе без них) скомпилируется под линь, БСДю, винду, андроид, иОС и может ещё подо что-то, чего я не помню.

И как, на практике это подтверждается? На примере твоего же проекта, скажем. Можно легко запустить на линуксе без вибромотора? :)

Midael ★★★★★ ()
Последнее исправление: Midael (всего исправлений: 2)
Ответ на: комментарий от Stahl

Не мешало бы поклацать самому на конечном девайсе перед выкладываением в плеймаркет. Хотябы час.

Serg_HIS ()

Если есть возможность, то использовать Java.

Если нужны нативные мощи, то привяжи лучше собственную либу к жабке и работай с ней оттуда. Qt на Android — слишком неповоротливо и жирно. Приложение с QtWidgets будет мегабайт 10-20 весить. С QML может немного меньше.

a1batross ★★★★★ ()
Ответ на: комментарий от Stahl

Один из немногих плюсов кроссплатформенной разработки. :)

a1batross ★★★★★ ()
Ответ на: комментарий от Serg_HIS

Жаба вполне похожа на Си по синтаксису. Отличается только тем, что нет возможности напрямую адресовать память. Переход почти безболезненный.

Лол.

DarkEld3r ★★★★★ ()
Ответ на: комментарий от Stahl

И статически линковаться я с ним не собираюсь.

насколько я понимаю, Qt в последних версиях в принципе статической собрать нельзя, либо это какой-то слишком большой героизм, за который никто не берётся.

Разумеется Qt ничего не знает про вибромотор. Поэтому приходится такие штуки писать на Яве и использовать костыли для взаимодействия Явы и Си++.

а почему на жабе? ведь внутренности Андроида сишные, и вся начинка вроде бы должна управляться через обычные системные вызовы.

Iron_Bug ★★★★★ ()
Ответ на: комментарий от Iron_Bug

внутренности Андроида сишные, и вся начинка вроде бы должна управляться через обычные системные вызовы.

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

AF ★★★ ()
Ответ на: комментарий от AF

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

Iron_Bug ★★★★★ ()
Последнее исправление: Iron_Bug (всего исправлений: 1)
Ответ на: комментарий от Iron_Bug

В сети полно хомячков, которые за мир жапки не вылазят.
Инфы о сишной части андроида на порядок меньше.
И если ты дергаешь из своего кода документированный явовый метод, то у тебя есть гарантия того, что в следующей версии андроида твоя программа будет работать. А вот если дергаешь кишки, то нет.
Впрочем случаи бывают разные. Емнип, тот же скайп напрямую юзает андроидовскую подсистему с видеокодеками, и другого пути у него тупо нет. Т к в жапке тупо нету АПИ для низкоуровневой работы.

AF ★★★ ()
Ответ на: комментарий от AF

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

Iron_Bug ★★★★★ ()
Ответ на: комментарий от Serg_HIS

Да нет, это проблема Qt, на С/С++. Нормальные игровые движки вполне предоставляют доступ и к вибромоторам, и к другим интересным вещам. На десктопе функции работы с этим хозяйством являются банальными заглушками. И всем норм.

KivApple ★★★★★ ()

Stellarium Mobile вполне себе на Qt и работает на Android/iOS/etc. Порядка 43 Мб, в которые входят текстуры и каталоги - которые и составляют львиную долю этого размера.

alex-w ★★★★★ ()
Ответ на: комментарий от anonymous

До уровня того же Eclipse этой поделке ещё рости и рости.

EXL ★★★★★ ()
Ответ на: комментарий от anonymous

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

Iron_Bug ★★★★★ ()
Последнее исправление: Iron_Bug (всего исправлений: 2)
Ответ на: комментарий от Iron_Bug

Просто я думал, что доступ к системным API мимо жабки закрыт на нерутованном девайсе. Надо бы поинтересоваться на досуге...

anonymous ()

Не могу найти софта на Qt для андроида, чтобы сравнить/узнать.

2GIS, например.

А так, хеллоуворд у вас будет весит мегабайт 7.

RiseOfDeath ★★★★ ()
Ответ на: комментарий от anonymous

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

Iron_Bug ★★★★★ ()
Ответ на: комментарий от vehn

Android Studio самая прекрасная IDE которая только может быть.
По сравнению с Eclipse — небо и земля

I60R ★★ ()
Ответ на: комментарий от Solace

мы в одной компании долго-долго искали iOS программиста. но не просто формочки клепать, а чтобы API знал, чтобы в сокеты мог. зарплату предлагали очень нехилую. и хрен там. не нашли никого. приходили какие-то хипстеры, которые могли только гуй, и то коряво. судя по всему, эта ниша у нас мало занята, а запросы на специалистов есть.

Iron_Bug ★★★★★ ()
Ответ на: комментарий от Iron_Bug

Для любителей «в кваку гонять» на телефонах есть сейлфишОС. Там къют — основной фреймворк. Да вот беда, никто не хочет кваку на ней писать, а юзеры всё андроидные приложения используют.

Virtuos86 ★★★★★ ()
Ответ на: комментарий от Virtuos86

ну, это другой вопрос. если бы меня интересовала квака, я б написала. но я не игроман ни разу. наверное, и другие сишные писатели мало интересуются разработкой игр. хотя есть, конечно, спецы. но мне вот в кернел интереснее играть, чем в кваку :)
честно сказать, я и к Qt отношусь с подозрением. там есть, над чем работать, и очень серьёзно. она далека от совершенства и её разработчики этот бардак не разгребают с низов, а наращивают костыли сверху. технический долг, который однажды её взорвёт. я-то ваще фанат хардкора и хочу на сишечке, максимум на плюсах без всякого фреймворка хреначить. это самое оптимальное, по-моему.

Iron_Bug ★★★★★ ()
Последнее исправление: Iron_Bug (всего исправлений: 1)
Ответ на: комментарий от Virtuos86

Да вот беда, никто не хочет кваку на ней писать, а юзеры всё андроидные приложения используют.

На андроид все тяжелые игрушки на С++ пишут, если что. Из соображений скорости и переносимости на iOS.

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.