Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-96055

Make Android resource handling more robust regarding unsupported compression methods

    XMLWordPrintable

Details

    • Task
    • Resolution: Unresolved
    • P2: Important
    • None
    • 6.2.0 Beta3
    • Core: Resource System
    • None
    • Android

    Description

      Resulted from QTBUG-89551. See motivation there.

      Given

      • host CMake Qt build with zstd support and
      • an Android target Cmake Qt build without zstd support

      When

      • building an application for Android with CMake

      Then

      • (this is fixed) androiddeployqt will run rcc with default compression options to generate android_rcc_bundle.rcc, which means zstd and
      • the resulting Android app will try to load the the assets with QResource::registerResource (in androidjnimain.cpp), which
      • will silently fail as the compression flag indicates an unsupported scheme.
      • leading finally to a hard-to-debug application failure if the files in android_rcc_bundle.rcc were needed.

      Tasks:

      • androidjnimain.cpp should issue a critical warning if registerResource fails
      • QResource::registerResource should ideally have an overload which returns a "reason enum" indicating why it failed.

      Attachments

        Issue Links

          Activity

            People

              qtandroidteam Qt Android Team
              jbornema Joerg Bornemann
              Votes:
              2 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated: