Skip to content

trongdth/OAuth2-for-iOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.

About

It's a library on iOS which is suitable for OAuth2

Resources

License

Stars

Watchers

Forks

Packages

No packages published