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
Forum Updated to NodeBB v4.3 + New Features

Qt 5.13.1 Android 32+64 Bit

Scheduled Pinned Locked Moved Solved Mobile and Embedded
12 Posts 3 Posters 1.3k Views 3 Watching
  • 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 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.9 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.9 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.9 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.9 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.9 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.9 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