Ionic1 CFBundleIconName Info.plist missing? - ionic-framework

I found already lots of answers regarding the 'missing CFBundleIconName' issue, but not how to fix it for ionic projects. That needs to be configured in their config.xml, but how, what and where? It's an ionic version 1 project. Upgrading to v2 is not an answer nor solution.
Missing Info.plist value - A value for the Info.plist key
CFBundleIconName is missing in the bundle 'foo.bar.sheep'. Apps that
provide icons in the asset catalog must also provide this Info.plist
key

I had this problem when I uploaded the IPA file created with robovm
here is how I solve it :
Modify your iOS project's "Info.plist.xml" file.
Under "dict" node, add like this:

Related

ERROR ITMS-90259: "Bad Bundle Executable. You must include a valid CFBundleExecutable key in your bundle's information property list file

I'm working on a multi-platform iOS and Mac app. When I try and Archive and Distribute to the App Store I run into this issue:
ERROR ITMS-90259: "Bad Bundle Executable. You must include a valid CFBundleExecutable key in your bundle's information property list file."
Verified that the Info.plist for the Mac target has a CFBundleExecutable
Tried Xcode 12 & 13
Tried using App Transporter
Used Xcode 13 RC and let that auto-generate the Info.plist
I've tried everything I could find online - there's not much - and I can't get the upload to succeed.
However, I was able to replicate the issue with an entirely empty project. No dependencies, no code, nothing. The project archives successfully, but the upload fails.
Any help would be appreciated. I've spent two days on this already.
An example project that fails: https://drive.google.com/file/d/1qUN5lHEWNyNHQV54fYPXMeRsuO-cpHqW/view?usp=sharing
We had two issues causing this, making it fail when uploading a Mac build to iTunes. The first issue, we had included a package (from Steam), that had its own plist and post build script.
com.rlabrecque.steamworks.net/Editor/RedistCopy.cs - build script
com.rlabrecque.steamworks.net/Plugins/steam_api.bundle.meta - folder with plugin and plist
We renamed the post build script and removed the plugin folder, not 100% sure if the renaming was needed.
Then, we had this in our own post build script that was causing issues, so we removed it too.
rootDict.SetString("CFBundleExecutable", "${EXECUTABLE_NAME}");
Then it worked! Also worth noting that we believe the CFBundleExecutable didnt actually end up matching the file name e.g. the file produced was a.pkg and the plist says:
<key>CFBundleExecutable</key>
<string>b</string>
But seems iTunes was ok with that. We use Unity and it seems in the pList the string was set to the "Product Name" (Edit > Project Settings > Player, at the top, "Product Name").
We also didnt need to use Transporter to upload.

How to change/add/edit Info.plist in Flutter

I have a serious question that I didn't find the answer to.
I have a Flutter app and needed to use a dependency and in its docs, it says this
Setup iOS Info.plist And the docs have this code:-
<key>io.flutter.embedded_views_preview</key>
<true/>
Where is that file? I can't seem to find it! Also if it doesn't exist can you help me create it in the right path? Thanks in Advance
The link to the DOCS for more information:- https://pub.dev/packages/easy_web_view#-readme-tab-
The info.plist file is found in the IOS module of your flutter project(ios/Runner/info.plist):
If you have Xcode, you can just right click on your root directory and click on Flutter --> Open ios module in XCode.
Once you do that Xcode will open up and you'll clearly see the info.plist file under the Runner file:

Domain=LaunchServicesError Code=0, Error=MissingBundleIdentifier, did not have a CFBundleIdentifier in its Info.plist

This is the error in the Simulator log
com.apple.dt.Xcode[667] <Error>: Error Domain=LaunchServicesError Code=0 "(null)" UserInfo={Error=MissingBundleIdentifier, ErrorDescription=Bundle at path /Users/Monica/Library/Developer/CoreSimulator/Devices/A20C808A-5E72-4B1D-847C-AD6C18B479E9/data/Library/Caches/com.apple.mobile.installd.staging/temp.a2aXl9/extracted/Potato.app did not have a CFBundleIdentifier in its Info.plist}
This is what my Info.plist looks like:
This is what my project settings look like:
I've already done on the Simulator: Simulator > Reset Content & Settings. In Xcode, I've done Product > Clean. I've also tried setting the Bundle Identifier in the Info.plist to the "Monica-Ong.Potato" and "com.Monica-Ong.Potato". I've tried changing the bundle identifier in my project settings to "Monica-Ong.Monica-Ong.Potato". Nothing has worked.
Any help would be greatly appreciated!
I'm also experiencing this issue, adding CFBundleIdentifier or ProductName or clean / reset ... did not solve my problem.
After digging the problem ( new project from scratch also had the same issue) i found that the assets folder was the blame, i had a referenced folder named Resources and inside i had a folder named Shaders.
I renamed the folder from Resources to assets and it's working now.
I still want to find out what's with the folder naming and why it was giving a totally different error type.
You need to set the Bundle display name which is "CFBundleIdentifier" in your info.plist to the name of your app. Which is different then the "Bundle identifier" This is used for the pop up messages that says "Potato would like to launch Facebook" and since it is null it crashes. You will also encounter errors if it is set to "".

iOS Push Notification SDK for Cordova

I want to implement push notification for Cordova.
I'm following this tutorial
And also downloaded the sample project
But I am unable to find Cordova.plist/Cordova.plist and don't have knowledge to configure this.
If somebody has already worked on this, please help on this point
Any type of suggestions and advice are welcome at this stage
That appears to be a typo.
It should be in the folder of the same name as your app in your project folder.
If your app was called MyCoolApp and it was in the MyCoolAppProject folder, say... the plist file would be:
MyCoolAppProject/MyCoolApp/Cordova.plist
However, as of 2.3.0RC1, Cordova.plist has been superseded by config.xml
there are no more .plist file in cordova, add your plugin to config.xml

Linking Error libxml2.dylib at Xcode 3.2.5 & SDK 4.2

I am trying to connect to twitter using oauth library. The library needs libxml2.dylib to be added. When adding this to SDK 4.1 or less the project build successfully. But when I use that with xcode 3.2.5 and SDK 4.2 I got errors about missing headers
I just add the libxml2.dylib to frameworks then from target configuration I add "${SDKROOT}/usr/include/libxml2" to the header search path.
I got error: libxml/xmlreader.h: No such file or directory.
the twitter oauth library I am trying to add is Twitter+OAuth, here's a tutorial where u can see that the src project it has, works correctly on SDK 4.1, and not even compile at SDK4.2 http://mobile.tutsplus.com/tutorials/iphone/twitter-api-iphone/
what I miss?
After trying several things, I found I have to change the header search path to /usr/include/libxml2/** instead of ${SDKROOT}/usr/include/libxml2/**
Select "All Configurations" (I prefer the project info unless I have very different targets), double-click the header search path field, enter the path and make sure to check the "Recursive" checkbox. The resulting path should have 2 asterisks. If you set the header search path for the project, all the targets should inherit it properly.
The tutorial you linked to is a bit inconsistent with regard to project/target settings, which is almost certainly the issue. I have verified that xmlreader.h is present in SDK 4.2.
I had the same issue, then i realized that i was only adding the header search path in the target section, and not in the project.. be sure that it is in both sides.