AJOAuth2 example is showing the process of authenticating against an OAuth 2 provider.
This project makes it easy to integrate:
User Component
- oAuth2 - process of authenticating and authorization.
This example is based on OAuth 2.0 Protocol. It implements the native application which is written in ObjC and supports end-user authorization and authentication. Furthermore it also supports the user credentials flow from end-user for their username and password and use them directly to obtain an access token thereafter show profile and you can change edit the profile and change password of user.
- Requirements
- Documentation
- Dependency Management
- Localization
- Roadmap
- Contributing & Pull Requests
- License
- Xcode 8
- CocoaPods, Here is the Installation Guide
- Min iOS Version
9.3
Follow along the Wiki to find out more.
Below are the third-party libraries used in this application demo, It offers us to easy and fast integration.
pod 'AFOAuth2Manager'=> mechanism of oAuth2pod 'MCLocalization'=> Support Localization stuff (with multiple languages)pod 'SVProgressHUD'=> Loading wait Indicatorspod 'JJMaterialTextField'=> Materialized Textfieldpod 'LGSideMenuController'=> Slider Animationpod 'SDWebImage', '~>3.8'=> Image Caching and load on UIImageView
Keep all strings in localization files right from the beginning. It is good not only for translations but also for finding user-facing text quickly stuff. If you want to support any other language, Let say German language, you need only two things to do make it work.
- Add
de.jsonfile into the project and always better to add json file underSupporting filesfolder structure. Also, copy key-value pairs fromen.jsonand add values to their text languages inde.json. - Modify
getLanguages()method which is defined in Helper.m and adddeis internal_name andGermanis display_name of the language.
return @{
@"languages": @[
@{ @"internal_name":@"en" , @"display_name":@"English" },
@{ @"internal_name":@"hi" , @"display_name":@"Hindi"},
@{ @"internal_name":@"de" , @"display_name":@"German"}
]
};Here's the TODO list for the next release (2.0).
- Refactoring of source code.
- Add API and UI tests.
- Correct all issues.
Patches and pull requests are welcome! We are sorry if it takes a while to review them, but sooner or later we will get to yours. Note that we are using the git-flow model of branching and releasing, so please create pull requests against the develop branch.
AJOAuth2 is available under the MIT license. See the LICENSE file for more info.