I've downloaded an Xcode project (a QR code encoder) that has two products:
a library
a demo which uses the library
When I do a build or a run, it just builds the library.
How do I configure Xcode to build both targets, and load the demo app when I do "run"?
I'm using Xcode 4.6.2.
I left my answer in the comments section.
The build scheme had the lib and target in a drop-down with the lib selected.
When I changed that selection from lib to demo and rebuilt it build both targets and downloaded the demo app to my phone.
Related
Our project uses several 3rd party packages using Swift Package Manager. Some of them are shared among the iOS and watchOS project, but several packages depend on UIKit, so they are not included in the "Frameworks, Libraries, and Embedded Content" part of the WatchKit Extension target in Xcode project settings.
I can build the iOS or the watchOS app and run in Simulator or on a device, but when I want to preview SwiftUI files included in the watchOS application, building fails.
What I read from the build log is that Xcode wants to build all of the packages added to the iOS project against watchOS too, which will fail obviously.
Is some of my project settings bad or is this a bug?
It seems to be an unresolved bug on Xcode 14.
There is an opened discussion on Apple Developer forums
I am developing an iOS application using ionic v3 framework, I was trying to use cordova-plugin-facebook4#6.4.0 (that includes Facebook iOS SDK v5.15.0), the plugin requires using Cocoapods dependency manager.
After installing the plugin and creating the iOS build by using ionic cordova build ios, I noticed that the pods library named "Pods______" in xcode under "Build Phases > Link Binary With Libraries" and after building the project using xcode, it shows an error "framework not found Pods______".
The error is because my iOS project name is in Arabic language (not English), which it seems that the pods library named based on the iOS project name, after renaming the project to english name everything worked fine. In ionic the project name sets in "config.xml" under name tag.
Is there a way to fix this issue by keeping my iOS project name in Arabic?
I discovered that to have the project name in English language (ASCII code) and the display name of the mobile application in a different language you have to write the "name" tag in config.xml as following <name short="نموذج">sample</name>
I have a SDK named 'MapmyIndiaAPIKit' in my project, after updating to Xcode 10.0, I am getting a error:
"Module compiled with Swift 4.1.2 cannot be imported by the Swift 4.2 compiler"
You need to compile the module in Swift 4.2.
In the Xcode project navigator, select the project. Then in the main view select the target for MapmyIndiaAPIKit and go to the build settings tab.
In the build settings, do a search for "Swift Language Version" and it should bull up the setting you need to change to 4.2.
A picture is worth a thousand words so...
If the API was supplied by a third party in compiled form, you'll need to get them to give you a copy for Swift 4.2. You can't link frameworks and apps that were compiled with different versions of Swift because the ABI is not yet stable.
I'm in the process of preparing my app for submission to the store and trying to generate a build.
The first step to generate a build is to clean and build an archive.
I recently upgraded my Xcode version to 9.0 Beta.
The Archive menu item is greyed out.
I have tried selecting Build for Running, Build for Profiling and Build for Testing but all none of these makes the archive menu item enabled (see image here).
Select the device "Generic iOS Device" and try again.
Bitcode is disabled.
After selecting Run As-> Xcode Project in MobileFirst Studio, trying to run the project in Xcode yields this error:
Image of the error
The framework is there and the .h is inside framework/Headers, as you can see in the image.
Using: Xcode7.2, MobileFirst7.1
In Xcode:
Build Settings (for target)->Search Paths->Framework Search Paths[Double Click]
In the drop-down next to $(PROJECT_DIR), select Recursive. Then try building again. It fixed my issue.