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. androiddeployqt and new Google Play requirement

androiddeployqt and new Google Play requirement

Scheduled Pinned Locked Moved Solved Mobile and Embedded
5 Posts 3 Posters 976 Views 1 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.
  • J Offline
    J Offline
    JohnAmadis
    wrote on last edited by
    #1

    First of all, thank you for your product, Qt is awesome :) I wish all frameworks would have so good documentation, support for everything and work so well.

    Unfortunately I have a problem and would be very grateful if you guys could help me.
    As you probably know, Starting from August 2019 Google Play requires from developers to make support for both: arm64-v8a and armv7. They provided steps how to do it by using NDK:
    https://developer.android.com/distribute/best-practices/develop/64-bit
    I could not find a description how to use androiddeployqt for APK with more than one architectures. Currently I am able to build and prepare valid APKs for both of these architectures, but I dont have an idea how to make one APK with both of them

    I know that the APK is just a ZIP file, so I was wondering if I can just add a new directory with the second architecture in the /lib/ path, but when I compared these two APKs I realized, that the manifest is also different and unfortunatelly it is only one for all of the architectures and there is a lot of differences.

    I also tried to add an additional --input parameter for the androiddeployqt command, but it looks like the tool does not support it and always takes the last of the given inputs.

    Moreover as a desperate try, I added an additional architecture to the build.grant as it is in the NDK description:

    android{    
        defaultConfig {
           ndk.abiFilters 'armeabi-v7a','arm64-v8a','x86','x86_64'
        }
        ... THE REST 
    }
    

    but it changed nothing...

    Here is the deploy command I have used:

    androiddeployqt --input $BUILD_DIR/armv7/src/$APP_NAME/android-lib$APP_NAME.so-deployment-settings.json --input $BUILD_DIR/arm64_v8a/src/$APP_NAME/android-lib$APP_NAME.so-deployment-settings.json --output \"$DEPLOY_DIR\" --name $APP_NAME --deployment bundled --android-platform android-$TARGET_ANDROID_SDK_LEVEL --jdk /usr/lib/jvm/default-java --gradle
    

    Did anyone try to make it work? I cannot find anything on this topic in the Internet. Does anyone know how to prepare this APK with 2 architectures by using androiddeployqt? Or maybe there is some other way I can prepare this APK in a fast way?

    Best Regards and thanks in advance for your help

    aha_1980A raven-worxR 2 Replies Last reply
    0
    • J JohnAmadis

      First of all, thank you for your product, Qt is awesome :) I wish all frameworks would have so good documentation, support for everything and work so well.

      Unfortunately I have a problem and would be very grateful if you guys could help me.
      As you probably know, Starting from August 2019 Google Play requires from developers to make support for both: arm64-v8a and armv7. They provided steps how to do it by using NDK:
      https://developer.android.com/distribute/best-practices/develop/64-bit
      I could not find a description how to use androiddeployqt for APK with more than one architectures. Currently I am able to build and prepare valid APKs for both of these architectures, but I dont have an idea how to make one APK with both of them

      I know that the APK is just a ZIP file, so I was wondering if I can just add a new directory with the second architecture in the /lib/ path, but when I compared these two APKs I realized, that the manifest is also different and unfortunatelly it is only one for all of the architectures and there is a lot of differences.

      I also tried to add an additional --input parameter for the androiddeployqt command, but it looks like the tool does not support it and always takes the last of the given inputs.

      Moreover as a desperate try, I added an additional architecture to the build.grant as it is in the NDK description:

      android{    
          defaultConfig {
             ndk.abiFilters 'armeabi-v7a','arm64-v8a','x86','x86_64'
          }
          ... THE REST 
      }
      

      but it changed nothing...

      Here is the deploy command I have used:

      androiddeployqt --input $BUILD_DIR/armv7/src/$APP_NAME/android-lib$APP_NAME.so-deployment-settings.json --input $BUILD_DIR/arm64_v8a/src/$APP_NAME/android-lib$APP_NAME.so-deployment-settings.json --output \"$DEPLOY_DIR\" --name $APP_NAME --deployment bundled --android-platform android-$TARGET_ANDROID_SDK_LEVEL --jdk /usr/lib/jvm/default-java --gradle
      

      Did anyone try to make it work? I cannot find anything on this topic in the Internet. Does anyone know how to prepare this APK with 2 architectures by using androiddeployqt? Or maybe there is some other way I can prepare this APK in a fast way?

      Best Regards and thanks in advance for your help

      aha_1980A Offline
      aha_1980A Offline
      aha_1980
      Lifetime Qt Champion
      wrote on last edited by
      #2

      Hi @JohnAmadis,

      there has been several discussions recently, e.g. https://forum.qt.io/topic/102833/android-this-release-is-not-compliant-with-the-google-play-64-bit-requirement-how

      I'm not completely sure about the outcome, but you might find some inspirations.

      Regards

      Qt has to stay free or it will die.

      1 Reply Last reply
      1
      • J Offline
        J Offline
        JohnAmadis
        wrote on last edited by
        #3

        Thank you very much, I will check that

        1 Reply Last reply
        0
        • J JohnAmadis

          First of all, thank you for your product, Qt is awesome :) I wish all frameworks would have so good documentation, support for everything and work so well.

          Unfortunately I have a problem and would be very grateful if you guys could help me.
          As you probably know, Starting from August 2019 Google Play requires from developers to make support for both: arm64-v8a and armv7. They provided steps how to do it by using NDK:
          https://developer.android.com/distribute/best-practices/develop/64-bit
          I could not find a description how to use androiddeployqt for APK with more than one architectures. Currently I am able to build and prepare valid APKs for both of these architectures, but I dont have an idea how to make one APK with both of them

          I know that the APK is just a ZIP file, so I was wondering if I can just add a new directory with the second architecture in the /lib/ path, but when I compared these two APKs I realized, that the manifest is also different and unfortunatelly it is only one for all of the architectures and there is a lot of differences.

          I also tried to add an additional --input parameter for the androiddeployqt command, but it looks like the tool does not support it and always takes the last of the given inputs.

          Moreover as a desperate try, I added an additional architecture to the build.grant as it is in the NDK description:

          android{    
              defaultConfig {
                 ndk.abiFilters 'armeabi-v7a','arm64-v8a','x86','x86_64'
              }
              ... THE REST 
          }
          

          but it changed nothing...

          Here is the deploy command I have used:

          androiddeployqt --input $BUILD_DIR/armv7/src/$APP_NAME/android-lib$APP_NAME.so-deployment-settings.json --input $BUILD_DIR/arm64_v8a/src/$APP_NAME/android-lib$APP_NAME.so-deployment-settings.json --output \"$DEPLOY_DIR\" --name $APP_NAME --deployment bundled --android-platform android-$TARGET_ANDROID_SDK_LEVEL --jdk /usr/lib/jvm/default-java --gradle
          

          Did anyone try to make it work? I cannot find anything on this topic in the Internet. Does anyone know how to prepare this APK with 2 architectures by using androiddeployqt? Or maybe there is some other way I can prepare this APK in a fast way?

          Best Regards and thanks in advance for your help

          raven-worxR Offline
          raven-worxR Offline
          raven-worx
          Moderators
          wrote on last edited by
          #4

          @JohnAmadis said in androiddeployqt and new Google Play requirement:

          I could not find a description how to use androiddeployqt for APK with more than one architectures. Currently I am able to build and prepare valid APKs for both of these architectures, but I dont have an idea how to make one APK with both of them

          AFAIK its not necessary to bundle the different archs in a single APK.
          You can also upload them separately to the Play Store, which also has the benefit of smaller APK sizes to download.

          --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
          If you have a question please use the forum so others can benefit from the solution in the future

          1 Reply Last reply
          3
          • J Offline
            J Offline
            JohnAmadis
            wrote on last edited by
            #5

            @raven-worx said in androiddeployqt and new Google Play requirement:

            the

            I searched for this now and it seems that you are right. That solves my problem, thanks you a lot! The description from the email was misleading and I was sure that I have to do it in one APK. Even it makes more sense :)

            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