Android cordova build error due to AppendToConfig for iPhone X


My Android build just started failing. I’m getting this error:

   Command failed with exit code 1 Error output:

   error: failed to read PNG signature: file does not start with PNG

So, I just figured it out. Sort of. The problem message is correct – screen.png is actually a jpeg mistakenly named as a png. BUT!

Here’s my mobile-config.js. The file it’s complaining about is the last one listed in the AppendToConfig section. So, the big question – why is adding AppendToConfig for the new iOS splash methodology adding stuff to the Android build (really, the question should be why can’t I do iOS-only AppendToConfig), and more strangely, how does this file end up being the one Android chooses to put in the drawable-mdpi directory? Am I not going to be able to properly config iOS and Android simultaneously in mobile-config.js?


  'android_mdpi_portrait': 'splash/320x480.png',
  'android_hdpi_portrait': 'splash/480x800.png',
  'android_xhdpi_portrait': 'splash/720x1280.png',
  'android_xxhdpi_portrait': 'splash/960x1600.png',
  'android_xxxhdpi_portrait': 'splash/1280x1920.png'
  // More screen sizes and platforms...

  <splash src="../../../splash/Default@2x~universal~anyany.png" />
  <splash src="../../../splash/Default@3x~universal~anyany.png" />
  <splash src="../../../splash/Default@2x~universal~comany.png" />
  <splash src="../../../splash/Default@3x~universal~comany.png" />