I have been resampling images via imagemagick on a windows machine. Vast majority work fine however there are one or two images that won't load on any android device. I thought it was my java app code that was broken but I can reproduce it in Chrome on the Android device too.
The images load fine on iOS/PC/Mac only just not on android. It's only 320x44 pixels in 10Kb of data and not seeing any error messages, can anyone shed some light on what I may have done (or steps I've missed) when using imagemagick to get this to work?
Here's the link to the JPG
http://gatherhelp.com/tests/corruptjpg/broken.jpg
UPDATE I've used 'Charles' to intercept the network traffic from the phone and view this request and that too shows I am indeed being delivered a white image as a response to this URL from the android.
I'm using PHP on the server but JPG files are not processed, merely straight through file served
I know it's poor form to answer your own question but just in case this helps anyone else... It appears that the issue was I converted some PSD and other files that were originally made for printing and had the CMYK color format instead of RGB.
To find this out I used ImageMagick's Identify command and did this
Identify -verbose broken.jpg
giving
Image: broken.jpg
Format: JPEG (Joint Photographic Experts Group JFIF format)
Class: DirectClass
Geometry: 256x256+0+0
Resolution: 250x250
Print size: 1.024x1.024
Units: PixelsPerInch
Type: ColorSeparation
Endianess: Undefined
Colorspace: CMYK
Depth: 8-bit
This showed the colorspace was CMYK so a quick test of the other broken images showed they all had the same issue. To convert them again ImageMagick to the rescue and used
convert broken.jpg -colorspace RGB fixed.jpg
So it appears iOS/PC/Mac all support JPEGs that have CMYK but Android appears not to or at least not all CMYK images (As of Android 4.2)