I've built a release candidate of our Unity3d android game, and I've tried it on multiple devices. It's working everywhere except on this one Samsung Captivate. On that one device, it refuses to even install. You try installing from the APK and it thinks for a moment, then tells you the application wasn't installed. No more information than that.
Weirdly previous versions of this app have always installed fine. There's only some minor crash fixes in this new version, although I have upgraded the android tools from r21 to r22.
The phone runs froyo, but the manifest has a minimum API of 8. Here's a screen shot of the manifest info as seen by the play store:
Here's the device's info dump: http://pastebin.com/4jWq1nRS
Here's the logcat from the install: http://pastebin.com/X6K87fPK (look for company.appname
)
The install finishes failing at 14:35:50.275. Just before that, and multiple times through the install, the phone complains:
07-15 14:35:47.185 W/PackageParser(2480): Unknown element under <manifest>: supports-gl-texture at /data/app/vmdl62580.tmp Binary XML file line #51
Which is odd, because a) supports-gl-texture is a valid manifest element and b) neither the google play console or any other phone complains about the manifest.
There are some exceptions that mention com.mobidia.android.mdm.testframework.TestManager. I got the user to uninstall mobidia's My Data Manager but still couldn't install.
This error pops up in the logcat:
07-15 14:35:47.427 W/PackageParser(2480): Exception reading assets/bin/Data/Managed/Assembly-CSharp-firstpass.dll in /data/app/vmdl62580.tmp
07-15 14:35:47.427 W/PackageParser(2480): java.lang.SecurityException: /data/app/vmdl62580.tmp failed verification of META-INF/CERT.SF
...
07-15 14:35:47.427 E/PackageParser(2480): Package com.company.appname has no certificates at entry assets/bin/Data/Managed/Assembly-CSharp-firstpass.dll; ignoring!
I've checked out answers like "Eclipse wont let my app run" for the "no certificates at entry" error but don't think they apply, because this issue is specific to a phone, not a build. The build is certainly signed with our release certificate, otherwise I couldn't upload to the play store. I verified it with jarsigner and it showed up as fully verified.
Any other diagnostics I can provide? Any idea why things are broken with this one phone? I don't want to release and discover this is an issue with many many phones.