HMS-Core / huawei-account-demo

Sample code for quickly integrate Huawei ID. HUAWEI Account Kit provides developers with simple, secure, and quick sign-in and authorization functions.
https://developer.huawei.com/consumer/en/hms/huawei-accountkit?ha_source=hms1
50 stars 52 forks source link
account authorization hms huawei sign-in signout

# HMS Core Account Kit Sample Code

English | 中文

Contents

Introduction

The sample code for Android encapsulates the server-side APIs of Account Kit, containing multiple demo apps for your reference or direct use. The sample code offers: hmssample: sample code package, which implements the following functions: sign-in, authorized sign-in, and sign-out logger: records logs.

Installation

To use capabilities offered in the sample code, make sure that HMS Core (APK) 4.0 has been installed on your device.

Environment Requirements

Android SDK version: 23 or later

JDK version: 1.8 or later

Configuration

Parameters in Contant.java include: CLIENT_ID: app ID, which can be obtained from AppGallery Connect CERT_URL: public key. To get it, obtain the public key URI from jwks_uri and then access this URI. ID_TOKEN_ISSUE: same as the value of iss in the ID token

Sample Code

The Java sample code for the server-side shows how to implement the following functions:

  1. Use the authorization code to obtain the access token in TokenAPIDemo.java.
  2. Use the public key to verify the ID token in IDTokenAPIDemo.java.
  3. Parse the access token in GetTokenInfoAPIDemo.java.

The Java sample code for the client-side shows how to implement the following functions:

  1. Sign-in in ID token mode.
  2. Sign-in in authorization code mode.
  3. Silent sign-in.
  4. Sign-out from an ID.
  5. Authorization revocation.

Service logic: Implement sign-in in ID token mode and authorization code mode in AccountActivity.java.

Result

The server-side Java sample code prints the access token and JSON Web Token.

Technical Support

You can visit the Reddit community to obtain the latest information about HMS Core and communicate with other developers. If you have any questions about the sample code, try the following:

License

The sample code is licensed under Apache License 2.0.