Skip to main content

🤖 Android SDK

The passkeyme-android-sdk provides native Android passkey authentication using the AndroidX Credentials API and FIDO2 libraries. This SDK handles only WebAuthn/FIDO2 operations and requires backend integration for complete authentication flows.

SDK Purpose

This is a low-level SDK for native Android apps. For React Native apps, consider:

📋 Documentation Structure

Our Android SDK documentation is organized into focused sections:

🔧 Configuration & Setup

Complete guide to configuring your Android app for passkey authentication:

  • Digital Asset Links (assetlinks.json) setup
  • AndroidManifest.xml configuration
  • SHA-256 certificate fingerprint generation
  • Allowed Origin URL creation
  • App signing configuration

📱 SDK Integration

Step-by-step SDK integration with code examples:

  • Installation and dependencies
  • Registration and authentication flows
  • Jetpack Compose integration
  • Traditional View integration

🔒 Security & Best Practices

Essential security considerations for production apps:

  • Secure credential storage
  • Error handling patterns
  • Analytics integration
  • Testing strategies

📚 API Reference

Complete API documentation:

  • PasskeymeSDK class methods
  • Data models and enums
  • Error types and handling
  • Code examples

🚀 Quick Start

Ready to get started? Here's the basic process:

  1. Configure - Set up Digital Asset Links and app configuration
  2. Integrate - Add SDK to your app with authentication flows
  3. Secure - Follow security best practices for production
  4. Reference - Detailed API documentation for advanced usage

Key Features

  • 🔐 WebAuthn/FIDO2 Support - Standards-compliant passkey authentication
  • 📱 AndroidX Credentials API - Modern Android authentication framework
  • 🛡️ Biometric Integration - Secure biometric authentication
  • 🎨 Jetpack Compose Ready - Modern UI toolkit support
  • 🔧 Flexible Integration - Works with existing authentication systems
  • 📊 Analytics Ready - Built-in event tracking support

📋 Prerequisites Checklist

Before implementing Android passkeys, ensure you have:

  • Android API 28+ - Minimum required Android version
  • HTTPS Domain - Required for Digital Asset Links
  • App Signing Key - For SHA-256 fingerprint generation
  • Backend Integration - Server-side passkey verification
  • Passkeyme Account - Application ID and configuration
Important Setup Requirements

Android passkeys require proper Digital Asset Links configuration and app signing setup. Without these, passkey authentication will fail. Follow our Configuration Guide carefully.

🏗️ How Android Passkeys Work

Need Help?

📱 Example Implementation

Here's a quick preview of what Android passkey integration looks like:

class AuthenticationManager(private val context: Context) {
private val passkeymeSDK = PasskeymeSDK(context, debug = true)

suspend fun registerPasskey(username: String, displayName: String) {
try {
// Get challenge from your backend
val challenge = getRegistrationChallenge(username)

// Perform passkey registration
val result = passkeymeSDK.register(
username = username,
displayName = displayName,
challenge = challenge.challenge,
rp = challenge.rp,
user = challenge.user,
pubKeyCredParams = challenge.pubKeyCredParams
)

if (result.success) {
// Complete registration with backend
completeRegistration(result.credential!!, username)
}
} catch (e: Exception) {
// Handle registration error
handleError(e)
}
}
}

Ready to implement Android passkeys? Start with our Configuration Guide to set up your app properly!