Trying to submit IPA - Invalid Code Signing Entitlements

443 views
Skip to first unread message

Michael Thielen

unread,
Dec 11, 2014, 12:55:26 AM12/11/14
to rob...@googlegroups.com
Hi,

I am trying to send my IPA to Apple for approval but it is failing the pre-approval check with an error -

"ERROR ITMS-9000: 'Invalid Code Signing Entitlements. The Entitlements in your app bundle signature do not match the ones that are contained in the provisioning profile. According to the provisioning profile, the bundle contains a key that is not allowed: 'xxxxx.com.myapp.something' for the key 'application-identifier' in Payload/IOSLauncher.app/IOSLauncher'"

I have tried deleting all my certificates and profiles 3 times but no change. My game has Game Center and admob integration. I was thinking maybe I am missing a key-value entry in robovm.xml or Info.plist but I'm not sure and I've just been guessing and trying things for over 2 days. I tried building the IPA from Eclipse with the RoboVM plugin. It lets me choose my distribution profile and distribution certificate. I tried building it with gradle command line as well - same error result. The only other little thing I remember changing was the CFBundleName in info.plist.xml. I changed it from ${app.id} to my main class name. In any case, I tried changing that back to different values but it has no effect on the error.

I searched a lot on google and saw the error but not for anyone using robovm. I am desperate to solve this - any ideas?

Niklas Therning

unread,
Dec 11, 2014, 2:52:30 AM12/11/14
to Michael Thielen, rob...@googlegroups.com
You shouldn't mess with the values in the Info.plist.xml unless you
now what you are doing. This is the default which RoboVM generates for
you:

<key>CFBundleDisplayName</key>
<string>${app.name}</string>
<key>CFBundleExecutable</key>
<string>${app.executable}</string>
<key>CFBundleIdentifier</key>
<string>${app.id}</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>${app.name}</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>${app.version}</string>

Make sure it looks like that at the top of your Info.plist.xml. Then
make sure your app.id property in the robovm.properties file is the
same as the id you have in your provisioning profile. If you use a
wildcard id in your profile you must make sure your app.id value
matches the id pattern in the profile.
> --
> You received this message because you are subscribed to the Google Groups
> "RoboVM" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to robovm+un...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

Michael Thielen

unread,
Dec 11, 2014, 8:03:45 PM12/11/14
to rob...@googlegroups.com, mike.t...@gmail.com
Thanks for the reply, Niklas, but I still cannot get around this issue. I have now tried many different values for my app.name and app.id but the error remains the same. If I change the app.id in robovm.properties it complains earlier that there is no code entity with that name (or something similar). Just to be clear, my provisioning profile is explicitly linked to my app which shows up as 'BvB (com.barodapride.splish.IOSLauncher)' according to my developer.apple.com provisioning profile. My robovm.properties file looks like this:

app.version=1.0

app.id=com.barodapride.splish

app.mainclass=com.barodapride.splish.IOSLauncher

app.executable=IOSLauncher

app.build=1

app.name=Bird vs. Buzzsaw



My Info.plist.xml looks like this:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

<plist version="1.0">

