iPhone Provisioning Profile problems - iphone

I'm having trouble getting the Application Identifier or Bundle Identifier set up. In my distribution profile, I have included the identifier "com.., and then copied it exactly into the the app's Info.plist file under "Bundle Identifier". In the past, this has done the trick, but now I'm getting the error
Provisioning profile 'irow beta' specificies the identifier 'com..' which doesn't match the current setting 'com.yourcompany.***.
So it seems that its somehow still using the default of com.yourcompany.APPLICATION_NAME, but it shouldn't after I have changed it in the Info.plist, right?
I think this means that xcode isn't recognizing that PLIST for some reason, because when I change the name of the icon file, for example, or other such attributes, nothing changes. If this is the problem, how do I make xcode recognize the PLIST?
Thanks,
James

I'm sure, that if you'll go in xcode to your target->properties and change it there, it will catch, so the icon. Probably the plist you're trying to change doesn't appear in build settings of a certain target, that's why you don't see the change.

Related

Catalyst app info.plist not being recognized

I am trying to submit my first catalyst app to the Mac App Store. I have setup the App Store information in iTunes Connect, and I have confirmed that the info.plist in app has the following key in it:
<key>LSApplicationCategory</key>
<string>public.app-category.business</string>
However when I go to upload to the app store I get the message that I need to add the LSApplicationCategory
ERROR ITMS-90242: "The product archive is invalid. The Info.plist must contain a LSApplicationCategoryType key, whose value is the UTI for a valid category. For more details, see "Submitting your Mac apps to the App Store"."
I have confirmed that both public.app-category.business is correct, and I have also tried using the value "Business". I get the same error message. Is there something else I need to look at?
The key which you are adding to .plist file is wrong. Add below key-value pair. Full list here.
<key>LSApplicationCategoryType</key>
<string>public.app-category.business</string>
slicerdicer's recommendation worked for me. To add some additional detail, you can also set the App Category by going to Project / Targets / General. It's the very first option.
I had sucsessfuly upload two apps using catalyst then the third failed with that error. I found this and seemed to work.
To the info.plist add App Catagory with what ever catagory your app fits. I used Productivity.
I was converting an iOS app to a Mac app, and I was updating the file info.plist, and it was not actually updating the overarching project.
I ended up having to go to the overarching project, under the left side TARGETS tab, I selected my app, went to the Info tab, and added the App Category there.

My iOS app has a + in its name. Bundle is invalid due to this. Need help resolving

I did find a couple of very similar or identical threads here but they seemed to end before full resolution.
My app runs fine on my device with no build error. I am trying to submit app for approval and I get the following error, "This bundle is invalid. The executable name, as reported by CFBundleExecutable in the info.plist file may not contain any of these characters ..... +". So I opened my info.plist file and changed the info.plist file executable name from the macro ${EXECUTABLE_NAME} to the name of my app without the +. I did a new archive but then get an error saying the "codesign failed with exit code 1".
In another thread I read to just change targets name removing the + from there and leaving the info.plist file with the macro for the executable name, restarting Xcode and then archiving again. That allowed me to archive but I received the same error in iTunes Connect.
I have been working on this all day and don't find the solution. Can anyone please point me in the right direction? Thank you for any help.
You have to change ${PRODUCT_NAME} in Build Settings.
And you have to set name for display at Bundle Display Name in Info.plist.
See here for more details:
Bundle Name, Executable Name, Product Name...anything else?
There are a few different ways to make this work but this seems like the easiest/fastest
First change the "Product Name", so that it does not contain any special characters - how to change Product Name
Next, I changed the "Bundle display name" (CFBundleDisplayName) and "Bundle name" (CFBundleName) in my Info.plist to be hardcoded to have the '+' in it rather than referencing the ${PRODUCT_NAME} variable.
If you have already created app and distribution profile in iTunesConnect then you should also change the "Bundle identifier" in Info.plist - hardcode it to whatever you entered in iTunesConnect rather than xxx.${PRODUCT_NAME:rfc1034identifier} variable (iTunesConnect bundle identifier is shown in an error message if you try to build an archive before changing it)
Finally, build your app and Apple should not complain about the character when you validate. Your app should still show up with the '+' sign on the homescreen when you run on a device because of the hardcoded bundle keys.
Clean your simulator and device
If building for iOS Simulator won't work after that ("error: failed to attach to process ID 0" message) then go to "IOS Simulator" menu bar and click "Reset Content and Settingsā€¦"
If running on your device doesn't work after that then delete the app from your iPhone/iPad and run it again
I left the Executable name as-is in the Info.plist because the ${EXECUTABLE_NAME} variable it references by default is comprised of the ${PRODUCT_NAME} and a couple of other variables that I did not want to mess with.
thanks to Nathan Welch who's answer was basis for this tutorial
double click the target and select the build settings tab.search for product name and change it to without + sign.as mentioned before, the bundle display name in info.plist can have the same name with + sign
You have to rebuild. You can't tamper with the bundle after it has been built.
1.This bundle is invalid : Make sure your using bundle id is available or deleted by some one and also open the distribution provision profile is created for app store status is valid or invalid.
2. ${EXECUTABLE_NAME} : please provide your app name with + in plist
3. codesign failed with exit code 1 : see this link and do like http://stackoverflow.com/questions/4842717/iphone-codesign-object-file-format-invalid-or-unsuitable

