Tak jak w temacie. Z czego to wiem, Qt niestety jest płatne jeśli chodzi o aplikacje mobilne.
Qt jest na LGPL. Jeśli nie przeszkadzają Ci jego wymogi (a mogą przeszkadzać) to możesz go spokojnie użyć. Ja innych bibliotek pod androida nie znam.
@kq A jakie to dokładnie są wymogi? Bo w jednym temacie mówiłeś, że trzeba kupić licencję jak chce się pisać aplikacje mobilne z zamkniętym kodem: http://4programmers.net/Forum/C_i_C++/275196-czy_warto_uzywac_qt?p=1277840#comment-308369
A ja właśnie też w celach zarobkowych chciałem się zająć Androidem.
Od jakiegoś czasu można pisać appki na Androida w C++
https://www.learn2crack.com/2016/01/ndk-android-studio.html i nawet w AndroidStudio
@amb00 podpisuję się pod tym co napisałem :) Jeśli robisz apkę z Qt na androida (lub iOS) to linkujesz statycznie. Wobec tego musisz pliki obiektowe/źródła udostępnić lub użyć innej (płatnej) licencji.
@up: nie wiem czy NDK bym rozumiał jako libkę do tworzenia aplikacji, tam są straszne podstawy :)
Mniej bolesna będzie nauka Javy (albo trochę bardziej przyjemnie, czyli np. Kotlin) niż pisanie w C++ całej aplikacji na Androida (chociaż w teorii NDK oferuje taką możliwość).
Jakich aplikacji? Jeśli chcesz napisać grę to możesz użyć cocos2d-x
, ktory jest na licencji MIT.
kq napisał(a):
Jeśli robisz apkę z Qt na androida (lub iOS) to linkujesz statycznie.
Mogę prosić o wyjaśnienie tego stwierdzenia? Chodzi o to, że jakaś licencja zmusza do tego?
Jakiś czas temu zrobiłem 2 czy 3 aplikację na Androida w Qt/C++/QML. Aplikację były na użytek własny oraz znajomej, więc nie przejmowałem się licencjami.
Obczaiłem 2 sposoby deploymentu.
1 - użycie Ministro, który sam ściąga biblioteki Qt na urządzenie z Androidem, a potem czyni je dostępne dla wszystkich aplikacji Qt zrobionych w ten sposób.
2 - wpakowanie bibliotek libQt5*.so razem z plikiem .so, w którym znajduje się własny kod oraz wszystkimi libpluginami.so i libqmlami.so i innymi libami C++ do pliku apk.
W obu przypadkach linkowanie wygląda mi na dynamicze. A jeśli linkowanie dynamiczne jest technicznie możliwe, to nie trzeba linkować statycznie... i nie trzeba udostępniać źródeł/płacić hajsu za licencję. Nie wiem jak jest na iOS.
Więc jak to jest? Pod jaką licencję podchodzą te 2 sposoby?
Kwestia niespodziewanie zrobiła się dla mnie bardzo ważna. To co napisał @kq trochę nie daje mi spokoju.
To co tu napisali: https://wiki.qt.io/Licensing-talk-about-mobile-platforms#Qt_for_Android_.2F_Necessitas wydaje się potwierdzać moją teorię, tzn linkowanie może być dynamiczne, a zgodnie z LGPLv3, jeśli linkowanie z Qt będzie dynamiczne, to nie trzeba będzie udostępniać źródeł/obiektów. To samo wynika z tej tabelki: https://www.qt.io/licensing-comparison/.
Może ktoś potwierdzić, że mam rację i dobrze to wszystko rozumiem?