Uploaded image for project: 'Apache Cordova'
  1. Apache Cordova
  2. CB-13238

Splashscreen documentation dangerous

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • None
    • xxxhdpi devices

    Description

      This seems to be a documentation issue, but for the record here is the back story first:

      I reused the iOS 2730x2730 universal splash screen for the Android version, and copied the config.xml settings

          <splash src="res/screen/android/splash-port-hdpi.png" density="port-hdpi"/>
          <splash src="res/screen/android/splash-port-ldpi.png" density="port-ldpi"/>
          <splash src="res/screen/android/splash-port-mdpi.png" density="port-mdpi"/>
          <splash src="res/screen/android/splash-port-xhdpi.png" density="port-xhdpi"/>
      

      as they are on https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-splashscreen/ Then my app is crashing with

      Fatal Exception: java.lang.RuntimeException: Canvas: trying to draw too large(119421184bytes) bitmap.
      

      on startup on xxxhdpi devices (e.g. Samsung S8). Note the 119421184 bytes are 2730^2 pixel * 4 bytes color depth times an extra 2^2; The last factor is the rescaling from xhdpi -> xxxhdpi.

      I believe the documentation should be saying

          <splash src="res/screen/android/splash-screen.png" density="anydpi"/>
      

      since the splash screen is scaled to fill the screen anyways, we certainly don't want to blow it up first because we have a high dpi device.

      Attachments

        Activity

          People

            Unassigned Unassigned
            vfbraun Volker Braun
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: