Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Mobile and Embedded
  4. Qt Quick vs Flutter
QtWS25 Last Chance

Qt Quick vs Flutter

Scheduled Pinned Locked Moved Unsolved Mobile and Embedded
38 Posts 11 Posters 21.0k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • T tomy
    24 Mar 2020, 15:20

    Thanks all,

    So to sum up, still QtQuick is better for mobile apps and the real winner. :)

    E Offline
    E Offline
    ekkescorner
    Qt Champions 2016
    wrote on 26 Mar 2020, 17:04 last edited by JKSH
    #27

    @tomy the new 'Small Business License' will help to make the right decision: https://www.qt.io/blog/available-now-qt-for-small-businesses
    now up to 250K $ revenue - only 499$ p.a. -- embedded, mobile, desktop -- up to 4 devs

    ekke ... Qt Champion 2016 | 2024 ... mobile business apps
    5.15 --> 6.8 https://t1p.de/ekkeChecklist
    QMake --> CMake https://t1p.de/ekkeCMakeMobileApps

    1 Reply Last reply
    3
    • E Offline
      E Offline
      edip
      wrote on 31 Mar 2020, 10:38 last edited by edip
      #28

      I use Qt for Android on Play Store. I usually use JavaScript to develop QML apps. I had to search for an alternative for these reasons;

      • The most important reason, app size is too much. Hello World QML app takes more than 40 MB on Android, APK size is 13 MB+. Qt copies all QML modules to APK's assets folder and it also copies some unused libraries to libs folder. This increases APK size.
      • Basic things like updating, editing, saving a dynamic list model in QML-JS are tedious for me.
      • Learning c++ with Qt takes time :)
      • There is not officially mobile advertising platform support (I use an open source project for Qt and Admob)
      • QML development is too slow. QML 1.0 made Nokia N9's (2011) component seems more advanced than QQC2 Material component
      • License for commercial is very expensive for me.

      I try to learn Flutter with an Udemy course. Flutter has more native looking interface compared to React Native and Native Script. Flutter has less app size compared to QML apps. It can also be developed for Web. Qt's Web Assembly is too slow compared to Flutter Web. Its license is more free than Qt so I can have commercial apps. I think Dart libraries will increase in the near future.
      Qt supports c++ and many Javascript libraries. This makes it easy to develop complex apps with Qt. I will continue to develop my complex projects with Qt. I have simple QML apps that are almost 90MB on Play Store. I think to convert them to Flutter in order to reduce app size. I think to use Flutter for simple apps for now.

      T T 2 Replies Last reply 31 Mar 2020, 11:27
      1
      • E edip
        31 Mar 2020, 10:38

        I use Qt for Android on Play Store. I usually use JavaScript to develop QML apps. I had to search for an alternative for these reasons;

        • The most important reason, app size is too much. Hello World QML app takes more than 40 MB on Android, APK size is 13 MB+. Qt copies all QML modules to APK's assets folder and it also copies some unused libraries to libs folder. This increases APK size.
        • Basic things like updating, editing, saving a dynamic list model in QML-JS are tedious for me.
        • Learning c++ with Qt takes time :)
        • There is not officially mobile advertising platform support (I use an open source project for Qt and Admob)
        • QML development is too slow. QML 1.0 made Nokia N9's (2011) component seems more advanced than QQC2 Material component
        • License for commercial is very expensive for me.

        I try to learn Flutter with an Udemy course. Flutter has more native looking interface compared to React Native and Native Script. Flutter has less app size compared to QML apps. It can also be developed for Web. Qt's Web Assembly is too slow compared to Flutter Web. Its license is more free than Qt so I can have commercial apps. I think Dart libraries will increase in the near future.
        Qt supports c++ and many Javascript libraries. This makes it easy to develop complex apps with Qt. I will continue to develop my complex projects with Qt. I have simple QML apps that are almost 90MB on Play Store. I think to convert them to Flutter in order to reduce app size. I think to use Flutter for simple apps for now.

        T Offline
        T Offline
        tomy
        wrote on 31 Mar 2020, 11:27 last edited by tomy
        #29

        @edip

        Hello World QML app takes more than 40 MB on Android

        There might be a problem, say, building the app using "Debug", with the case, otherwise it shouldn't be that much for such a trivial app.
        I have a good but basic game (2D) created using QtQuick with many features like, images, sounds, DB and other items working very good on all android devices. It's only 21MB. :)

        E 1 Reply Last reply 31 Mar 2020, 12:14
        1
        • T tomy
          31 Mar 2020, 11:27

          @edip

          Hello World QML app takes more than 40 MB on Android

          There might be a problem, say, building the app using "Debug", with the case, otherwise it shouldn't be that much for such a trivial app.
          I have a good but basic game (2D) created using QtQuick with many features like, images, sounds, DB and other items working very good on all android devices. It's only 21MB. :)

          E Offline
          E Offline
          edip
          wrote on 31 Mar 2020, 12:14 last edited by
          #30

          @tomy I tested an empty project with release mode ARMv8, the APK was 10.8 MB, after installation it is 44.3 MB on device on Qt 13.0. I was wrong about 13MB :) Your game's APK is 21MB or it is the size after installation?

          J 1 Reply Last reply 31 Mar 2020, 12:19
          0
          • E edip
            31 Mar 2020, 12:14

            @tomy I tested an empty project with release mode ARMv8, the APK was 10.8 MB, after installation it is 44.3 MB on device on Qt 13.0. I was wrong about 13MB :) Your game's APK is 21MB or it is the size after installation?

            J Offline
            J Offline
            J.Hilk
            Moderators
            wrote on 31 Mar 2020, 12:19 last edited by
            #31

            important question @edip

            did you sign the app with a legit key ? The debug information are not striped if its not signed, even in release mode


            Be aware of the Qt Code of Conduct, when posting : https://forum.qt.io/topic/113070/qt-code-of-conduct


            Q: What's that?
            A: It's blue light.
            Q: What does it do?
            A: It turns blue.

            1 Reply Last reply
            1
            • E Offline
              E Offline
              edip
              wrote on 31 Mar 2020, 12:29 last edited by edip
              #32

              It was working before signing. After signing I get the error :D

              Error: A JNI error has occurred, please check your installation and try again
              Exception in thread "main" java.lang.UnsupportedClassVersionError: com/android/apksigner/ApkSignerTool has been compiled by a more recent version of the Java Runtime (class file version 53.0), this version of the Java Runtime only recognizes class file versions up to 52.0
              	at java.lang.ClassLoader.defineClass1(Native Method)
              	at java.lang.ClassLoader.defineClass(ClassLoader.java:757)
              	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
              	at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
              	at java.net.URLClassLoader.access$100(URLClassLoader.java:74).
              	at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
              	at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
              	at java.security.AccessController.doPrivileged(Native Method)
              	at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
              	at java.lang.ClassLoader.loadClass(ClassLoader.java:419)
              	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
              	at java.lang.ClassLoader.loadClass(ClassLoader.java:352)
              	at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:495)
              apksigner command failed.
              

              When I don't use Qt for a few months I get this kind of weird errors :) But as you said after signing, APK size reduced to 9.9 MB.
              Edit: After uninstalling Android SDK Build Tools 30 rc2 version, it worked.

              1 Reply Last reply
              2
              • E edip
                31 Mar 2020, 10:38

                I use Qt for Android on Play Store. I usually use JavaScript to develop QML apps. I had to search for an alternative for these reasons;

                • The most important reason, app size is too much. Hello World QML app takes more than 40 MB on Android, APK size is 13 MB+. Qt copies all QML modules to APK's assets folder and it also copies some unused libraries to libs folder. This increases APK size.
                • Basic things like updating, editing, saving a dynamic list model in QML-JS are tedious for me.
                • Learning c++ with Qt takes time :)
                • There is not officially mobile advertising platform support (I use an open source project for Qt and Admob)
                • QML development is too slow. QML 1.0 made Nokia N9's (2011) component seems more advanced than QQC2 Material component
                • License for commercial is very expensive for me.

                I try to learn Flutter with an Udemy course. Flutter has more native looking interface compared to React Native and Native Script. Flutter has less app size compared to QML apps. It can also be developed for Web. Qt's Web Assembly is too slow compared to Flutter Web. Its license is more free than Qt so I can have commercial apps. I think Dart libraries will increase in the near future.
                Qt supports c++ and many Javascript libraries. This makes it easy to develop complex apps with Qt. I will continue to develop my complex projects with Qt. I have simple QML apps that are almost 90MB on Play Store. I think to convert them to Flutter in order to reduce app size. I think to use Flutter for simple apps for now.

                T Offline
                T Offline
                Tom_H
                wrote on 3 Apr 2020, 19:10 last edited by
                #33

                @edip For mobile ads I use QtAndroidTools. It works very well. I use it for banner ads and will soon try the rewarded video thing.

                1 Reply Last reply
                1
                • E Offline
                  E Offline
                  edip
                  wrote on 11 Apr 2020, 10:32 last edited by edip
                  #34

                  Thanks for suggestion @Tom_H I also use it and I use banner ads. It was working 2 months ago all the time. But It recently doesn't work on my phone. Also banner of my Qt apps didn't work for other people's device in my country. As far as I see from the impressions, it works other countries. Maybe it is because of there is no suitable ad to display. Test ads work properly.
                  Edit: The ads are working now .

                  1 Reply Last reply
                  0
                  • EntonyE Offline
                    EntonyE Offline
                    Entony
                    Banned
                    wrote on 13 Oct 2020, 12:45 last edited by
                    #35
                    This post is deleted!
                    1 Reply Last reply
                    0
                    • T tomy
                      11 Mar 2020, 21:37

                      Hello all,

                      Why do you think Qt Quick is better than Flutter for Android and iOS apps? What are the advantages and disadvantages of Qt Quick over Flutter for that area, please? How about apps for embedded devices by the two?

                      I did a research on the Web for the case but couldn't find a comprehensive and good answer.

                      Thanks beforehand.

                      O Offline
                      O Offline
                      ofunk1
                      wrote on 3 Apr 2024, 22:48 last edited by
                      #36

                      @tomy said in Qt Quick vs Flutter:

                      Hello all,

                      Why do you think Qt Quick is better than Flutter for Android and iOS apps? What are the advantages and disadvantages of Qt Quick over Flutter for that area, please? How about apps for embedded devices by the two? Recently I needed to develop sports software for myself, I came across a post by https://www.cogniteq.com/blog/how-wearable-technology-changing-sports-industry company and they develop mainly in Flutter and their applications look great.

                      I did a research on the Web for the case but couldn't find a comprehensive and good answer.

                      Thanks beforehand.

                      When comparing Qt Quick and Flutter app development for Android and iOS, it is important to consider the various factors that can affect the success of your project. Here are a few key points to consider:

                      Benefits of Qt Quick apps for Android and iOS:

                      Cross-Platform Compatibility: Qt Quick allows you to write code once and deploy it across multiple platforms, including Android and iOS, reducing development time and effort.
                      Own performance. Qt Quick apps can achieve near-native performance on Android and iOS devices, delivering a smooth and fast user response.
                      Mature Ecosystem: Qt has been around for a long time and has a mature ecosystem with extensive documentation, extensive libraries, and strong community support.
                      C++ integration: Qt Quick provides seamless integration with C++ code, allowing developers to use existing libraries and tools to extend functionality.
                      Custom UI Design: Qt Quick provides powerful tools for designing user interfaces with smooth animations, transitions and effects to create visually appealing applications.
                      Disadvantages of Qt Quick apps for Android and iOS:

                      Steeper learning curve: Qt Quick may have a steeper learning curve compared to Flutter, especially for developers who are not familiar with the Qt framework or C++ programming.
                      Less extensive widget library. Although Qt Quick offers a number of UI components and controls, its widget library may not be as extensive as Flutter, which may limit the design options for some projects.
                      Platform-specific considerations. Despite its cross-platform capabilities, Qt Quick may still require platform-specific adjustments and optimizations to ensure optimal performance and usability on Android and iOS devices.
                      For embedded devices

                      Qt Quick has been widely used for developing applications for embedded devices due to its small size, efficient performance, and support for hardware-accelerated graphics. It provides a robust foundation for building user interfaces for a variety of embedded platforms, including IoT devices, smart devices, in-vehicle infotainment systems, and more.

                      In conclusion, while both Qt Quick and Flutter offer powerful tools for developing cross-platform applications, the choice between them depends on your project's specific requirements, technical knowledge and preferences. It's important to carefully evaluate the strengths and weaknesses of each platform to determine which one best suits your needs.

                      sierdzioS 1 Reply Last reply 4 Apr 2024, 06:52
                      0
                      • O ofunk1
                        3 Apr 2024, 22:48

                        @tomy said in Qt Quick vs Flutter:

                        Hello all,

                        Why do you think Qt Quick is better than Flutter for Android and iOS apps? What are the advantages and disadvantages of Qt Quick over Flutter for that area, please? How about apps for embedded devices by the two? Recently I needed to develop sports software for myself, I came across a post by https://www.cogniteq.com/blog/how-wearable-technology-changing-sports-industry company and they develop mainly in Flutter and their applications look great.

                        I did a research on the Web for the case but couldn't find a comprehensive and good answer.

                        Thanks beforehand.

                        When comparing Qt Quick and Flutter app development for Android and iOS, it is important to consider the various factors that can affect the success of your project. Here are a few key points to consider:

                        Benefits of Qt Quick apps for Android and iOS:

                        Cross-Platform Compatibility: Qt Quick allows you to write code once and deploy it across multiple platforms, including Android and iOS, reducing development time and effort.
                        Own performance. Qt Quick apps can achieve near-native performance on Android and iOS devices, delivering a smooth and fast user response.
                        Mature Ecosystem: Qt has been around for a long time and has a mature ecosystem with extensive documentation, extensive libraries, and strong community support.
                        C++ integration: Qt Quick provides seamless integration with C++ code, allowing developers to use existing libraries and tools to extend functionality.
                        Custom UI Design: Qt Quick provides powerful tools for designing user interfaces with smooth animations, transitions and effects to create visually appealing applications.
                        Disadvantages of Qt Quick apps for Android and iOS:

                        Steeper learning curve: Qt Quick may have a steeper learning curve compared to Flutter, especially for developers who are not familiar with the Qt framework or C++ programming.
                        Less extensive widget library. Although Qt Quick offers a number of UI components and controls, its widget library may not be as extensive as Flutter, which may limit the design options for some projects.
                        Platform-specific considerations. Despite its cross-platform capabilities, Qt Quick may still require platform-specific adjustments and optimizations to ensure optimal performance and usability on Android and iOS devices.
                        For embedded devices

                        Qt Quick has been widely used for developing applications for embedded devices due to its small size, efficient performance, and support for hardware-accelerated graphics. It provides a robust foundation for building user interfaces for a variety of embedded platforms, including IoT devices, smart devices, in-vehicle infotainment systems, and more.

                        In conclusion, while both Qt Quick and Flutter offer powerful tools for developing cross-platform applications, the choice between them depends on your project's specific requirements, technical knowledge and preferences. It's important to carefully evaluate the strengths and weaknesses of each platform to determine which one best suits your needs.

                        sierdzioS Offline
                        sierdzioS Offline
                        sierdzio
                        Moderators
                        wrote on 4 Apr 2024, 06:52 last edited by
                        #37

                        @ofunk1 thank you, ChatGPT?

                        (Z(:^

                        J 1 Reply Last reply 4 Apr 2024, 07:18
                        1
                        • sierdzioS sierdzio
                          4 Apr 2024, 06:52

                          @ofunk1 thank you, ChatGPT?

                          J Offline
                          J Offline
                          J.Hilk
                          Moderators
                          wrote on 4 Apr 2024, 07:18 last edited by
                          #38

                          @sierdzio yeah, I'll close this topic, starting to attract bots and no related comment in years.


                          Be aware of the Qt Code of Conduct, when posting : https://forum.qt.io/topic/113070/qt-code-of-conduct


                          Q: What's that?
                          A: It's blue light.
                          Q: What does it do?
                          A: It turns blue.

                          1 Reply Last reply
                          1
                          • J J.Hilk locked this topic on 4 Apr 2024, 07:18

                          • Login

                          • Login or register to search.
                          • First post
                            Last post
                          0
                          • Categories
                          • Recent
                          • Tags
                          • Popular
                          • Users
                          • Groups
                          • Search
                          • Get Qt Extensions
                          • Unsolved