Swiftpack.co - google/google-api-objectivec-client-for-rest as Swift Package

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
See all packages published by google.
google/google-api-objectivec-client-for-rest v2.0.0
Google APIs Client Library for Objective-C for REST
⭐️ 640
🕓 12 weeks ago
iOS macOS watchOS tvOS
.package(url: "https://github.com/google/google-api-objectivec-client-for-rest.git", from: "v2.0.0")

Google APIs Client Library for Objective-C for REST

Project site https://github.com/google/google-api-objectivec-client-for-rest
Discussion group http://groups.google.com/group/google-api-objectivec-client

CocoaPods SwiftPM ServiceGenerator

Written by Google, this library is a flexible and efficient Objective-C framework for accessing JSON APIs.

This is the recommended library for accessing JSON-based Google APIs for iOS, macOS, tvOS, and watchOS applications.

To get started with Google APIs and the Objective-C client library, please read USING.md for detailed information. The example applications can also help answer some questions, but there isn't an example for every service as there are just to many services.

Generated interfaces for Google APIs are in the GeneratedServices folder.

In addition to the pre generated classes included with the library, you can generate your own source for other services that have a discovery document by using the ServiceGenerator.

If you have a problem or want a new feature to be included in the library, please join the discussion group. Be sure to include http logs for requests and responses when posting questions. Bugs may also be submitted on the issues list.

Externally-included projects: The library is built on top of code from the separate project GTM Session Fetcher. To work with some remote services, it also needs Authentication/Authorization.

Google Data APIs: The much older library for XML-based APIs is still available.

Other useful classes for Mac and iOS developers are available in the Google Toolbox for Mac.

GitHub

link
Stars: 640
Last commit: 5 weeks ago
jonrohan Something's broken? Yell at me @ptrpavlik. Praise and feedback (and money) is also welcome.

Release Notes

v2.0.0 Release
12 weeks ago

With this release the source layout has been changed to better match what SwiftPM wants (this was done in the model used by Firebase to hopefully allow for easier integrations). Both SwiftPM and CocoaPods now support #importing headers as #import <GoogleAPIClientForREST/HEADER_NAME.h>. So if you had something like:

#import "GTLRDrive.h"

It will need to be replaced with:

#import <GoogleAPIClientForREST/GTLRDrive.h>

The modular imports (@import in ObjC and all import directives in Swift) are unchanged and unique to each package system because of the inherent differences in the package systems.

Other changes:

  • Generated Services have been update.
  • The wiki has been retired and the content moved to markdown pages in the repository to allow for contributions going forward.
  • SwiftPM and CocoaPods systems now run all the unittests.
  • The Xcode project within the project was dropped and CocoaPods and/or SwiftPM can be directly used to work on the project to ensure things continue to work.
  • The Github Actions have been improved to have better coverage on future changes to the project.
  • GTLRDefines.h was pruned to be more minimal. #527
  • Prefer imports over fwd decls to avoid potential partial types #538
  • Support for a SessionFetcher 2.0 release #542
    • This also directly import the SessionFetcher headers into the public headers here avoid issues with Swift interface not having some properties due to the previous forward declarations.

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics