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

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.
  • ekkescornerE Offline
    ekkescornerE Offline
    ekkescorner
    Qt Champions 2016
    wrote on last edited by
    #1

    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

    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
    • SGaistS Offline
      SGaistS Offline
      SGaist
      Lifetime Qt Champion
      wrote on last edited by
      #2

      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.

      Interested in AI ? www.idiap.ch
      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

      ekkescornerE 1 Reply Last reply
      1
      • 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