Upload of Project to Apple Store Fails

6 posts, 0 answers
  1. Pierre Chew
    Pierre Chew avatar
    22 posts
    Member since:
    Aug 2012

    Posted 13 Mar 2013 Link to this post

    Hello,

    I am trying to upload a completed app (MINI GMT 2013) to the Apple Store using both your built in upload process in MIST and using a MAC and I am getting errors.  Since I didn't do anything to the package I am guessing that the bug must be in your automated build process.

    I have successfully followed all the instructions (setting up the certificates and getting the app to the "Waiting for Upload" state in the Apple Store) so this is the final step (I hope).

    I didn't see the error in MIST, only that the uplaod failed.  On the mac the error I got when using the "Application Loader" app was "Application failed codsign verification.  The signature was invalid, contains dissalowed entitlements, or it was not signed with an iPhone distribution certificate". 

    The second error was "unable to extract codesign entitlements from your application.  Please make sure Cordova220 is a valid mach executable that's properly codesigned"

    Can someone help me get through this final hurdle?

    Here is the dump of what is going on from the Apple Side:

    App Name : MINI GMT 2013Apple ID : 620136991Bundle Identifier : com.planelements.minigmt2013Localizations : ( "en" )Prerendered Icon Flag : trueOriginal Zip File Name : app.ipaBundle Short Version String : Bundle Version : 1.0Minimum OS Requirements : 4.3.5Build SDK : 10A403Build Platform : 10A403Supported Architectures : armv7Device Family : iPhone / iPod Touch, iPadNewsstand App : falseEntitlements : Cordova220.app/Cordova220 
    get-task-allow: false 
    keychain-access-groups: ( T8RNWT9EF8.com.planelements.minigmt2013 ) 
    application-identifier: T8RNWT9EF8.com.planelements.minigmt2013





    Thanks,

    Pierre
  2. Yavor Georgiev
    Admin
    Yavor Georgiev avatar
    982 posts

    Posted 14 Mar 2013 Link to this post

    Hello Pierre,

     It looks like that a code signature was applied, but for some reason it's not correct. There are two things you can try, just to test and try to narrow down the problem: 

    1. Build for another Cordova version and/or remove any plugins you might be using; or
    2. Use iResign or run codesign manually on your IPA.

     Please let me know how it goes.

    Kind regards,
    Yavor Georgiev
    the Telerik team

    Share feedback and vote for features on our Feedback Portal.
    Want some Kendo UI online training - head over to Pluralsight.
  3. Pierre Chew
    Pierre Chew avatar
    22 posts
    Member since:
    Aug 2012

    Posted 14 Mar 2013 Link to this post

    Okay, so I figured out what the problem was.  If I just take the icenium project output and submit it, it works.  The problems is that apple then rejects the app because it is not designed for iphone (only ipad).

    So I was following the instructions that were posted regarding manually modifying an ipa file to disable support for iphone devices.  As per the instructions that were posted on this web site, you are supposed to open up the ipa file and modify the Info.plist file manually (since you can't do it from within icenium).

    The problem is that when I do this and try to submit the modified ipa package, I get the error. It is possible that Apple does not like you messing with the ipa files after compile and prior to submitting them to the store?  Do they possibly have some checksum value that they embed in the package to make sure that this is not happening?

    Any other suggestions on how to disable support for iphone devices?

  4. Yavor Georgiev
    Admin
    Yavor Georgiev avatar
    982 posts

    Posted 15 Mar 2013 Link to this post

    Hi Pierre,

     This explains why the code signature was not correct. The signature is calculated from all the files in your app, including Info.plist. If you need to modify any file in your app after it is signed, you will need to resign it so that it becomes valid again. Please refer to point 2 in my previous post for pointers on how to achieve that.

     However, I am happy to say that our new version which is expected to be released in the next couple of weeks directly exposes the UIDeviceFamily property so that you won't need to modify Info.plist to specify iPhone or iPad support.

    All the best,
    Yavor Georgiev
    the Telerik team

    Share feedback and vote for features on our Feedback Portal.
    Want some Kendo UI online training - head over to Pluralsight.
  5. Pierre Chew
    Pierre Chew avatar
    22 posts
    Member since:
    Aug 2012

    Posted 15 Mar 2013 Link to this post

    Thank you for letting me know.  I wil go ahead and fix the package and resubmit it.

    Also thank you for adding the new feature.  This solution is awesome.
  6. Steve
    Admin
    Steve avatar
    10941 posts

    Posted 05 Jul 2013 Link to this post

    Hello Pierre,

    As my colleague mentioned in the last post, we've added background modes for iOS in Icenium 1.5 and they can be set through the project properties.
    What's more since v.1.6 we've given you full control by adding the ability to make configuration changes to your app by modifying the respective Info.plist and config.xml for iOS and AndroidManifest.xml and config.xml for Android directly in the Icenium code editor. For more information, see Edit Configuration Files.

    Regards,
    Steve
    Telerik

    Looking for tips & tricks directly from the Icenium team? Check out our blog!
    Missed our first webinar, watch it here.
    Share feedback and vote for features on our Feedback Portal.
Back to Top