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 5.13.1 Android 32+64 Bit
QtWS25 Last Chance

Qt 5.13.1 Android 32+64 Bit

Scheduled Pinned Locked Moved Solved Mobile and Embedded
12 Posts 3 Posters 1.1k 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.
  • SGaistS SGaist

    Hi Ekke,

    Did you already saw this blog post about how to comply with the new Google Play requirements ?

    It's pretty nice and thorough.

    ekkescornerE Offline
    ekkescornerE Offline
    ekkescorner
    Qt Champions 2016
    wrote on last edited by
    #3

    @SGaist Hi, thx mentioning that blog post. forgot about it - so many customer projects ;-)

    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
    • ekkescornerE ekkescorner

      to fullfill Google Play Requirement to deliver Apps for 32+64 Bit Support we must build 2 different APKs.

      To add both APKs to Google Play each must have a different Version Code
      I'll use this scheme:

      per ex. Version Name:
      1.2.3

      Version Code:
      210010203 (32 Bit APK for armeabi-v7a)
      211010203 (64 Bit APK for arm64-v8a)

      where
      21 Min API
      0 = 32 Bit, 1 = 64 Bit
      01 Major Version 1
      02 Minor Version 2
      03 Patch Version 3

      then I build releases for both architectures and upload both APK to Google Play (Betatester)

      anything else to watch ?
      thx

      T Offline
      T Offline
      Tom_H
      wrote on last edited by
      #4

      @ekkescorner That looks good. The only thing I would suggest is that if you ever anticipate having different versions for other device features such as screen size or multitouch, you'd want to reserve some digits for that. You've probably already read this, but here's a good article explaining version codes:

      https://developer.android.com/google/play/publishing/multiple-apks#VersionCodes

      ekkescornerE 1 Reply Last reply
      1
      • T Tom_H

        @ekkescorner That looks good. The only thing I would suggest is that if you ever anticipate having different versions for other device features such as screen size or multitouch, you'd want to reserve some digits for that. You've probably already read this, but here's a good article explaining version codes:

        https://developer.android.com/google/play/publishing/multiple-apks#VersionCodes

        ekkescornerE Offline
        ekkescornerE Offline
        ekkescorner
        Qt Champions 2016
        wrote on last edited by
        #5

        @Tom_H yes - I have read this.
        Don't think that I'll have different builds for screen sizes. In my apps at startup I test if it's a small device, normal device or a tablet or so and then for some pages use different QML. this is easy with Loaders source.

        for my version code: will slightly change and use the 32/64 bit indicator as last digit

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

        T 1 Reply Last reply
        0
        • ekkescornerE ekkescorner

          @Tom_H yes - I have read this.
          Don't think that I'll have different builds for screen sizes. In my apps at startup I test if it's a small device, normal device or a tablet or so and then for some pages use different QML. this is easy with Loaders source.

          for my version code: will slightly change and use the 32/64 bit indicator as last digit

          T Offline
          T Offline
          Tom_H
          wrote on last edited by
          #6

          @ekkescorner

          for my version code: will slightly change and use the 32/64 bit indicator as last digit

          I don't think that's a good idea. I think you had it right the first time. CPU architecture is one of the Google Play Filters, and therefore should be in a more significant digit than the major.minor.patch number, which should come last. If you put it last, then it would be possible for the 32 bit version to have a higher version code than the 64 bit version (e.g. you patch the 32 bit version), and then compatible 64 bit devices would get updated with the 32 bit version (because it's compatible and has a higher version code). At least that's how I understand it.

          ekkescornerE 1 Reply Last reply
          1
          • T Tom_H

            @ekkescorner

            for my version code: will slightly change and use the 32/64 bit indicator as last digit

            I don't think that's a good idea. I think you had it right the first time. CPU architecture is one of the Google Play Filters, and therefore should be in a more significant digit than the major.minor.patch number, which should come last. If you put it last, then it would be possible for the 32 bit version to have a higher version code than the 64 bit version (e.g. you patch the 32 bit version), and then compatible 64 bit devices would get updated with the 32 bit version (because it's compatible and has a higher version code). At least that's how I understand it.

            ekkescornerE Offline
            ekkescornerE Offline
            ekkescorner
            Qt Champions 2016
            wrote on last edited by ekkescorner
            #7

            @Tom_H hmmm - seems you're right.
            I was confused because most examples out there are using the last digit - even https://www.qt.io/blog/2019/06/28/comply-upcoming-requirements-google-play

            Are you using it this way ?
            So it's no problem for Google Play to publish VersionCodes lower than existing ones ? (using your example to publish a 32 bit update where a 64 bit with higher Version Code already exists)

            on the other side:
            if I always publish 32 + 64 bit together, using the last digit should work

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

            T 1 Reply Last reply
            0
            • ekkescornerE ekkescorner

              @Tom_H hmmm - seems you're right.
              I was confused because most examples out there are using the last digit - even https://www.qt.io/blog/2019/06/28/comply-upcoming-requirements-google-play

              Are you using it this way ?
              So it's no problem for Google Play to publish VersionCodes lower than existing ones ? (using your example to publish a 32 bit update where a 64 bit with higher Version Code already exists)

              on the other side:
              if I always publish 32 + 64 bit together, using the last digit should work

              T Offline
              T Offline
              Tom_H
              wrote on last edited by
              #8

              @ekkescorner I'm using a very simple scheme that works for me so far but could get me in trouble later. My app only has two APKs, one for 32 bit and one for 64 bit. My 32 bit version code starts at 1 and my 64 bit starts at 1000.

              on the other side:
              if I always publish 32 + 64 bit together, using the last digit should work

              Sure, but still ... don't do it :) I have already had to patch my 64 bit version (because of this issue https://forum.qt.io/topic/105928/rotationsensor-busted-in-qt-5-13/8). It could have very easily been the other way around.

              ekkescornerE 1 Reply Last reply
              0
              • T Tom_H

                @ekkescorner I'm using a very simple scheme that works for me so far but could get me in trouble later. My app only has two APKs, one for 32 bit and one for 64 bit. My 32 bit version code starts at 1 and my 64 bit starts at 1000.

                on the other side:
                if I always publish 32 + 64 bit together, using the last digit should work

                Sure, but still ... don't do it :) I have already had to patch my 64 bit version (because of this issue https://forum.qt.io/topic/105928/rotationsensor-busted-in-qt-5-13/8). It could have very easily been the other way around.

                ekkescornerE Offline
                ekkescornerE Offline
                ekkescorner
                Qt Champions 2016
                wrote on last edited by
                #9

                @Tom_H so you published successfully

                32 bit: version code 1
                64 bit: version code 1000

                then later:
                32 bit: version code 2

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

                T 1 Reply Last reply
                0
                • ekkescornerE ekkescorner

                  @Tom_H so you published successfully

                  32 bit: version code 1
                  64 bit: version code 1000

                  then later:
                  32 bit: version code 2

                  T Offline
                  T Offline
                  Tom_H
                  wrote on last edited by
                  #10

                  @ekkescorner Yes. I'm up to version 4 and 1003 now. I had originally intended for the 64 bit code to just be 32-bit-code+1000 but I got away from that. Now I just bump each release version by 1 and keep track of any notes in a text file in case I get confused :)

                  ekkescornerE 1 Reply Last reply
                  1
                  • T Tom_H

                    @ekkescorner Yes. I'm up to version 4 and 1003 now. I had originally intended for the 64 bit code to just be 32-bit-code+1000 but I got away from that. Now I just bump each release version by 1 and keep track of any notes in a text file in case I get confused :)

                    ekkescornerE Offline
                    ekkescornerE Offline
                    ekkescorner
                    Qt Champions 2016
                    wrote on last edited by
                    #11

                    @Tom_H thx. then I'll use my first VersionCode scheme. thanks for your input.

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

                    ekkescornerE 1 Reply Last reply
                    0
                    • ekkescornerE ekkescorner

                      @Tom_H thx. then I'll use my first VersionCode scheme. thanks for your input.

                      ekkescornerE Offline
                      ekkescornerE Offline
                      ekkescorner
                      Qt Champions 2016
                      wrote on last edited by
                      #12

                      @ekkescorner BTW: finally I'll use this version code:

                      Version Name: 1.2.3

                      Version Code:
                      210001023 (32 Bit APK for armeabi-v7a)
                      211001023 (64 Bit APK for arm64-v8a)

                      where
                      21 Min API
                      0 = 32 Bit, 1 = 64 Bit
                      0 (reserved for screensizes)
                      01 Major Version 1
                      02 Minor Version 2
                      3 Patch Version 3

                      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

                      • Login

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