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. Android app doesn't run

Android app doesn't run

Scheduled Pinned Locked Moved Solved Mobile and Embedded
87 Posts 7 Posters 20.8k 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.
  • M Offline
    M Offline
    mzimmers
    wrote on 10 Nov 2023, 16:50 last edited by mzimmers 11 Oct 2023, 22:28
    #1

    Hi all -

    The Android build for my app, which used to work, now gives me an error when I try to run it:

    Activity Manager threw the error: Error type 3
    Error: Activity class {xxx.demo/org.qtproject.qt.android.bindings.QtActivity} does not exist
    

    I suspect this problem has to do with this line in my android/AndroidManifest.xml file:

    <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="xxx.demo" android:installLocation="auto" android:versionCode="1" android:versionName="1.0.2">
    

    I originally thought this was due to a project renaming, but I now know that not to be the case. Anyone have any ideas?

    Thanks...

    J 1 Reply Last reply 10 Nov 2023, 17:23
    0
    • E Offline
      E Offline
      ekkescorner
      Qt Champions 2016
      wrote on 19 Aug 2024, 14:59 last edited by
      #82

      don't know what's wrong
      seems you have built with android-35
      dont know if this works with 6.5
      have no experiences with 6.5 - started my Qt 6 development with 6.6
      you can try to change this to 33, what's supported by 6.5

      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
      1
      • M mzimmers
        10 Nov 2023, 16:50

        Hi all -

        The Android build for my app, which used to work, now gives me an error when I try to run it:

        Activity Manager threw the error: Error type 3
        Error: Activity class {xxx.demo/org.qtproject.qt.android.bindings.QtActivity} does not exist
        

        I suspect this problem has to do with this line in my android/AndroidManifest.xml file:

        <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="xxx.demo" android:installLocation="auto" android:versionCode="1" android:versionName="1.0.2">
        

        I originally thought this was due to a project renaming, but I now know that not to be the case. Anyone have any ideas?

        Thanks...

        J Offline
        J Offline
        JoeCFD
        wrote on 10 Nov 2023, 17:23 last edited by JoeCFD 11 Oct 2023, 17:28
        #2

        @mzimmers did you uninstall the old installation?
        I have something like
        org.companyname.projectshortname
        But it is only a package name without full project name in it. Therefore, I do not think project name change affects it.

        M 1 Reply Last reply 10 Nov 2023, 17:32
        0
        • J JoeCFD
          10 Nov 2023, 17:23

          @mzimmers did you uninstall the old installation?
          I have something like
          org.companyname.projectshortname
          But it is only a package name without full project name in it. Therefore, I do not think project name change affects it.

          M Offline
          M Offline
          mzimmers
          wrote on 10 Nov 2023, 17:32 last edited by
          #3

          @JoeCFD yeah, I did uninstall the old application.

          E 1 Reply Last reply 10 Nov 2023, 18:08
          0
          • M mzimmers
            10 Nov 2023, 17:32

            @JoeCFD yeah, I did uninstall the old application.

            E Offline
            E Offline
            ekkescorner
            Qt Champions 2016
            wrote on 10 Nov 2023, 18:08 last edited by
            #4

            @mzimmers probably, you also have deleted your build dir ?
            and uninstalled old app and rebooted android device ?

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

            M 1 Reply Last reply 10 Nov 2023, 18:10
            0
            • E ekkescorner
              10 Nov 2023, 18:08

              @mzimmers probably, you also have deleted your build dir ?
              and uninstalled old app and rebooted android device ?

              M Offline
              M Offline
              mzimmers
              wrote on 10 Nov 2023, 18:10 last edited by mzimmers 11 Oct 2023, 18:30
              #5

              @ekkescorner I did delete my build directory, and uninstalled the old version of the app. I didn't reboot my device, but I can do that. I'm not sure that will help, though, as I believe this error is occurring before Creator attempts to communicate with my tablet.

              EDIT:

              I restarted my tablet, and get the same error.
              Doesn't this appear that it has something to do with the entry in the manifest file? Or...should that get regenerated automatically?

              E J 2 Replies Last reply 10 Nov 2023, 18:49
              0
              • M mzimmers
                10 Nov 2023, 18:10

                @ekkescorner I did delete my build directory, and uninstalled the old version of the app. I didn't reboot my device, but I can do that. I'm not sure that will help, though, as I believe this error is occurring before Creator attempts to communicate with my tablet.

                EDIT:

                I restarted my tablet, and get the same error.
                Doesn't this appear that it has something to do with the entry in the manifest file? Or...should that get regenerated automatically?

                E Offline
                E Offline
                ekkescorner
                Qt Champions 2016
                wrote on 10 Nov 2023, 18:49 last edited by
                #6

                @mzimmers have no idea. you're using the default QtActivity.
                the packageName must be unique for your app and will be used as applicationId
                should be all ok with your app
                curious
                BTW: have only did such things (renaming) with QMake yet

                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
                0
                • M mzimmers
                  10 Nov 2023, 18:10

                  @ekkescorner I did delete my build directory, and uninstalled the old version of the app. I didn't reboot my device, but I can do that. I'm not sure that will help, though, as I believe this error is occurring before Creator attempts to communicate with my tablet.

                  EDIT:

                  I restarted my tablet, and get the same error.
                  Doesn't this appear that it has something to do with the entry in the manifest file? Or...should that get regenerated automatically?

                  J Offline
                  J Offline
                  JoeCFD
                  wrote on 10 Nov 2023, 19:07 last edited by
                  #7

                  @mzimmers Can you check your java code path if it starts with your project name under android/src?

                  M 1 Reply Last reply 10 Nov 2023, 19:12
                  0
                  • J JoeCFD
                    10 Nov 2023, 19:07

                    @mzimmers Can you check your java code path if it starts with your project name under android/src?

                    M Offline
                    M Offline
                    mzimmers
                    wrote on 10 Nov 2023, 19:12 last edited by
                    #8

                    @JoeCFD I don't have a folder android/src in my project.

                    J 1 Reply Last reply 10 Nov 2023, 19:15
                    0
                    • M mzimmers
                      10 Nov 2023, 19:12

                      @JoeCFD I don't have a folder android/src in my project.

                      J Offline
                      J Offline
                      JoeCFD
                      wrote on 10 Nov 2023, 19:15 last edited by
                      #9

                      @mzimmers do you have any own Java code?

                      M 1 Reply Last reply 10 Nov 2023, 19:16
                      0
                      • J JoeCFD
                        10 Nov 2023, 19:15

                        @mzimmers do you have any own Java code?

                        M Offline
                        M Offline
                        mzimmers
                        wrote on 10 Nov 2023, 19:16 last edited by
                        #10

                        @JoeCFD there's no Java code in my project source, if that's what you mean.

                        J 1 Reply Last reply 10 Nov 2023, 19:28
                        0
                        • M mzimmers
                          10 Nov 2023, 19:16

                          @JoeCFD there's no Java code in my project source, if that's what you mean.

                          J Offline
                          J Offline
                          JoeCFD
                          wrote on 10 Nov 2023, 19:28 last edited by
                          #11

                          @mzimmers OK, you do not have any java class in your project. Look through the whole project for your old project name.

                          M 1 Reply Last reply 10 Nov 2023, 19:45
                          0
                          • J JoeCFD
                            10 Nov 2023, 19:28

                            @mzimmers OK, you do not have any java class in your project. Look through the whole project for your old project name.

                            M Offline
                            M Offline
                            mzimmers
                            wrote on 10 Nov 2023, 19:45 last edited by mzimmers 11 Oct 2023, 20:18
                            #12

                            @JoeCFD can't find a thing.

                            I regenerated the templates, and now am getting a build error:

                            > Failed to apply plugin 'com.android.internal.version-check'.
                               > Minimum supported Gradle version is 7.5. Current version is 7.4.2.
                            

                            Didn't Gradle get installed for me when I chose the Android option in the Qt installer? I'm wondering how I should go about updating it.

                            EDIT: apparently changing this line:

                            distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip
                            

                            in the gradle-wrapper.properties resolved that issue. I copied back my manifest file, and am back to the original issue:

                            Activity Manager threw the error: Error type 3
                            Error: Activity class {nga.demo/org.qtproject.qt.android.bindings.QtActivity} does not exist.
                            

                            So, I'm back to my original question: what should I change this line to?

                            <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="nga.demo" android:installLocation="auto" android:versionCode="1" android:versionName="1.0.2">
                            
                            J 1 Reply Last reply 10 Nov 2023, 20:22
                            0
                            • M mzimmers
                              10 Nov 2023, 19:45

                              @JoeCFD can't find a thing.

                              I regenerated the templates, and now am getting a build error:

                              > Failed to apply plugin 'com.android.internal.version-check'.
                                 > Minimum supported Gradle version is 7.5. Current version is 7.4.2.
                              

                              Didn't Gradle get installed for me when I chose the Android option in the Qt installer? I'm wondering how I should go about updating it.

                              EDIT: apparently changing this line:

                              distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip
                              

                              in the gradle-wrapper.properties resolved that issue. I copied back my manifest file, and am back to the original issue:

                              Activity Manager threw the error: Error type 3
                              Error: Activity class {nga.demo/org.qtproject.qt.android.bindings.QtActivity} does not exist.
                              

                              So, I'm back to my original question: what should I change this line to?

                              <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="nga.demo" android:installLocation="auto" android:versionCode="1" android:versionName="1.0.2">
                              
                              J Offline
                              J Offline
                              JoeCFD
                              wrote on 10 Nov 2023, 20:22 last edited by JoeCFD 11 Oct 2023, 20:49
                              #13

                              @mzimmers No, Qt installer does not do it as I remember. There is a place you can change gradle version number in the installed Qt.
                              You are using Java 18? from here:
                              https://docs.gradle.org/current/userguide/compatibility.html

                              Even the latest Android 14(API 34) requires only Java 17. Scroll down from here:
                              https://developer.android.com/build/jdks

                              You can try to set
                              package="org.nga.appyyy"
                              if nga is your company name and appyy your project name.
                              That is the format I use. I saw someone wrote org seems needed. We need to document this in the forum somewhere. We waste so much time for this kind of issues.

                              M 1 Reply Last reply 10 Nov 2023, 22:24
                              0
                              • J JoeCFD
                                10 Nov 2023, 20:22

                                @mzimmers No, Qt installer does not do it as I remember. There is a place you can change gradle version number in the installed Qt.
                                You are using Java 18? from here:
                                https://docs.gradle.org/current/userguide/compatibility.html

                                Even the latest Android 14(API 34) requires only Java 17. Scroll down from here:
                                https://developer.android.com/build/jdks

                                You can try to set
                                package="org.nga.appyyy"
                                if nga is your company name and appyy your project name.
                                That is the format I use. I saw someone wrote org seems needed. We need to document this in the forum somewhere. We waste so much time for this kind of issues.

                                M Offline
                                M Offline
                                mzimmers
                                wrote on 10 Nov 2023, 22:24 last edited by
                                #14

                                @JoeCFD well, as it turns out, it doesn't appear to be related to my changing the project name -- I had an old copy of the project, and that fails in the same way. (It had been awhile since I bothered trying to load to the tablet.)

                                I'm going to re-title this topic, as the current title is incorrect.

                                E 1 Reply Last reply 11 Nov 2023, 13:02
                                0
                                • M mzimmers
                                  10 Nov 2023, 22:24

                                  @JoeCFD well, as it turns out, it doesn't appear to be related to my changing the project name -- I had an old copy of the project, and that fails in the same way. (It had been awhile since I bothered trying to load to the tablet.)

                                  I'm going to re-title this topic, as the current title is incorrect.

                                  E Offline
                                  E Offline
                                  ekkescorner
                                  Qt Champions 2016
                                  wrote on 11 Nov 2023, 13:02 last edited by
                                  #15

                                  @mzimmers what are your Qt and QtCreator versions ?
                                  and Android target API ?

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

                                  M 1 Reply Last reply 11 Nov 2023, 13:53
                                  0
                                  • E ekkescorner
                                    11 Nov 2023, 13:02

                                    @mzimmers what are your Qt and QtCreator versions ?
                                    and Android target API ?

                                    M Offline
                                    M Offline
                                    mzimmers
                                    wrote on 11 Nov 2023, 13:53 last edited by mzimmers 11 Nov 2023, 13:54
                                    #16

                                    @ekkescorner
                                    Qt 6.5.3
                                    Creator 11.0.3

                                    Not sure what an Android target API is - unless you mean arm64-v8a.

                                    E 1 Reply Last reply 11 Nov 2023, 14:32
                                    0
                                    • M mzimmers
                                      11 Nov 2023, 13:53

                                      @ekkescorner
                                      Qt 6.5.3
                                      Creator 11.0.3

                                      Not sure what an Android target API is - unless you mean arm64-v8a.

                                      E Offline
                                      E Offline
                                      ekkescorner
                                      Qt Champions 2016
                                      wrote on 11 Nov 2023, 14:32 last edited by ekkescorner 11 Nov 2023, 15:58
                                      #17

                                      @mzimmers arm64-v8a is the architecture - in this case arm 64bit
                                      in QMake:
                                      under Build Android APK Android Build Platform SDK is set to android-33 (Android 13), Android Build Tools are 33.0.2
                                      and in .pro I have set Min SDK and target SDK:
                                      ANDROID_MIN_SDK_VERSION = "23"
                                      ANDROID_TARGET_SDK_VERSION = "33"
                                      For me - working on macOS - I never have to install Gradle or so. it's working.
                                      I always do 'Create Templates' as you have done. Sometimes I had problems creating templates and 'Replace all' - have done 'replace' for each file extra.
                                      I'm using Qt 6.6 and QtC 11.0.2
                                      Have no idea how this will be with CMake. Just fighting with my last 5.15 App-port to 6.6 (QMake), so soon will enter CMake ;-)

                                      BTW: as @JoeCFD said: as packageName you should use your domain in reverse order together with a short app name, per ex. org.yourname.yourAppName and this must be unique. the packageName is independent from project name, per ex for a customer I'm building APKs with different packageNames like: de.theCustomer.theApp.test and de.theCustomer.theApp.prod while the project has a different name: theCustomer_theApp

                                      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
                                      0
                                      • S Offline
                                        S Offline
                                        Shahab Khan
                                        wrote on 8 Dec 2023, 19:12 last edited by
                                        #18
                                        This post is deleted!
                                        1 Reply Last reply
                                        0
                                        • M Offline
                                          M Offline
                                          mzimmers
                                          wrote on 26 Dec 2023, 22:27 last edited by
                                          #19

                                          Hi all -

                                          I need to bump this, because I really need to get this app running on Android. I created a new, minimal project, and I'm still getting the error:

                                          Error: Activity class {org.qtproject.example.minimal_map/org.qtproject.qt.android.bindings.QtActivity} does not exist.
                                          

                                          I'm guessing it has something to do with my manifest file, and here's where I need help. I really don't understand most of the fields in this display:
                                          Screenshot 2023-12-26 141909.png
                                          So, a few questions:

                                          1. the fields that look like: -- %%INSERT_APP_NAME%% --; am I supposed to replaceeverything with my own values, or do I keep the dashes and "%"?
                                          2. do I need to replace all of those fields?
                                          3. what exactly is an "activity name?" My searches haven't revealed much.

                                          Thanks for any assistance...

                                          E JKSHJ 2 Replies Last reply 3 Jan 2024, 13:07
                                          0
                                          • M mzimmers
                                            26 Dec 2023, 22:27

                                            Hi all -

                                            I need to bump this, because I really need to get this app running on Android. I created a new, minimal project, and I'm still getting the error:

                                            Error: Activity class {org.qtproject.example.minimal_map/org.qtproject.qt.android.bindings.QtActivity} does not exist.
                                            

                                            I'm guessing it has something to do with my manifest file, and here's where I need help. I really don't understand most of the fields in this display:
                                            Screenshot 2023-12-26 141909.png
                                            So, a few questions:

                                            1. the fields that look like: -- %%INSERT_APP_NAME%% --; am I supposed to replaceeverything with my own values, or do I keep the dashes and "%"?
                                            2. do I need to replace all of those fields?
                                            3. what exactly is an "activity name?" My searches haven't revealed much.

                                            Thanks for any assistance...

                                            E Offline
                                            E Offline
                                            ekkescorner
                                            Qt Champions 2016
                                            wrote on 3 Jan 2024, 13:07 last edited by
                                            #20

                                            @mzimmers said in Android app doesn't run:

                                            the fields that look like: -- %%INSERT_APP_NAME%% --; am I supposed to replaceeverything with my own values, or do I keep the dashes and "%"?
                                            do I need to replace all of those fields?

                                            if you don't replace the values, then QtCreator will fill this value. After building the project, you can go to the build dir, find the manifest and open to see what vaklues QtC inserted.
                                            In my apps I always put my own value in, per ex. QtWS for the QtWorldSummit App.
                                            if you change the value, switch editor to xml source to see that Application label (https://developer.android.com/guide/topics/manifest/application-element#label) and Activity label (https://developer.android.com/guide/topics/manifest/activity-element#label) changed.

                                            what exactly is an "activity name?" My searches haven't revealed much.
                                            see above. simply search for "android manifest doc"

                                            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
                                            1

                                            • Login

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