Framework red after importing it into a workspace swift - swift

I have downloaded this https://github.com/MichelDeiman/Programming-Project-4_-Smashtag-Mentions Twitter project to use the Twitter.framework it comes with. When I open it from the download, it loads fine. However, when I move the Twitter.xcodeproj to my Xcode workspace, it turns the framework red and doesn't allow me to use it.
I have searched for a solution and think it has to do with finding the correct path for the framework but have been unsuccessful. Any thoughts?

Red means it hasn't been built yet. I suspect you can't use it because it hasn't been imported in the Build settings. I'd check there first. If it's imported correctly then it should built when you build the targets that refer to it.

Related

How would I go about adding libraries to iOS app

Im brand new to iOS development, and Im in a conundrum. I need to add an iOS library from Github into my project to use. However, it does not support Carthage or CocoaPods.
I have tried dragging and dropping the source files into my project, but have had no luck. Ive even tried dragging the entire 'Source' folder into the project, but with the same results.The most common error occurs when I have added the files into my file structure like so:
The error is: Cannot find MathExprParser in scope.
The link to the Git repo is this: https://github.com/softyde/MathExprParser.
I don't really know what Im doing in this respect, Im used to using CocoaPods and Cartfile...
Note Parser.swift, Scanner.swift, and String+Char.swift are the files in question.
EXPRTESTING is my main project, not part of a workspace.
This was unfortunately, an act of stupidity... =(
According to the repo, you have to copy and past some items into the project structure. I copied the entire folder MathExprParser into my project.
Now, I had tried this before, but I was hung up on trying to import the MathExprParser module.
I realized that since the classes I needed to use were physically inside the project, I didn't need to import it, or use MathExprParser.Parse. I could use just Parse().

Xcode 11 use Framework in AppExtension

I want to create an app with multiple SiriKit-Intents. Some of those need a 3rd party framework which, sadly, I cannot install using spm so I did it quick and dirty and downloaded the latest release and manually imported it into Xcode. And everything worked just fine until I wanted to upload to ASC.
That's what it said and I guess the root is in my project settings... There I have the same Framework in both Intent-extensions like I normally do and everything works fine in development but I just can't upload it...
Thanks
I'm kinda embarrassed but here's how I managed it:
1. Add the Framework to the main app (even tho I don't use or need it there). And make sure it's Embedded & Signed (see 2nd screenshot in question)
2. In the project settings for all extensions which need the framework, make sure the Framework status is: Do not Embed.
It's simple and easy if you know what to do....

Three20/Three20.h file not found for Archive

I'm trying to update an app that already have the Three20 library. Now i'm using xcode 4.5 and everytime i try to make an Archive i recive this error:
Three20/Three20.h file not found
At the beginning i wasn't able to make any kind of build,but after the adding of $(BUILT_PRODUCTS_DIR)/../three20 and $(BUILT_PRODUCTS_DIR)/../../three20 in the Header Search Path of the build and the target settings i can make a Build in my Device. Anyway if i try to made an Archive to publish my app, the same errors returns. What i can do? I have already reinstall the last version of Three20.... I have to try this solution that i found on internet:
Go to Xcode4 Preferences (Cmd + ,) > Locations > Build Location > and select “Place build products in locations specified by targets”
In xcode 4.5 i can't approach this solution...Maybe Build Location menù is changed, i can't find the option “Place build products in locations specified by targets” .... Someone knows where i can found this setting?
At least there's someone how have made successfully an Archive on Xcode4.5 and Three20?
I also support switching away from three20, but sometimes it's not that simple.
To resolve your issues, you can try to use CocoaPods. it's a library dependencies tool that let's you add any library you need. someone added a pod for three20 few weeks ago.
That should let you build your project using the standard xcode archive process.
If you don't feel like using cocoapods, you can also build that app using the "Build for..." -> "Archiving". you can find it in the same "Product" menu. it will generate a .app file that you can submit using the Application Loader app.
you can find the .app file by secondary clicking on the target name under the "Products" folder in your project sidebar.
I did the following to make it work for me:
for the three20 static library, I used cocoapods to include the files within the main project.. it just got rid of all the trouble three20 was giving me (and they are lots..) btw i tried replacing three20 with Nimbus.. but Nimbus was lacking on some of the features that my project was using three20 for.. so Nimbus wasn't helpful.
set skip install to yes under build settings for all other sub projects/static libraries and switched the copy headers from public to project under build phases
most importantly: under the sub libraries.. under build phases i ensured that copy files destination was changed from Absolute path to products directory.
and that was it!
hint: to get an idea of the offending files that's causing your archive to create an archive file rather than an ipa do this:
Select the archive and click the Distribute button.
Select the 'Save Built Products' option.
Hit Next and Save.
Browse the created directory in Finder.
The 'libraries' subdirectory will identify the libraries that you need to set the Skip Install to Yes.
in some cases usr/local/include will identify the culprit header files you need to move from Public to Project or the files that you have to change from absolute path to products directory. but that directory (ie usr/local/include) varies depending on your sublibrary directory structure
Three20 has't update in long time.And it has many bugs.set up this framework is very hard.
you can try nimbus.It come from three20.
Nimbus' Background
Nimbus has been built with much inspiration from the Three20
framework. That being said, there are a number of fundamental problems
with Three20 that Nimbus works very hard to avoid. Among them:
Poor documentation. Spaghetti dependencies. Suffering from a "kitchen
sink" complex. A complex build structure. An enormous number of
difficult-to-solve bugs. Next-to-zero test coverage. For its
weaknesses, Three20 does provide a good deal of value through its
feature set. It is used in over 100 apps in the app store by companies
such as Facebook, LinkedIn, Posterous, Meetup, and SCVNGR.
Nimbus hopes to one day provide as much value as Three20 does on a
feature-by-feature comparison, but with the invaluable benefit of
sublime documentation and test coverage.

Trouble with core-plot example folder (examples not working)

The examples are not working for me, why?
It tells me loadDocSet.scpt => Shell Script Invocation Error.
I have build an own example in my project and it works, but I can't open the examples.
The Linking and everything else for the configuration of core plot is done well.
Googled that problem but didn't find a solution till now.
It sounds like you're trying to build the documentation set instead of the proper application or framework target. In Xcode, make sure your build scheme is set to CPTTestApp-iPhone or whatever the example application is that you need to build, and not Documentation.
Based on the latest version in the Mercurial repository, the sample applications compile just fine for me when the scheme is set as I describe above.

Adobe RMSDK in iPhone

I am researching on Abode's RMSDK for iOS. I ve the SDK with all the library files. There is a sample project given in that SDK which works fine. But If I include the lib file in my own sample app its is throwing a linker error. Can any one help me out in this. Is there any sample code that i can refer regarding this SDK.
Thanks in advance
You can try to add reference to a rmservice project insteed of using lib file.
Then, you must verify all paths described in project settings is correct. I've had to placed my project in same folder of rmservice so that I don't have to change any setting.
If you still want to use it as a lib, you should perform two actions:
1) Add the lib in the build phases, on the Link Binary with libraries area. Be sure to select your target on the left side, not the project.
2) In your build settings on the Library Search Paths you should write down the path where the library resides.
For iOS, if you are doing RMSDK11, then follow the book2png in samples folder, this will allow you build you own application.
If you are doing RMSDK10, then you probably will run into 32/64 bit support problem.