MohamedAbd0 / uae_pass

A UAE Pass plugin for Flutter for iOS and Android only. This is an unofficial version.
https://pub.dev/packages/flutter_uae_pass
MIT License
2 stars 2 forks source link

uae_pass

Un-official UAE Pass Flutter plugin for Android and iOS.

Demo

Getting Started

flutter_uae_pass: ^0.0.1
flutter pub get
import 'package:flutter_uae_pass/uae_pass.dart';
final _uaePassPlugin = UaePass();
  await _uaePassPlugin.setUpSandbox();
    await _uaePassPlugin.setUpEnvironment(
      clientId: "<clientId>",
      clientSecret: "<clientSecret>",
      urlScheme: "myappscheme",
      redirectUri: "<redirectUri>",
      isProduction: true,

    );

Scopes are as follows

Main features

Call the authenticate method

  String? authCode = await _uaePassPlugin.signIn();

To get access token

  String? accessToken = await _uaePassPlugin.getAccessToken(authCode);

To get public profile data

you can fetch this information from profile

  ProfileData? profileData = await _uaePassPlugin.getProfile(accessToken);

iOS Setup


        <key>LSApplicationQueriesSchemes</key>
        <array>
            <string>uaepass</string>
            <string>uaepassqa</string>
            <string>uaepassdev</string>
            <string>uaepassstg</string>
        </array>
        <key>CFBundleURLTypes</key>
        <array>
            <dict>
                <key>CFBundleTypeRole</key>
                <string>Editor</string>
                <key>CFBundleURLName</key>
                <string>myappscheme</string>
                <key>CFBundleURLSchemes</key>
                <array>
                    <string>myappscheme</string>
                </array>
            </dict>
        </array>

Android Setup


 <activity
            android:name=".MainActivity"
            android:exported="true"
            android:launchMode="singleTask"
            .....

            </activity>
    <queries>
        <package android:name="ae.uaepass.mainapp" />
        <package android:name="ae.uaepass.mainapp.qa" />
        <package android:name="ae.uaepass.mainapp.stg" />
    </queries>
            <intent-filter >
                <action android:name="android.intent.action.VIEW" />

                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />

                <data
                    android:host="success"
                    android:scheme="myappscheme" />

                <data
                    android:host="failure"
                    android:scheme="myappscheme" />

            </intent-filter>

References

Thanks for Faisal for this repo uae_pass_flutter i improve the code and create this package