{ "id": "101812", "key": "TIMOB-11177", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [ { "id": "15274", "description": "2013 Sprint 06 API", "name": "2013 Sprint 06 API", "archived": true, "released": true, "releaseDate": "2013-03-25" } ], "resolution": null, "resolutiondate": null, "created": "2012-09-24T00:31:12.000+0000", "priority": { "name": "Low", "id": "4" }, "labels": [ "api", "ios" ], "versions": [], "issuelinks": [], "assignee": null, "updated": "2018-02-28T20:03:21.000+0000", "status": { "description": "This issue was once resolved, but the resolution was deemed incorrect. From here issues are either marked assigned or resolved.", "name": "Reopened", "id": "4", "statusCategory": { "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do" } }, "components": [ { "id": "10206", "name": "iOS", "description": "iOS Platform" }, { "id": "10207", "name": "Tooling" } ], "description": "Problem:\r\nMy app with a wildcard app-id failed validation during publishing to App Store in Xcode. It said the Bundle ID was invalid. It could be fixed by creating the non-wildcard app-id in Apple site and pubilsh it with the new provision.", "attachment": [ { "id": "32048", "filename": "Screen Shot 2012-09-26 at 12.23.27 PM.png", "author": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-09-26T19:28:48.000+0000", "size": 216226, "mimeType": "image/png" }, { "id": "41136", "filename": "Screen Shot 2013-07-29 at 4.56.58 PM.png", "author": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-07-29T23:58:53.000+0000", "size": 60137, "mimeType": "image/png" } ], "flagged": false, "summary": "iOS: wildcard app-id failed validation, iOS6, Titanium SDK 2.1.3 RC", "creator": { "name": "ericguo", "key": "ericguo", "displayName": "eric guo", "active": true, "timeZone": "Asia/Shanghai" }, "subtasks": [], "reporter": { "name": "ericguo", "key": "ericguo", "displayName": "eric guo", "active": true, "timeZone": "Asia/Shanghai" }, "environment": "Titanium SDK 2.1.3 RC, iOS SDK 6, Xcode 4.5", "closedSprints": [ { "id": 3, "state": "closed", "name": "Release 3.0.0", "startDate": "2012-09-27T05:26:46.636Z", "endDate": "2012-10-08T20:05:00.000Z", "completeDate": "2012-12-20T17:03:19.403Z" } ], "comment": { "comments": [ { "id": "221032", "author": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Hello Eric,\n\nI am going to try and reproduce this. Can you please provide a little more detail about your app setup? Are you trying to release a suite of apps with similar app IDs? Could you provide examples of the iTunes Connect and Apple developer portal settings you made for the app ID and provision?", "updateAuthor": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-09-26T17:56:43.000+0000", "updated": "2012-09-26T17:56:43.000+0000" }, { "id": "221067", "author": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "body": "I tried 2 scenarios:\n1) Xcode 4.5/iOS SDK 6.0, Titanium SDK 2.1.3.v20120925173111\nDeveloper portal settings:\napp id: com.eric.*\nProvision: Distribution- app store\n\nStudio settings:\nApp ID: com.eric.*\n\nAttempted to build with provision, and Studio will not build, citing \"*\" as an illegal character. \n{code}\n[ERROR] (null): error: CFBundleIdentifier 'com.eric.*' contains illegal character '*' \n[ERROR] \n[ERROR] Error: Traceback (most recent call last):\n File \"/Users/emerriman/Library/Application Support/Titanium/mobilesdk/osx/2.1.3.v20120925173111/iphone/builder.py\", line 1541, in main\n execute_xcode(\"iphoneos%s\" % iphone_version,args,False)\n File \"/Users/emerriman/Library/Application Support/Titanium/mobilesdk/osx/2.1.3.v20120925173111/iphone/builder.py\", line 1221, in execute_xcode\n output = run.run(args,False,False,o)\n File \"/Users/emerriman/Library/Application Support/Titanium/mobilesdk/osx/2.1.3.v20120925173111/iphone/run.py\", line 41, in run\n sys.exit(rc)\nSystemExit: 65\n{code}\n\nSecond scenario:\n2) Xcode 4.5/iOS SDK 6.0, Titanium SDK 2.1.3.v20120925173111\nDeveloper portal settings:\napp id: com.eric.*\nProvision: Distribution- app store\n\nStudio settings:\nApp ID: com.eric.app1\n\nFailed with attached screenshot. Seems there is some info on this on the web. We will continue to investigate.", "updateAuthor": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-09-26T19:27:12.000+0000", "updated": "2012-09-26T19:27:12.000+0000" }, { "id": "222804", "author": { "name": "blainhamon", "key": "blainhamon", "displayName": "Blain Hamon", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Do we have the project file? We should compare with a native app.", "updateAuthor": { "name": "blainhamon", "key": "blainhamon", "displayName": "Blain Hamon", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-10-09T22:30:03.000+0000", "updated": "2012-10-09T22:30:03.000+0000" }, { "id": "224025", "author": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Blain, I do not have the community app. All you need to do is follow my steps above outside of titanium to test that scenario.", "updateAuthor": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-10-17T18:47:08.000+0000", "updated": "2012-10-17T18:47:08.000+0000" }, { "id": "239818", "author": { "name": "bscofield", "key": "bscofield", "displayName": "Ben Scofield", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Please let me know if I need to create an additional ticket for this. I'm not certain this issue is related:\r\n\r\nI have an existing app that used a wildcard in the App Identifier. I need to update the App. When I Validate the build with xCode I received this error:\r\n\r\nThis bundle is invalid. The application-identifier entitlement is not formatted correctly; it should contain your 10-character App ID Seed, followed by a dot, followed by your bundle identifier: xxxxxxxxxx.com.HHapps.WhatTheHunt*\r\n\r\nI came across this: TIMOB-11177 and attemtped the work around in it: I created a new App ID without the wild card and a new provisioning profile based on the new App ID. I then tried to build the app and it continues to give me the same error above.\r\n\r\nI also received this error on a sister app and followed the work around above and it worked fine. \r\n\r\nThe difference between the two apps:\r\n\r\nThe app that Validates with the error mentioned above was the original App and its App ID is: com.HHapps.WhatTheHunt. When other Apps followed, they were specific to a state so they became: com.HHapps.WhatTheHuntIA (for Iowa). When I added a new profile for that app (Iowa) without the wildcard, the rebuild went fine. The original app has an App ID that is not longer than the bundle identifier with the wildcard.", "updateAuthor": { "name": "bscofield", "key": "bscofield", "displayName": "Ben Scofield", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-02-26T18:26:02.000+0000", "updated": "2013-02-26T18:26:02.000+0000" }, { "id": "243092", "author": { "name": "mstepanov", "key": "mstepanov", "displayName": "Max Stepanov", "active": true, "timeZone": "America/Los_Angeles" }, "body": "I believe this could be Entitlements.plist validation issue.\nAppStore does not allow wildcard appIDs when certain entitlements are requested, such as push notifications, in-app purchases, game center.", "updateAuthor": { "name": "mstepanov", "key": "mstepanov", "displayName": "Max Stepanov", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-03-20T01:19:26.000+0000", "updated": "2013-03-20T01:19:26.000+0000" }, { "id": "243455", "author": { "name": "blainhamon", "key": "blainhamon", "displayName": "Blain Hamon", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Wait, rewind. They used an app ID with a wildcard? [From Apple's docs|https://developer.apple.com/library/ios/#documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html#//apple_ref/doc/uid/TP40009249-102070-TPXREF105].\n\n{quote}\n\nThe bundle ID string must be a uniform type identifier (UTI) that contains only alphanumeric (A-Z,a-z,0-9), hyphen (\\-), and period (.) characters. The string should also be in reverse-DNS format. For example, if your company’s domain is Ajax.com and you create an app named Hello, you could assign the string com.Ajax.Hello as your app’s bundle identifier.\n\n{quote}\n\n\"\\*\" is not a valid character in an app ID. Note that the entitlement allows for app IDs but also for wildcard searches which *are* *not* *app* *IDs*. I'd be like naming a picture file \"\\*.\\*\".\n\nMarking invalid.", "updateAuthor": { "name": "blainhamon", "key": "blainhamon", "displayName": "Blain Hamon", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-03-21T17:55:29.000+0000", "updated": "2013-03-21T17:55:29.000+0000" }, { "id": "243456", "author": { "name": "blainhamon", "key": "blainhamon", "displayName": "Blain Hamon", "active": true, "timeZone": "America/Los_Angeles" }, "body": "A wildcard is not a valid app ID, per Apple's docs.", "updateAuthor": { "name": "blainhamon", "key": "blainhamon", "displayName": "Blain Hamon", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-03-21T17:56:07.000+0000", "updated": "2013-03-21T17:56:07.000+0000" }, { "id": "263820", "author": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Hello, see attached image from the developer portal. Here is the text from the setting in the portal:\nWildcard App ID\nThis allows you to use a single App ID to match multiple apps. To create a wildcard App ID, enter an asterisk (*) as the last digit in the Bundle ID field.\n\n", "updateAuthor": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-07-29T23:57:46.000+0000", "updated": "2013-07-29T23:57:46.000+0000" }, { "id": "263826", "author": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Reopening for more investigation. I think it should be possible to submit a wildcard app ID providing push is not enabled, and other \"fully formed\" app ID requirements are not in place.", "updateAuthor": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-07-30T00:03:33.000+0000", "updated": "2013-07-30T00:03:33.000+0000" }, { "id": "394299", "author": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "body": "[~emerriman] Have you any new wisdom in the past 3 years about this?", "updateAuthor": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "created": "2016-08-24T21:41:33.000+0000", "updated": "2016-08-24T21:41:33.000+0000" } ], "maxResults": 11, "total": 11, "startAt": 0 } } }