Closed blancaclapp closed 8 years ago
This makes it impossible to reproduce the following steps in the tutorial: THIS MAKES IT IMPOSSIBLE TO REPRODUCE THE FOLLOWING STEPS IN THE TUTORIAL: tHiS MaKeS It iMpOsSiBlE To rEpRoDuCe tHe fOlLoWiNg sTePs iN ThE TuToRiAl:
im having the same issue! any fixes?
The GTL project is evolving, and unfortunately the API quickstarts have not been updated to reflect the changes.
GTLCore.xcodeproj is replacing GTL.xcodeproj
GTLTouchStaticLib is not part of the new project. App projects can directly compile the source umbrella files: GTLCommon_Sources.m GTLNetworking_Sources.m GTLOAuth2_Sources.m
IS THERE ANY GOOGLEians ? OR WE HAVE TO GOOGLE THEM FOR ANSWER ON THIS ISSUE :(
pr0gramm3r8hai, as one of the other project owners stated; the GTL is currently evolving and some of the quickstarts are behind. They should get updated in time.
While trying to integrate the library into my app to simply query the Calendar API for a list of events, I'm getting a host of errors about ARC because the classes don't support it. Is there not a branch that has ARC support? It's been around for like 4 years..
Apple has never said code has to use ARC, and it actually can slow down some code. You can turn off ARC on a per file bases or use a target without ARC enable to compile these sources: https://github.com/google/google-api-objectivec-client/wiki/BuildingTheLibrary#arc-compatibility
You should forget about that tutorial as it's old and doesn't work. (I know it looks all official).
You should use cocoapods with this pod. Delete all the old google stuff from your project.
https://cocoapods.org/pods/Google-API-Client
It should solve your issues.
If you don't know how to use cocoapods checkout https://guides.cocoapods.org/using/getting-started.html
I got this to work by creating the GTLTouchStaticLib target myself in GTLCore.xcodeproj.
.m
files in the groups Objects
and Utilities
in GTLCore > GTLSource > Common.libGTMSessionFetcherLib.a
.gtm-session-fetcher/Source
in Build Settings > User Header Search Paths.-fno-objc-arc
to Build Settings > Other C Flags.@yvan After installing via Cocoapods, I get the error "GTMSessionFetcher.h file not found" through the import of GTMOAuth2Authentication.h
Any ideas?
EDIT: Fixed the problem because I had the Preprocessor Macro from doing the QuickStart "GTM_USE_SESSION_FETCHER" set to 1. Removing this fixes the error.
@mattquiros I messed around w/ that myself. Couldn't get it working right. I would strongly recommend using cocoapods instead. It installs the google code neatly and modularly in your project without having to do a 10 step guide in Baal knows how many sub menus on xcode.
@eytanschulman Glad you could get it working. For anyone else with the macro preprocessor issue see this stack post:
@yvan :+1:
Thanks a lot for the post! Though the tutorial really needs to be updated.
They can just post the Cocoapods link! :?
The wiki has been updated to also include the CocoaPod info.
This is ridiculous ....come on google
Guys you are probably costing the world economy $10's if not $100's of thousands of dollars by not updating this tut. How many thousands of developers have gone through your OFFICIAL TUT thinking there is no way GOOGLE would make such big mistakes in their instructions and/or leave a tut as important as this not updated for months" so they tediously go over each step of the tut over and over and over until they want to pull their hair out at a rate of $100 per hour hopefully until they do some research and stumble into this thread.....all bc you guys are too lazy to update your read me?
p.s even if the tut worked its obvious that whoever wrote it has become a victim of their own intelligence, forgetting along the way that just because you understand highly advanced ways of doing things , does not mean it is the best way to teach the public how to do things. It feels very much like the tuts creator wanted to 'wow' us with their deep understanding of X-Code instead of make a no nonsense easy to follow tut anyone from beginners to experts could follow along with without problems in a few mins.
You can also add $7 for a bottle of Excedrin you costed me tonight with your gross incompetence .
@fresh83 as mentioned in the other issues. If you've got specific, it would be useful to be able to help try to address things. Everything on this projects github pages is hopefully correct. There are cocoapods also for the developers that want that. If there are docs on other sites, pointers to those are needed so we can try to help get those updated (we won't always be able to directly edit them).
@fresh83 just a word of advice man, getting angry at people does not want to make them help you. programmers are often overworked and busy and go out of their way to invest time in things for others. keeping docs up to date is not easy or time-free. use the cocoapods solution if you have issues. it looks like you only spent a day or two on it, it's probably not the end of the world.
Why is it that the tech giants with the smartest people in the world have the most difficult to digest and integrate api's on the face of the planet(Google & FB specifically)?Yes I understand that you have alot more traffic and functionality to cover, but that's no excuse for whats going on here.
You say one or two days as if it should just be a expected or normal to have to spend 1-2 days ($1600+ in profit per freelancer eaten by Google ) just to get the api installed is normal. Its a API. It first and foremost feature should be expressing it and providing examples that allow developers to be up and running in a matter of seconds. Instead the impression I get from Google & FB's API's specifically is that you guys have a group of developers that are too smart for their own good and are using this very important repo as a showcase to show the world how much smarter and advanced they are by over complicating things. Making things more complicated is not impressive. This API should be as simple as "add the core GoogleAPI pod , add the specific pods you needs ( in my case calendar) and then from there everything is simplified down to init a session manager, have the user login and then from there make requests like this using the provided endpoints."
A truly impressive developer is one that has a deep enough understanding of their code that they can explain it in a way that everyone from a novice to a expert can understand. If my frustration makes you want to help me less because im speaking up about what 1000 other developers are passively thinking then I will gladly accept that as the cost of getting a point across. Your job is important, keeping things up to date, functional and simple is important.
On Fri, Apr 1, 2016 at 1:28 PM, Yvan Scher notifications@github.com wrote:
@fresh83 https://github.com/fresh83 just a word of advice man, getting angry at people does not want to make them help you. programmers are often overworked and busy and go out of their way to invest time in things for others. keeping docs up to date is not easy or time-free. use the cocoapods solution if you have issues. it looks like you only spent a day or two on it, it's probably not the end of the world.
— You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub https://github.com/google/google-api-objectivec-client/issues/127#issuecomment-204479371
For what it's worth. I'm very happy to see that this project is active again. There has been quite some time of inactivity and I was considering dropping my usage of it and migrating to something else. So I'm very happy and grateful to those who have been putting their time in recently to get this project up-to-date again.
Jermainehamilton802@gmail.com
On Mon, Apr 4, 2016 at 6:36 AM -0700, "Willem de Jonge" notifications@github.com wrote:
For what it's worth. I'm very happy to see that this project is active again. There has been quite some time of inactivity and I was considering dropping my usage of it and migrating to something else. So I'm very happy and grateful to those who have been putting their time in recently to get this project up-to-date again.
— You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub
Similar issue (I think - sorry, newbie) in the Apps Script and Drive iOS Quickstarts: GTL.framework does not link for iOS 9.3 because:
Undefined symbols for architecture arm64: "_SCNetworkReachabilityUnscheduleFromRunLoop", referenced from: -[GTMOAuth2SignIn stopReachabilityCheck] in GTL(GTMOAuth2SignIn.o) "_SCNetworkReachabilityCreateWithName", referenced from: -[GTMOAuth2SignIn startReachabilityCheck] in GTL(GTMOAuth2SignIn.o) "_SCNetworkReachabilitySetCallback", referenced from: -[GTMOAuth2SignIn startReachabilityCheck] in GTL(GTMOAuth2SignIn.o) -[GTMOAuth2SignIn stopReachabilityCheck] in GTL(GTMOAuth2SignIn.o) "_SCNetworkReachabilityScheduleWithRunLoop", referenced from: -[GTMOAuth2SignIn startReachabilityCheck] in GTL(GTMOAuth2SignIn.o) ld: symbol(s) not found for architecture arm64
I found that: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.3.sdk/System/Library/Frameworks/SystemConfiguration.framework.tbd points to /System/Library/Frameworks/SystemConfiguration.framework, which (I'm guessing) is the one built for the Mac, not for iOS 9.3...
I have not solved my issue; will try CocoaPods as suggested here. Any other thoughts appreciated..
The reference in the framework can be because on the device that's where the path actually ends up at.
Just opening the Core project and building with the iOS Framework and Tests scheme is what is failing for you?
reply.
It is not possible to finish to Google API integration due to inconsistencies between the tutorial and the real files found in project:
b- Using File > Add Files to "Quickstart"..., add the following projects to the workspace from the libraries you cloned in the previous step: google-api-objectivec-client/Source/GTL.xcodeproj --> There isn't any GTL.codeproj, there is GTLCore.xcodeproj instead.
This makes it impossible to reproduce the following steps in the tutorial:
d- Select the "GTL" project's "GTLTouchStaticLib" target and make the following changes: Add the library GTMSessionFetcher/libGTMSessionFetcherLib.a to Build Phases > Link Binary with Libraries. e- Delete the "GTL" project's "GTLFramework" target. f- In the Project navigator, delete GTL project's GTL Source > Common > HTTPFetcher group.
Thanks !