It's a library on iOS which is suitable for OAuth2
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
Example
Pod
.gitignore
.swift-version
.travis.yml
LICENSE
OAuth2.podspec
README.md
_Pods.xcodeproj

README.md

OAuth2-for-iOS

It's a library on iOS which is suitable for OAuth2. It supports authorization all websites which are using OAuth2 such as: smarthings, uber, fitbit, delivery, etc...

Build Status Version License Platform Carthage compatible

OVERVIEW

  1. https://github.com/lukeredpath/LROAuth2Client: I was developing based on this library. Basically, it covers > 80% the works. Please share and thanks him about this.

  2. https://github.com/nicklockwood/Base64: it's base64 library I'm using for this library.

IMPROVEMENTS

  1. UI:
  • Use autolayout.
  • Use ARC.
  • Make UX better.
  1. Authorization:
  • Add initWithDict function for OAuthRequestController
  • Add Authorization key in order to avoid some website requires it.
  1. More things:
  • Fix warning and some small issues for LROAuth2Client
  • Upgrade lib to pod project for easy use.

Usage

  1. To run the example project, clone the repo, and run pod install from the Example directory first.

  2. Declare OAuthRequestController:

NSMutableDictionary *dictService = [NSMutableDictionary dictionary];
[dictService setObject:@"https://www.fitbit.com/oauth2/authorize" forKey:kOAuth_AuthorizeURL];
[dictService setObject:@"https://api.fitbit.com/oauth2/token" forKey:kOAuth_TokenURL];
[dictService setObject:@"YOUR CLIENT ID" forKey:kOAuth_ClientId];
[dictService setObject:@"YOUR SECRET KEY" forKey:kOAuth_Secret];
[dictService setObject:@"YOUR CALLBACK URL" forKey:kOAuth_Callback];
[dictService setObject:@"activity heartrate location nutrition profile settings sleep social weight" forKey:kOAuth_Scope];


OAuthRequestController *oauthController = [[OAuthRequestController alloc] initWithDict:dictService];
oauthController.view.frame = self.view.frame;
oauthController.delegate = self;
[self presentViewController:oauthController animated:YES completion:^{

}];
  1. Implement OAuthRequestController method to obtain accesstoken:
- (void)didAuthorized:(NSDictionary *)dictResponse {
    NSLog(@"%@", dictResponse);
}

Installation

  1. Pod:
  • OAuth2 is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod "OAuth2"
  1. Carthage:
  • For Carthage installation:
github "trongdth/OAuth2-for-iOS" "master"

Author

Trong Dinh, trongdth@gmail.com

License

OAuth2 is available under the MIT license. See the LICENSE file for more info.