Code Monkey home page Code Monkey logo

Comments (2)

plecesne avatar plecesne commented on May 20, 2024

The extract-apks command with --device-spec flag will extract the APK that should be served to that device by the store for the given device configuration.

The supportedAbis value of the DeviceSpec does not tell bundletool what libraries to include, but rather the preferred order of the ABIs supported by the device: bundletool thus selects the best ABI for the device based on the libraries available in the App Bundle.

I can't think of a good use-case to generate APKs with multiple ABIs since Android devices will eventually only load the native libraries for a single ABI.

Note that I'm only talking about release APKs here. For testing purposes, the universal APK can be generated using the --universal flag (see the help of the build-apks command) and will contain all native libraries.

I hope that helps. Let me know if something is still unclear.

from bundletool.

alapshin avatar alapshin commented on May 20, 2024

The supportedAbis value of the DeviceSpec does not tell bundletool what libraries to include, but rather the preferred order of the ABIs supported by the device: bundletool thus selects the best ABI for the device based on the libraries available in the App Bundle.

Thanks for clarification. I suspected that this might be the case but good to have confirmation.

I can't think of a good use-case to generate APKs with multiple ABIs since Android devices will eventually only load the native libraries for a single ABI.

In my case I wanted to make sure that separate apks generated by bundletool are run correctly on test devices with different ABIs. So I thought extract-apks will produce base-master.apk and base-armeabi_v7a.apk, base-arm64_v8a etc. (for every abi from supportedAbis). I guess I was confused by previous experience with apk splits from android gradle plugin since they work this way.
But this could be achieved by using different spec files.

I hope that helps. Let me know if something is still unclear.

Yes, thanks again for quick response. I don't have any further questions.

from bundletool.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.