Pull to refresh

Comments 17

Какой объем у apk и ipa получается на таком простом примере?
Вы, вероятно, говорите о размере несжатого приложения, ipa получится в районе 15 Mb, может даже меньше.
Немного цифр:
apk занимает 7,1 мб
ipa занимает 20 мб

Вдобавок вышел Qt 5.8, а с ним вышел Qt Lite, там обещают ещё более легкий apk и ipa. К сожалению, до Qt Lite я не успел добраться пока что, а потому цифр не скажу.
Подтверждаю 7 мб, протестировал на приложении gallery, демонстрирубщем компоненты Qt Quick Controls 2. В эти 7 мб входят Gui, Network (с отличным QNetworkAccessManager'ом внутри), естественно Core (с QJson и прочими прелестями). Совсем не много по меркам современной разработки!

P.S. По Qt Lite заметил странную вещь — в документации ничего конкретного нет, в статьях тоже. Я не хочу сказать, что нас обманули — работу по перестройке системы сборки проделали большую, практически с нуля переписали, но готового howto пока нет.
Интересно чем вызвано такой отрыв ipa от apk. А сколько native архитектур в apk? armeabi, armeabi-v7a, x86?
Еще встречался с тем, что выложенный в стор ipa становился еще больше, рядом с Payload добавлялась папочка SupportFiles или как то так. В ней были файлы в основном относящиеся в Swift, не смотря на то что в Payload эти dylib были и для запуска на моем устройстве этого было достаточно, но они отличаются, возможно для поддержки разных версий устройств и ios. Было бы интересно если бы кто провел такой эксперимент с Qt приложением.
Один и тот же вопрос из раза в раз. Популярнее только вопрос «А вы сами проверяли PVS Studio с помощью PVS Studio?» к постам Andrey2008. Цена не так велика, как профит от покрытия всех популярных платформ одним исходным кодом. Тем более как действительно заметил Vonabirg ниже разработка библиотеки в этом направлении движется, и пока Ваш продукт будет разрабатываться и готовиться к выходу, дела станут еще лучше.
Да я собственно не против, я потому и спрашиваю что профит кроссплатформа как раз очень интересен.
Я понимаю, что цель была показать вызов нативного кода, но как минимум на iOS можно обойтись без него:

Info.plist:
	<key>UIRequiresFullScreen</key>
	<true/>
	<key>UIStatusBarStyle</key>
	<string>UIStatusBarStyleLightContent</string>
	<key>UIViewControllerBasedStatusBarAppearance</key>
	<false/>

main.qml:
ApplicationWindow {
    visible: true
    flags: Qt.MaximizeUsingFullscreenGeometryHint
    ...
}

Вы совершенно правы, цель именно показать вызов нативного кода. По факту, вы сделали всё то же самое, что и я, но другим путём.

Просто любопытно: какие компиляторы, из тех, которыми можно собрать Qt, не поддерживают pragma once?

Я не спорю, это модно. Я бы и сам его использовал, и вроде бы как даже википедии и прочие источники уверяют в том, что с ним все ок. Однако, рекомендую почитать вот этот пост на SO: Является ли #pragma once частью стандарта
Кроме того, само то, что это extension говорит о том, что это implementation-defined-вещь. Собственно, если почитать этот пост на SO, там тоже про это сказано.

Это (и разное другое) читал, о потенциальных подводных камнях в курсе. Собственно, раньше, как раз начитавшись "умных советов", использовал и то и другое — мол компилятор может уметь обрабатывать эту прагму быстрее, а если не поддерживаемые прагмы по стандарту просто пропускаются. Затем, после участия в некотором количестве вполне себе кроссплатформенных проектов, где использовали pragma once и "не заморачивались", стал проще к этому относиться.


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

Есть вопрос по лицензии qt на мобилах
либа же может как динамическая подключаться и тогда можно использовать ee бесплатную opensource версию?
или есть какие-то подводные камни

Я тут почитал ответ на «Commercial edition of iOS or Android etc?» и чето ничего не понял )))
https://wiki.qt.io/Licensing-talk-about-mobile-platforms

может кто в теме что и как?
Использовать можно.
Sign up to leave a comment.

Articles

Change theme settings