<dict>

    <key>CFBundleDevelopmentRegion</key>

    <string>en</string>

    <key>CFBundleDisplayName</key>

    <string>${app.name}</string>

    <key>CFBundleExecutable</key>

    <string>${app.executable}</string>

    <key>CFBundleIdentifier</key>

    <string>${app.id}</string>

    <key>CFBundleInfoDictionaryVersion</key>

    <string>6.0</string>

    <key>CFBundleName</key>

    <string>${app.name}</string>

    <key>CFBundlePackageType</key>

    <string>APPL</string>

    <key>CFBundleShortVersionString</key>

    <string>${app.version}</string>

    <key>CFBundleSignature</key>

    <string>????</string>

    <key>CFBundleVersion</key>

    <string>${app.build}</string>

    <key>LSRequiresIPhoneOS</key>

    <true/>

    <key>UIViewControllerBasedStatusBarAppearance</key>

    <false/>

    <key>UIStatusBarHidden</key>

    <true/>

    <key>UIDeviceFamily</key>

    <array>

        <integer>1</integer>

        <integer>2</integer>

    </array>

    <key>UIRequiredDeviceCapabilities</key>

    <array>

        <string>armv7</string>

        <string>opengles-2</string>

    </array>

    <key>UISupportedInterfaceOrientations</key>

    <array>

        <string>UIInterfaceOrientationPortrait</string>

    </array>

    <key>CFBundleIcons</key>

    <dict>

        <key>CFBundlePrimaryIcon</key>

        <dict>

            <key>CFBundleIconFiles</key>

            <array>

                <string>Icon</string>

                <string>Icon-60</string>

                <string>Icon-76</string>

                <string>Icon-72</string>

            </array>

        </dict>

    </dict>

</dict>

</plist>



Is there anything that looks incorrect from those files? I am using and admob precompiled jar and a gamecenter precompiled jar bindings without adding anything to my project's Info.plist. Perhaps that is the issue?

Niklas Therning

unread,
Dec 12, 2014, 4:16:47 AM12/12/14
to Michael Thielen, rob...@googlegroups.com
Your App ID (application-identifier) in the provisioning profile is
com.barodapride.splish.IOSLauncher. So that is what you should use for
the app.id value in the properties file. Did you try that? Also, post
the output you see on the RoboVM Console.

Michael Thielen

unread,
Dec 12, 2014, 2:37:30 PM12/12/14
to rob...@googlegroups.com, mike.t...@gmail.com
Yes I have tried com.barodapride.splish.IOSLauncher for the app.id. I get a different error when I change the app.id value:

No software with CFBundleIdentifier of 'com.barodapride.splish.IOSLauncher' exists.  Verify your bundle identifier is correct.  If it is, you may need to log into iTunes Connect to create the application.

Here is my full log cat, there is one error. I tried fixing the error by putting the suggested parameter in my run configurations but it wasn't making any difference and I wasn't sure if it's related to my issues:


12/12/14 1:33:22 PM: [ INFO] Creating package in /Users/admin/Documents/release/bvb/v1.0 ...


12/12/14 1:33:22 PM: [DEBUG] Loading default RoboVM config properties file: /Users/admin/Documents/dev/splish/ios/robovm.properties


12/12/14 1:33:22 PM: [DEBUG] Loading default RoboVM config file: /Users/admin/Documents/dev/splish/ios/robovm.xml


12/12/14 1:33:22 PM: [ WARN] Root pattern com.badlogic.gdx.physics.bullet.** matches no classes


12/12/14 1:33:22 PM: [DEBUG] Compiling classes using 4 threads


12/12/14 1:33:24 PM: [DEBUG] Compiled 0 classes in 1.63 seconds


12/12/14 1:33:24 PM: [ INFO] Linking 3920 classes (ios thumbv7 release)


12/12/14 1:33:31 PM: [DEBUG] Building executable /var/folders/y1/wr1j_9p123dch78cs4q4flnc0000gn/T/robovm1403684020675297939.tmp/IOSLauncher