Build and Archive for TestFlight produces big question mark

I'm using TestFlight to get beta users to test my iPhone app. I've never done this before and so I'm a bit concerned with the process.
I've been following these steps to create my .ipa, but after step 3 I see lots of question marks in the organiser window (next to the name of my app to be specific). Should I be concerned. It seemed as if everything else worked.
Is your bundle display name set in the project info.plist file? Check that all values in info.plist are set correctly.
You mean like this one?
Nothing to worry, this happens when you don't provide an application Icon. Add a 57x57 png icon to your project and save it's name in the Project-Info.plist file for the key Icon File.

Submitting for App Store in 4.2: Strange "Whitespace" error from XCode submission validation

I originally submitted and was approved with the 4.1 SDK. I upgraded to the 4.2 and was making some fixes, and when I tried to submit to the App Store I got this message:
"Filename may not contain whitespace."
My info.plist had the default ${Executable} as the Executable File property. I went ahead and changed it. Tried rebuilding, and got the same error. Strange thing though, the filename that XCode was assigning was a match to my "Bundle Display Name," which is what controls how the app is named in Springboard. I changed the Bundle Display Name property to have No_Spaces, and the app passed validation.
I don't really want my app to have an underscore in the name, so I'm wondering if this is a bug or if I missed something somewhere. Keep in mind that NOTHING other than some code tweaks changed between submission and approval in 4.1, and submitting in 4.2
Look at this Thread:
https://devforums.apple.com/message/282652#282652
Known problem with XCode 3.2.5
Change the Product Name in the Distribution Build Settings for your app's Target, and remove spaces from that name. It's one of 5 "names" for an app (Target name, Product Name, Bundle display name, Bundle Identifier, iTunes store name), which can all be different. You can still have spaces in your iTunes name and the under-the-icon Bundle display name.

Where does xcode take application's Identifier from?

I think my head soon explode.
I've been working on my application for some time and finally git an iPhone for testing on device, now I'm trying to run my app on iphone but can't do it. I've done all necessary steps but getting an error
[BEROR]Code Sign error: a valid provisioning profile matching the application's Identifier 'com.yourcompany.MyProject' could not be found
My provisionign profile is called XXXXXXXXX.com.myname.*
in info.plist I changed Bundle identifier to com.myname.myapplication
my project name is MyProject because I can't change it, but my target and executables called myapplication
I've checked all setting and can't even find this yourcompany anywhere
but still getting this error
where need I seek?
thank you
Xcode uses the bundle identifier found in the target's Info.plist file for code signing.
Which Info.plist file is selected is actually a build setting (normally in the target), and is usually set up by Xcode correctly. If you manually edited the Info.plist's bundle identifier value to your identifier, Xcode should use this identifier and code signing should work.
The default Info.plist file contains a bundle identifier that contains Xcode build settings and is processed to the final identifier when building the target.
The answer by Nikolai Ruhe said "If you manually edited the Info.plist's bundle identifier value to your identifier, Xcode should use this identifier and code signing should work." This is true. However, these days (I'm not sure how it was in Sep 2010), xcode uses a default bundle identifier that is a function of the variable ${PRODUCT_NAME}. This same variable is used in various other places, e.g., as bundle name, bundle display name, etc. Thus, I would recommend changing ${PRODUCT_NAME} instead, and this change will then propagate to the Info.plist's bundle identifier, etc.
How to change ${PRODUCT_NAME}? Select the appropriate target, go to "build settings", expand the "packaging" section, and then edit the value of "Product name".
Select your target, go to summary. Change bundle identifier to com.myname.myapplication from com.yourcompany.MyProject. It should work! I have been using it like this and it works great everytime. You can do the same from info.plist file as well.