패키지, 저장소 및 앱 카테고리 검색

패키지 상세v1.1.1

flutter_uae_pass

iOS, Android 및 웹 플랫폼을 지원하는 Flutter용 UAE Pass 플러그인입니다. 이는 비공식 버전입니다.

AndroidiOSWeb
30일 다운로드
108
좋아요
17
Pub 점수
130

패키지 설치

flutter pub add flutter_uae_pass

패키지 개요

공개 정보를 바탕으로 생성한 선택 가이드입니다.

Android, iOS 및 웹 플랫폼에서 UAE Pass 인증을 위한 통합을 가능하게 하는 플러터 플러그인입니다. 이 비공식 구현은 사용자가 UAE Pass 자격 증명을 사용하여 인증할 수 있게 하여 아랍에미리트의 정부 및 민간 서비스에 접근하는 것을 간소화합니다. 플러그인은 안전한 토큰 검색을 지원하며 플랫폼별 구성 설정을 처리하여 개발자가 앱 내 신뢰할 수 있는 신원 확인 기능을 쉽게 구현할 수 있도록 합니다. UAE 디지털 신원 표준 준수를 요구하는 애플리케이션용으로 설계되었습니다.

사용 사례

  • 아랍에미리트 기반 정부 서비스 앱
  • 신원 확인이 필요한 민간 부문 앱
  • 디지털 온보딩 워크플로우
  • UAE 거주자를 위한 안전한 로그인
  • 웹 및 모바일 앱 인증

주요 기능

  • 크로스 플랫폼 지원 (Android, iOS, Web)
  • 공식이 아닌 기능적인 구현
  • 토큰 기반 인증
  • UAE 패스 신원 확인을 지원합니다
  • pub.dev를 통한 간단한 통합

적합한 대상

  • 아랍에미리트 중심 애플리케이션을 개발하는 개발자
  • 준수된 디지털 신원 솔루션이 필요한 앱
  • 보안 사용자 인증이 필요한 프로젝트
  • UAE 시장에 초점을 맞춘 스타트업
  • 제3자 인증 통합하는 프론트엔드 팀

고려 사항

  • UAE 패스에서 공식적으로 승인되지 않음
  • 새로운 UAE 패스 API 변경 사항을 반영하기 위해 업데이트가 필요할 수 있습니다
  • 공식 플러그인과 비교해 문서가 제한적입니다
  • 추가 백엔드 검증이 필요할 수 있음
  • 플랫폼별 설정 단계는 다를 수 있습니다

원본 README

연결된 소스 저장소의 README 원문 스냅샷입니다. 최신 내용은 저장소에서 확인하세요.

flutter_uae_pass

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

Demo

Platform Screenshots

Android iOS Web
Android iOS Web

Platform Support

Platform Supported Implementation
iOS ✅ WKWebView with full screen modal
Android ✅ Custom WebView Activity
Web ✅ OAuth2 popup authentication

Getting Started

  • Add the plugin to your pubspec.yaml file
flutter_uae_pass: ^1.0.6
  • Run flutter pub get
flutter pub get
  • Import the package
import 'package:flutter_uae_pass/flutter_uae_pass.dart';
final _uaePassPlugin = UaePass();


  • Initialize the plugin - Sandbox
  await _uaePassPlugin.setUpSandbox();
  • Initialize the plugin - Production
    await _uaePassPlugin.setUpEnvironment(
      clientId: "<clientId>",
      clientSecret: "<clientSecret>",
      urlScheme: "myappscheme",
      redirectUri: "<redirectUri>",
      isProduction: true,
      language : "en",
    );

Scopes are as follows

  • urn:uae:digitalid:profile:general
  • urn:uae:digitalid:profile

Main features

  • signIn()
  • getAccessToken(String authCode)
  • getProfile(String token)
  • signOut()

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

  • idn
  • email
  • firstnameAR
  • firstnameEN
  • fullnameEN
  • gender
  • lastnameAR
  • lastnameEN
  • mobile
  • nationalityAR
  • nationalityEN
  • sub
  • userType
  • uuid
  ProfileData? profileData = await _uaePassPlugin.getProfile(accessToken);

iOS Setup

  • Add the following to your Info.plist file

		<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

  • Update android:launchMode="singleTask" the AndroidManifest.xml file

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

            </activity>

  • Set up the queries in your AndroidManifest.xml file (To make our app open UAE Pass App)
    <queries>
        <package android:name="ae.uaepass.mainapp" />
        <package android:name="ae.uaepass.mainapp.qa" />
        <package android:name="ae.uaepass.mainapp.stg" />
    </queries>

  • Set up the intent filter in your AndroidManifest.xml file (To Reopen our application after uaepass done)
            <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>

Web Setup

For web applications, no additional configuration is required! The plugin automatically uses a popup-based OAuth2 flow that works in all modern browsers.

Web-Specific Features:
  • Popup Authentication: Opens UAE Pass login in a secure popup window
  • Automatic Redirect Handling: Automatically detects and processes the authorization callback
  • CORS Compliance: Uses proper HTTP requests for token exchange and profile retrieval
  • Session Management: Handles cookies and localStorage for proper logout functionality
Browser Requirements:
  • Modern browsers with popup support (Chrome, Firefox, Safari, Edge)
  • JavaScript enabled
  • Cookies enabled for proper session management
Production Considerations:
  • Ensure your redirect URI is properly configured in the UAE Pass dashboard
  • For production, make sure your domain is whitelisted in UAE Pass configuration
  • Test popup blockers - inform users to allow popups for your domain if needed

References

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

카테고리

의존성

의존성 목록 1 개

  • plugin_platform_interface^2.0.2

소스 저장소

이 패키지를 사용하는 프로젝트

아직 데이터가 없습니다.