12/12/14 1:33:31 PM: [DEBUG] /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -o /var/folders/y1/wr1j_9p123dch78cs4q4flnc0000gn/T/robovm1403684020675297939.tmp/IOSLauncher -arch armv7 -Wl,-filelist,/var/folders/y1/wr1j_9p123dch78cs4q4flnc0000gn/T/robovm1403684020675297939.tmp/objects -L /Users/admin/Documents/dev/workspaces/splish/.metadata/.plugins/org.robovm.eclipse.ui/robovm-1.0.0-beta-01/lib/vm/ios/thumbv7 -ObjC -exported_symbols_list /var/folders/y1/wr1j_9p123dch78cs4q4flnc0000gn/T/robovm1403684020675297939.tmp/exported_symbols -Wl,-no_implicit_dylibs -Wl,-dead_strip -miphoneos-version-min=5.0 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.1.sdk -lrobovm-bc -force_load /Users/admin/Documents/dev/workspaces/splish/.metadata/.plugins/org.robovm.eclipse.ui/robovm-1.0.0-beta-01/lib/vm/ios/thumbv7/librobovm-rt.a -lrobovm-core -lgc -lpthread -ldl -lm -liconv -lsqlite3 -framework Foundation -framework UIKit -framework OpenGLES -framework QuartzCore -framework CoreGraphics -framework OpenAL -framework AudioToolbox -framework AVFoundation -framework GameKit -framework CoreTelephony -framework MessageUI -framework SystemConfiguration -weak_framework AdSupport -weak_framework StoreKit -force_load /Users/admin/.robovm/cache/ios/thumbv7/release/Users/admin/Documents/dev/splish/ios/libs/admob-1.0.0-SNAPSHOT.jar.extracted/META-INF/robovm/ios/libs/libadmob.a -force_load /Users/admin/Documents/dev/splish/ios/build/libs/ios/libgdx.a -force_load /Users/admin/Documents/dev/splish/ios/build/libs/ios/libObjectAL.a


12/12/14 1:33:35 PM: [DEBUG] Linked 3920 classes in 10.95 seconds


12/12/14 1:33:35 PM: [DEBUG] Creating IPA in /Users/admin/Documents/release/bvb/v1.0


12/12/14 1:33:35 PM: [DEBUG] Creating stripped archive file /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/lib/boot/robovm-rt.jar


12/12/14 1:33:35 PM: [DEBUG] Creating stripped archive file /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/lib/gdx-backend-robovm-1.4.1.jar


12/12/14 1:33:35 PM: [DEBUG] Creating stripped archive file /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/lib/gamecenter-1.0.0-SNAPSHOT.jar


12/12/14 1:33:35 PM: [DEBUG] Creating stripped archive file /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/lib/admob-1.0.0-SNAPSHOT.jar


12/12/14 1:33:35 PM: [DEBUG] Creating stripped archive file /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/lib/robovm-rt-1.0.0-alpha-04.jar


12/12/14 1:33:35 PM: [DEBUG] Creating stripped archive file /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/lib/classes4.jar


12/12/14 1:33:35 PM: [DEBUG] Creating stripped archive file /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/lib/robovm-cocoatouch-1.0.0-alpha-04.jar


12/12/14 1:33:35 PM: [DEBUG] Creating stripped archive file /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/lib/robovm-objc-1.0.0-alpha-04.jar


12/12/14 1:33:35 PM: [DEBUG] Creating stripped archive file /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/lib/gdx-1.4.1.jar


12/12/14 1:33:35 PM: [DEBUG] Creating stripped archive file /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/lib/classes8.jar


12/12/14 1:33:35 PM: [DEBUG] Creating stripped archive file /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/lib/boot/robovm-cacerts-full.jar


12/12/14 1:33:35 PM: [DEBUG] Copying resource /Users/admin/Documents/dev/splish/android/assets/font/font3.fnt to /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/font


12/12/14 1:33:35 PM: [DEBUG] Copying resource /Users/admin/Documents/dev/splish/android/assets/font/font3_0.png to /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/font


12/12/14 1:33:35 PM: [DEBUG] Copying resource /Users/admin/Documents/dev/splish/android/assets/font/how_to.txt to /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/font


12/12/14 1:33:35 PM: [DEBUG] Copying resource /Users/admin/Documents/dev/splish/android/assets/pack.atlas to /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app


12/12/14 1:33:35 PM: [DEBUG] Copying resource /Users/admin/Documents/dev/splish/android/assets/pack.png to /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app


12/12/14 1:33:35 PM: [DEBUG] Copying resource /Users/admin/Documents/dev/splish/android/assets/sfx/bing.mp3 to /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/sfx


12/12/14 1:33:35 PM: [DEBUG] Copying resource /Users/admin/Documents/dev/splish/android/assets/sfx/jump.mp3 to /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/sfx


12/12/14 1:33:35 PM: [DEBUG] Copying resource /Users/admin/Documents/dev/splish/android/assets/sfx/splat.mp3 to /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/sfx


12/12/14 1:33:35 PM: [DEBUG] Copying resource /Users/admin/Documents/dev/splish/android/assets/sfx/woosh2.mp3 to /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/sfx


12/12/14 1:33:35 PM: [DEBUG] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/pngcrush -q -iphone -f 0 /Users/admin/Documents/dev/splish/ios/data/Default-...@2x.png /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/Default-...@2x.png


12/12/14 1:33:35 PM: [DEBUG] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/pngcrush -q -iphone -f 0 /Users/admin/Documents/dev/splish/ios/data/Default-...@3x.png /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/Default-...@3x.png


12/12/14 1:33:36 PM: [DEBUG] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/pngcrush -q -iphone -f 0 /Users/admin/Documents/dev/splish/ios/data/Defaul...@2x.png /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/Defaul...@2x.png


12/12/14 1:33:36 PM: [DEBUG] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/pngcrush -q -iphone -f 0 /Users/admin/Documents/dev/splish/ios/data/Default.png /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/Default.png


12/12/14 1:33:36 PM: [DEBUG] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/pngcrush -q -iphone -f 0 /Users/admin/Documents/dev/splish/ios/data/Def...@2x.png /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/Def...@2x.png


12/12/14 1:33:36 PM: [DEBUG] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/pngcrush -q -iphone -f 0 /Users/admin/Documents/dev/splish/ios/data/Default@2x~ipad.png /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/Default@2x~ipad.png


12/12/14 1:33:36 PM: [DEBUG] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/pngcrush -q -iphone -f 0 /Users/admin/Documents/dev/splish/ios/data/Default~ipad.png /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/Default~ipad.png


12/12/14 1:33:36 PM: [DEBUG] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/pngcrush -q -iphone -f 0 /Users/admin/Documents/dev/splish/ios/data/Icon-60.png /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/Icon-60.png


12/12/14 1:33:36 PM: [DEBUG] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/pngcrush -q -iphone -f 0 /Users/admin/Documents/dev/splish/ios/data/Ico...@2x.png /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/Ico...@2x.png


12/12/14 1:33:36 PM: [DEBUG] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/pngcrush -q -iphone -f 0 /Users/admin/Documents/dev/splish/ios/data/Icon-72.png /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/Icon-72.png


12/12/14 1:33:36 PM: [DEBUG] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/pngcrush -q -iphone -f 0 /Users/admin/Documents/dev/splish/ios/data/Ico...@2x.png /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/Ico...@2x.png


12/12/14 1:33:36 PM: [DEBUG] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/pngcrush -q -iphone -f 0 "/Users/admin/Documents/dev/splish/ios/data/Icon-76 - Copy.png" "/Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/Icon-76 - Copy.png"


12/12/14 1:33:36 PM: [DEBUG] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/pngcrush -q -iphone -f 0 /Users/admin/Documents/dev/splish/ios/data/Icon-76.png /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/Icon-76.png


12/12/14 1:33:36 PM: [DEBUG] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/pngcrush -q -iphone -f 0 /Users/admin/Documents/dev/splish/ios/data/Ico...@2x.png /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/Ico...@2x.png


12/12/14 1:33:37 PM: [DEBUG] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/pngcrush -q -iphone -f 0 /Users/admin/Documents/dev/splish/ios/data/Icon.png /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/Icon.png


12/12/14 1:33:37 PM: [DEBUG] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/pngcrush -q -iphone -f 0 /Users/admin/Documents/dev/splish/ios/data/Ic...@2x.png /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/Ic...@2x.png


