CFBundleIdentifier Collision - ios

I am doing an Update to my app. I added a Watch Extension and I had many errors regarding provisioning profiles and so on when trying to submit the binary. However, I somehow managed to get it to work and submitted my update. Today I was rejected because of some small issue. I quickly changed it and now I am trying since hours to resubmit, but now I am getting this error:
CFBundleIdentifier Collision - The Info.plist CFBundleIdentifier value
'com.mentalfaculty.Ensembles' of 'MyAppName.app/Ensembles.bundle'
is already in use by another application.
I don t really understand what is wrong. The thing is, I did just fixed a really small thing, besides this I didn t change anything, I used same provisioning profiles since some days ago when I was able to submit, so I really don t get the problem what has changed from my last submission. I also don t understand this error message: what other application?
"Ensembles" is a framework that does Core Data iCloud Sync. I am using it since two App versions before and never changed something. I just followed the install instructions, and I had to integrate that Ensembles project in my own project. So this framework is kinda a project within my project. It has it s own info.plist. Obviously that error has something to do with it, but since I am not really an expert in these things, I m afraid to change something.
So why was I able to submit two working and approved updates, was able to submit one update binary (that was rejected) and now getting this error all the time although I really didn t change anything and did the same steps when I was able to submit some days ago?
Would be really thankful for any help here !
Thanks !

I am the developer of Ensembles, and started hearing of this error a few days ago. It seems something has changed on Apple's servers, and even bundles that are just Resources, like Ensembles.bundle, must have a unique identifier. It is not clear if this is a new policy, or an overzealous script on their server.
In any case, the solution is reasonably straightforward: you can just go into Ensembles.bundle and change the bundle identifier to something unique of your own. Eg. com.mycompany.ensembles.bundle
Update
Apple seem to have resolved this issue server side.

Thanks Drew for your help again, already helped me with another Ensembles related question in another thread here! Your framework is really great, so easy to implement and it takes away all that iCloud integration pain right out the box. If you want to see your work in action, check my profile, there is a link to my app. Mentioned your work of course in its settings bundle.
Last night I ended up doing exactly that, changing the Bundle Identifier in the Ensembles framework. After that iTunes Connect accepted my built. I was just afraid of changing something there and screw all up, but at least from my tests on my devices, it still seems to work like before... Strange because I uploaded a built just 10 days ago without the need of changing the Bundle Identifier, so Apple must have changed something really recently.
So for others having that problem, what I did:
Ensembles iOS.xcodeproj - Ensembles Ressources iOS - Ensembles Ressources iOS-ibfo.plist
I changed the Bundle identifier from
com.mentalfaculty.${PRODUCT_NAME:rfc1034identifier}
to
com.mentalfaculty.MyCompanyName.${PRODUCT_NAME:rfc1034identifier}
Thanks !

Related

iTunes Connect won't let me create a new version of an existing App

When I try to add a new iOS version of an existing App on iTunes Connect, I get the following error: "Your changes couldn't be saved. Try again. If the problem persists, contact us." I've tried lots of various Store Version Numbers, so that doesn't seem to be the problem.
I can create a tvOS update without a problem, but that still doesn't help with the iOS one.
This has happened on two of my apps that I'd like to update. The problem started a little before the itunesconnect.com downtime around April 22 (which I thought might be causing it).
Anyone run into something similar or know a workaround?
Apple fixed the problem after I submitted a itunesconnect support request. It had to be escalated to the dev group, so it took about a week.
Everything is working now. They didn't say, but my guess is that it was related to trying to create a new build while they were starting maintenance on the server.
I had same problem and resolved it by logging in with different user and saving new version worked.

How to get crash logs of Testflight external testers on Xcode or iTunes connect?

Is there any ways to know what's wrong with someone's app. It is working on everyone else's device but this person.
The person tried removing the previous version and installing the new one, but it still does not work. I suspect that one of the files that I place in the documents folder might still be there... but the format of this file has changed since...
Apple has a technote about this named Debugging Deployed iOS Apps.
Also, if your tester syncs up their iPhone with a Macintosh or PC, iTunes also helpfully moves logs into predictable places where they can be retrieved from.
I am attempting to solve this logging of execution in TestFlight with the following simple approach...
In in-App Billing you really have to use TestFlight, so the problem is serious.
The "print("text") statements can be replaced in the code to calls to a func printTestFlight(text: String) which writes the strings to a database along with some identifier so you know the user.
This is quite simple and obvious, and to an extent it works.
If there are events which are logged by the os rather than teh user, then this approach misses those, notably the interesting ones around a crash. I'd be happy to hear from anyone who knows how to do thiso

