I am trying to compile my Flutter project in Xcode 11.6, however it shows me the error -
ld: framework not found AppTrackingTransparency
All my code seems to be working fine, however after research I found out that this is something that is required for iOS 14, but if I download Xcode 12 I won't be able to publish my app in release mode as Apple doesn't accept builds from beta versions.
You either wait for the Xcode 12 official release or copy the AppTrackingTransparency.framework into the Xcode 11.6's frameworks folder
What worked for me was that I was using a pod that was only supported for Xcode 12 that contained the AppTrackingTransparency framework as it is now a requirement if you are integrating any API that is an ad network, so check if your pods have gotten updated automatically and downgrade it if you want it to work.
If you need help implementing the 'AppTrackingTransparency', you can refer to the following question:-
No such module 'AppTrackingTransparency' Error
Hope this solves your problem:)
Related
I have a pure Objective-C Xcode project for my iOS application. Is there any reason why I receive the following error message by mail after submitting my App to AppConnect? I don't have any Swift dependencies in my project.
ITMS-90426: Invalid Swift Support - The SwiftSupport folder is
missing. Rebuild your app using the current public (GM) version of
Xcode and resubmit it.
I use the latest Xcode 11.0 version from the App Store. I made a full rebuild. I don't use CocoaPods, I can't even find the String "Swift" in my entire project
well this is a common issue when an application is builded by a beta version or Xcode installed directly from a file not from AppStore, this error appears on frameworks, libs, bundles or build is not related directly with Swift.
To fix the issue you need to download Xcode from AppStore and update the latest public version with Mojave or Catalina (4th October 2019). Remember clean and rebuild, check the other linker flags to not include Swift flags or build phases dependencies.
I hope it helps you, cheers :D
I have tried to build an app through to the AppStore but they rejected it due to the app using sdk 11.4. Stating that it needs to use the updated version of 12.1.
The current Xcode I have installed is 10.1 or 10B61 which is the latest without making use of a Beta. I have searched through the settings trying to find how to update the sdk as well as maybe target that newer base SDK.
Things I have tried:
Searched for newer Xcode (stated above)
Searched through settings for the base SDK version number so it can be changed.
Went to AppStore to find any updates for Xcode (there were none)
Tried googling how to change/update the sdk, but none give an explicit answer on where this can be done. It merely states that Xcode 10 should come with a base SDK of 12.1, but that does not seem to be the case here.
Please note that this is not to target the minimum version. I know where that is and it is set accordingly. No issues there.
EDIT:
I have run $> xcodebuild -showsdks and it shows that sdk 12.1 is the sdk that is installed.
However, it seems that it is somehow overriding it to 11.4 when it is trying to build to AppStore. Not sure why.
The issue did not seem to be with Xcode itself but rather Bitrise that we were using to build and publish the app to the AppStore. Once the correct stack was selected for the building/publishing, it managed to build, however, we then found a different issue.
Using Xcode 10.1 we built the app in iOS 12.1, however, Bitrise seems to have an issue with React-Native third-party dependencies when it comes to Xcode 10.0+. It just doesn't seem to install them correctly and throws an error while compiling. (dependency: double-conversion)
The only advice we could find online was to downgrade xCode to 9.4 and then manually add the Device Support files (from targeted SDK to 12.1) to the app. This is something we don't want to do.
We are waiting for Bitrise to sort their stuff out, but in the meantime, we are looking into building straight from Xcode or Fastlane.
I integrated Vungle Video ads framework in my project(Universal), works fine with the iPhone, but when I try to run the same Project in iPad it fails at compilation throwing following logs
This is due to you not being on the latest version of XCode:
"Our newest iOS SDK (3.0.13) was released in support of the newest version of XCode (6.3). Please verify you are using XCode 6.3 or higher to ensure a smooth integration.
If you are still using a version older than XCode 6.3, head over to the Appstore for a quick update to make sure you start serving Vungle ads in no time."
https://support.vungle.com/hc/en-us/articles/204451204-Vungle-s-iOS-SDK-3-0-13-and-XCode-6-3
I have answered a similar question HERE. please check it out.
I short what the problem might be that you are probably having multiple Vungle SDKs inside your project and so it is throwing duplicate symbols error. It might be possible that the error is due to another linker warning e.g.
ld: warning: directory not found for option '-F"/Users/user/Desktop/qwer/../../Documents/Unity Projects/Unity 5.0.0 projects/MyGame/Assets/Editor/Vungle/VungleSDK"'
View the above mentioned link for further details.
I have searched Stack Overflow, Google and fellow peers for a current workaround in Xcode 6 for this error but have failed in doing so.
Note that this error occurs ONLY when attempting to run my app ON A DEVICE USING XCODE 6.
(This is not an issue when using the simulators, and I can build my app on a device using Xcode 5)
It seems to be a framework or library issue, but since it is able to work in almost every other possible way, I am not sure where the solution resides. I was using Xcode 6.0.
Here is the error:
I have checked my architecture settings, my frameworks and project files. Everything that needs to be included seems to be there.
This looks like it might be a silly error to do with Cocos2d and/or Xcode6. I have used SpriteBuilder to create the app. If you have a fix or have this error, any insight would be appreciated, thank you!
Found a fix. Downloaded the new Xcode6 version from the App Store. Xcode 6.0.1 (6A317) and it runs on all devices and simulators.
(There was no notification to update Xcode, you must search for it and download the new version)
I just upgraded from Xcode 6 Beta 2 to Xcode Beta 3 and am now getting the following warning when building my project:
ld: warning: relocatable dylibs (e.g. embedded frameworks) are only supported on iOS 8.0 and later (#rpath/libswift_stdlib_core.dylib)
It is a warning but seems to mean my current setup will not work on iOS 7.1, which is my deployment target. How can I track down which frameworks are embedded, and how can I fix this for iOS < 8.0?
This appears to be a bug of Beta 3. As pointed out by Apple Engineer on this post.
I have also been living with this warning when running apps on iOS 7.1 device.
You see and add them on the project page when you select the target: tab General->Embedded Binaries (and they then appear in Build Phases->Embed Frameworks).
Embedded frameworks for OSX were available in Xcode 5, but not for iOS.
WWDC session regarding new features in Xcode 6 specifically promised dynamic frameworks for iOS 8 (someone please add citation when developer center comes back online). So far, with all Xcode 6 betas, I have had no problems compiling and debugging an app with frameworks on iOS 7.
But since this wasn't promised, frameworks for iOS7 is something you cannot depend on (e.g. this may stop working in later betas; an app with embedded framework for iOS 7 may be rejected, etc.). That may explain why they added an explicit warning.
There's not much you can do if this feature turns out to be indeed unsupported, other than remove the frameworks from the target and use static libraries as we did with Xcode 5. Or go the iOS8-only route.
After using XCode 6.1.1 I am able to put the code on iOS 8+ iOS7.1.2 and iOS 6.1.3 Although the warning is still there but the app works absolutely fine on all the 3 OSs
======================
Lucky guy... My project keeps failing to compile after I referenced the PushKit framework.
The project is a new project created by Xcode with only 3 new functions for testing Push Notification.
The workaround is to put the PushKit framework as "embedded", but this is not a good solution since my working Xcode project will be generated from Unity3d. Making the changes manually will break the auto build process.
I had this error after adding a C++ framework (DeepBelief) to a project. Adding an empty .cpp file to the project fixed it.
I'm using Beta4, and found the answer on the DeepBelief github site:
XCode may be skipping the standard C++ library, and that's needed by
the DeepBelief.framework code. One workaround I've found is to include
an empty .mm or .cpp file in the project to trick XCode into treating
it as a C++
project.
Read this github post from ReactiveCocoa
The bug is still present in XCode6 GM and so XCode6 final release:
Well, I get the exact same issue in xcode6GM no matter whether I
create framework for swift OR objc :-[[[[[[[[[[[[[[[
According to Apple Extension Programming Guide:
You can make a containing app available to users running iOS 7 or earlier, but then must take precautions to safely link embedded frameworks when running in iOS 8 or later.
talking about app extensions, but if you read it, you can understand that this applies to embedded frameworks in general.
this is happening because one of your embedded binaries's deployment target is lower than your applications target. lower your embeded binaries's building target and be fine.
this was the error cause in xcode 6.1.1
i was using xcglogger with deployment target ios 8.0, and my application's deployment target 7.0. set the xcglogger's deployment target ios 7.0 and problem solved.
After using XCode 6.1.1 I am able to put the code on iOS 8+ iOS7.1.2 and iOS 6.1.3
Although the warning is still there but the app works absolutely fine on all the 3 OSs
Yes not able to submit the app for review.
Had to do by changing the modern frameworks to Static libs.