12/12/14 1:33:37 PM: [DEBUG] Installing Info.plist to /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app


12/12/14 1:33:37 PM: [DEBUG] xcrun dsymutil -o /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app.dSYM /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/IOSLauncher


12/12/14 1:33:37 PM: [DEBUG] nm -j /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/IOSLauncher


12/12/14 1:33:39 PM: [DEBUG] xcrun strip -s /var/folders/y1/wr1j_9p123dch78cs4q4flnc0000gn/T/robovm1403684020675297939.tmp/exported_symbols_fixed /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/IOSLauncher


12/12/14 1:33:46 PM: [ERROR] /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strip: removing global symbols from a final linked no longer supported.  Use -exported_symbols_list at link time when building: /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/IOSLauncher


12/12/14 1:33:46 PM: [DEBUG] Copying AppStore provisioning profile: dist_profile (CJ65ND9R2J.com.barodapride.splish.IOSLauncher)


12/12/14 1:33:46 PM: [DEBUG] Code signing using identity 'iPhone Distribution: Mike Thielen (CJ65ND9R2J)' with fingerprint E506F8243C12BC014CF2E5908F76EC5860AE63C4


12/12/14 1:33:46 PM: [DEBUG] codesign -f -s E506F8243C12BC014CF2E5908F76EC5860AE63C4 --entitlements /var/folders/y1/wr1j_9p123dch78cs4q4flnc0000gn/T/robovm1403684020675297939.tmp/Entitlements.plist /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app


12/12/14 1:33:46 PM: [DEBUG] ln -f -s _CodeSignature/CodeResources /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app/CodeResources


12/12/14 1:33:46 PM: [DEBUG] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/PackageApplication /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.app -o /Users/admin/Documents/release/bvb/v1.0/IOSLauncher.ipa


12/12/14 1:33:48 PM: [ INFO] Package successfully created in /Users/admin/Documents/release/bvb/v1.0



Perhaps that has something to do with my issue? Appreciate your time trying to help with this.

Michael Thielen

unread,
Dec 12, 2014, 2:59:55 PM12/12/14
to rob...@googlegroups.com, mike.t...@gmail.com
Also, when pasting the full log here, I noticed my libgdx and robovm versions were not up to date (I had tried updating them due to this error but robovm was still building with its old cache). I deleted the robovm cache and rebuilt with libgdx 1.5 + robovm 1.0.0-beta-01 but still the same error comes up =(.

Michael Thielen

unread,
Dec 13, 2014, 4:07:18 AM12/13/14
to rob...@googlegroups.com, mike.t...@gmail.com
Okay, I have finally resolved this issue. The first step I took in trying to port my app was to create its itunes.connect page. The first step when you create a new app is specifying its name along with its app.id value or bundle identifier value. I had selected wildcard or * for the bundle ID. It's not okay to use wildcard for an app that uses Game Center or Cloud services.

Another word of caution - I would advise developers to be careful when setting up the itunes.connect page. I thought I would simply be able to change from wildcard to my specific bundle ID in itunes.connect but you can't change it. Not only that, you can't even delete an app from your itunes.connect unless it has been rejected! That meant that I couldn't create another app with the exact name I wanted since I already have an app with that name in my itunes.connect. So I had to slightly change the name of my app, and re-input all my game center achievements and leaderboards - quite a pain. The Apple submission process is much more tedious than Google Play.

Thanks for the help Niklas, sorry for taking your time.

Niklas Therning

unread,
Dec 15, 2014, 6:51:55 AM12/15/14
to Michael Thielen, rob...@googlegroups.com
I'm happy to hear that you managed to sort it out! Apple's submission
process is indeed a pain.

On Sat, Dec 13, 2014 at 10:07 AM, Michael Thielen
Reply all
Reply to author
Forward
0 new messages