Corona "Certificate Not Installed" even though it is

I realize this question comes up a lot, but there is no one solution that has seemed to work for anyone.
I am working on developing an app for iOS and recently had to transfer my app to another developer account. My first account was an individual account where I was "Agent," and now the new account (corporate I think) has me listed as "Agent."
I created the certificates like I have always done, downloaded them, and placed them in my keychain. Everything said it was in order. I then created the app ID and re-entered all of the devices into the devices column. I moved on to the provisioning profiles, and again everything worked well. I downloaded them and imported them into Xcode, and when I go under settings and look under the account, it all looks in order.
Then when I attempt to build in corona, it tells me "Certificate Not Installed." Even though I had created the certificate on that device.
A possibility is that having 2 apple dev accounts signed in at once was confusing, so I logged out of my other, and, not surprisingly lost my ability to build for those either. I could still not build for iOS.
I have tried restarting my computer several times, and deleting everything and starting from scratch. I have tried creating the certificates a variety of ways and billions of combinations. I even tried using my other computer - although it also had dev set up for my other account.
Am I missing something crucial here? I don't have another computer to start over on if that is what it takes, but I guess I could clear one...
I greatly appreciate any suggestions!!
More specifically, for Starter and Basic subscribers, on OS-X you will need to download a new latest public build (2014.2393a). For Pro and Enterprise subscribers, you will need 2014.2405 or later.
Starter and Basic subscribers may have to add something to their build.settings for now due to another change Apple instituted this week. See: http://coronalabs.com/blog/2014/08/21/ios-building-issue
After some more hours of digging, I finally found a solution. Apparently apple changed some things in their newest releases, specific to their provisioning profiles and something in Xcode.
Corona Forums had this thread that solved ALL of my problems: http://forums.coronalabs.com/topic/50226-certificate-not-installed-cant-build-for-ios/page-2#entry260678
To summarize the forum - you need to install a new build of corona that solves the problem: https://developer.coronalabs.com/downloads/coronasdk
I hope my struggles have helped someone :)

Xcode signing problems with iphone app: is it possible to build and run without signature?

Not the most bright question, but I really need an answer.
I created an iPhone app with a friend. I did the first 100 hours of the development (by myself) and he did the rest (sometimes I'd help him debug in class). He then took it over completely; finished it and uploaded it to the app store (no idea how that process works). Since we don't know git well enough I emailed him the code. A few days ago I asked him the most recent version of the code back, so he mailed it to me in a zip file and now I can't build the app.
What I want to do is build and run the app in the simulator.
Instead I get the following error:
Even the play button doesn't display anything.
My friend also has no idea why this error occurs. My guess is that he barely knew enough to upload everything to the app store. Also I don't have a developer account, because the person who we are building this app for has it. He gave it to my friend, but my friend doesn't want to give it to me. And the person who has the developer account is not responding.
What should I do? I "just" want to build and run it on my macbook (I know, it probably isn't that easy).
What do I need to know?
So my target was the following at first. This was my only option. Clicking at it did not help, it only showed this thing as an option.
Then after the comment of Nitin I poked around for a bit (for the 10000th time). I did this by clicking on the gear icon which has the option "Manage Schemes..."
I don't know what a scheme is and I remembered that I never saw this menu box before. For fun I clicked on "Autocreate Schemes Now". I got this as a result.
My guess is that it was a new target to build at, and indeed it was.
I can now build and run my project without signing.
Thanks for the comment, it led me to the answer while clicking around once again :)

Getting an iOS app fix verified by a customer prior to general release

When contacted by a customer who is experiencing a problem in your iOS app and making an update to fix it, is there a way to get the user to verify the fix privately before making the update available to everyone?
Background: I was contacted by a user who is seeing a weird rendering problem since installing the latest update. Unfortunately I have not been able to reproduce the problem -- the customer uses an old iPhone model that I don't have access to, and I've had no luck reproducing it with the same iOS version in the simulator. However I made an update that I have good reasons to believe will fix it (I undid the small changes to the rendering code that were in the last update and did an alternative implementation that completely bypasses the issue, if my guess of what the issue is about is correct). But I obviously don't have 100% confidence that it will fix the bug since I can't repro it.
So I've submitted the update to iTunesConnect and have asked the user to wait until Apple has approved it. If it turns out that the change doesn't fix this issue, it would all be such a waste for the customer (who will have waited for nothing), for all my other users (who will see an update for nothing) and for Apple (who will have reviewed an update for nothing).
This is what ad-hoc deployment is for - testing. You can manually deploy a build to the customer (you need to know his devices UDID) or you can use a service like TestFlight (free) which helps to automate and manage the ad-hoc process.

Resources