Skip to main content
Android Developers
Essentials
  • Build AI experiences
  • Build AI-powered Android apps with Gemini APIs and more.
  • Get started
  • Get started
  • Start by creating your first app. Go deeper with our training courses or explore app development on your own.
  • Hello world
  • Training courses
  • Tutorials
  • Compose for teams
  • Kotlin for Android
  • Monetization with Play ↗️
  • Extend by device
  • Build apps that give your users seamless experiences from phones to tablets, watches, headsets, and more.
  • Adaptive apps
  • Android XR
  • Wear OS
  • Android for Cars
  • Android TV
  • ChromeOS
  • Build by category
  • Learn to build for your use case by following Google's prescriptive and opinionated guidance.
  • Games
  • Camera & media
  • Social & messaging
  • Health & fitness
  • Productivity
  • Enterprise apps
  • Get the latest
  • Stay in touch with the latest releases throughout the year, join our preview programs, and give us your feedback.
  • Latest updates
  • Experimental updates
  • Android Studio preview
  • Jetpack & Compose libraries
  • Wear OS releases
  • Privacy Sandbox ↗️
Design & Plan
  • UI Design
  • Design a beautiful user interface using Android best practices.
  • Design for Android
  • Mobile
  • Adaptive UI
  • Android XR
  • Widgets
  • Wear OS
  • Android TV
  • Architecture
  • Design robust, testable, and maintainable app logic and services.
  • Introduction
  • Libraries
  • Navigation
  • Modularization
  • Testing
  • Quality
  • Plan for app quality and align with Play store guidelines.
  • Overview
  • Core value
  • User experience
  • Accessibility
  • Technical quality
  • Security
  • Safeguard users against threats and ensure a secure Android experience.
  • Overview
  • Privacy
  • Permissions
  • Identity
  • Fraud prevention
  • Build for Billions
  • Create the best experience for entry-level devices
  • Overview
  • About new markets
  • Android (Go edition)
Develop
  • Gemini in Android Studio
  • Your AI development companion for Android development.
  • Learn more
  • Get Android Studio
  • Core areas
  • Get the samples and docs for the features you need.
  • Samples
  • User interfaces
  • Background work
  • Data and files
  • Connectivity
  • All core areas ⤵️
  • Tools and workflow
  • Use the IDE to write and build your app, or create your own pipeline.
  • Write and debug code
  • Build projects
  • Test your app
  • Performance
  • Command-line tools
  • Gradle plugin API
  • Device tech
  • Write code for form factors. Connect devices and share data.
  • Adaptive UI
  • Wear OS
  • Android XR
  • Android Health
  • Android for Cars
  • Android TV
  • All devices ⤵️
  • Libraries
  • Browse API reference documentation with all the details.
  • Android platform
  • Jetpack libraries
  • Compose libraries
  • Google Play services ↗️
  • Google Play SDK index ↗️
Google Play Community
/
  • English
  • Deutsch
  • Español – América Latina
  • Français
  • Indonesia
  • Italiano
  • Polski
  • Português – Brasil
  • Tiếng Việt
  • Türkçe
  • Русский
  • العربيّة
  • فارسی
  • বাংলা
  • 中文 – 简体
  • 中文 – 繁體
  • 日本語
  • 한국어
Android Studio Sign in
  • Games dev center
Overview Google at GDC Downloads Samples Guides Reference Community
Android Developers
  • Essentials
    • More
    • Overview
    • Google at GDC
    • Downloads
    • Samples
    • Guides
    • Reference
    • Community
  • Design & Plan
    • More
  • Develop
    • More
  • Google Play
  • Community
  • Android Studio
  • Get started
  • Game development basics
  • Developer previews
  • Release notes
  • File a bug
  • Develop
    • About game development tools
    • Use a game engine
      • About game engines
      • Develop with Defold
        • Install and configure projects for Android
        • Support multiple form factors and screen sizes
        • Export to Android
      • Develop with Godot
        • Install and configure projects for Android
        • Godot renderer options
        • Support multiple form factors and screen sizes
        • Export to Android
      • Develop with Cocos
        • Steps to build a game for Android in Cocos Creator
        • Publish your game as Google Play Instant app in Cocos Creator
        • Publish your game with Android App Bundle in Cocos Creator
        • Remote debugging on Android
      • Develop with Unity
        • Unity on Android
        • Get started with game development in Unity
        • Get launch-time graphics API recommendations using the vkQuality Unity engine plugin
        • Create an Android App Bundle with Unity
        • Integrate Play Asset Delivery
        • Integrate Play Integrity API
        • Integrate Play In-App Updates
        • Integrate Play In-App Reviews
        • Unity Lighting in Mobile Games
        • Use Android Performance Tuner
          • Overview
          • Enable the API
          • Integrate the plugin
          • Initialize the library and verify operation
          • Define annotations, fidelity parameters, and quality levels
          • Add loading time recording functions
          • Include Addressables scenes
          • Run the monitor app
          • Review and publish
          • Troubleshoot common errors
          • Reference
        • Debug ANRs for Unity games
        • Common Unity Games ANRs
        • Symbolicate Android crashes and ANR for Unity games
        • Get started with the Memory Advice API for Unity games
        • ADPF Unity Adaptive Performance and Android provider
        • Make your game great on all form factors
      • Develop with Unreal
        • Unreal on Android
        • ADPF Unreal Engine plugin
      • Request permissions for data access
    • Create or extend a game engine
      • About custom game engines
      • Start with GameActivity
        • About the GameActivity library
        • Get started with GameActivity
        • Use game text input
        • Migrate from NativeActivity
        • Configure graphics
        • Understand Android game loops
      • Process input events
        • Add touch support
        • Support text input
        • Add mouse support
        • Support sensor input
      • Optimize frame pacing
        • About the Frame Pacing library
        • Frame pacing in OpenGL ES
          • Integrate
          • Update your build settings
          • Add frame pacing functions
          • Verify frame pacing improvement
        • Frame pacing in Vulkan
          • Integrate
          • Update your build settings
          • Add frame pacing functions
          • Verify frame pacing improvement
        • Frame Pacing API Reference
      • Access Java libraries from C/C++
        • About the library wrapper
        • Get started with library wrapper
      • Integrate Android Performance Tuner
        • About Android Performance Tuner
        • Run the APT demo app
        • Enable the Android Performance Parameters API
        • Update your build settings
        • Define annotations, fidelity parameters, and settings
        • Add frame timing functions
        • Add loading time recording functions
        • Validate, package, and publish the APK
        • Troubleshoot common errors
        • Advanced usage
        • Performance Tuner API Reference
      • Develop for multiple form factors
        • 64-bit architectures
        • Screen types
        • Vulkan pre-rotation
      • Output audio
        • About the Oboe audio library
        • Update build settings
        • Low latency audio
        • Create an audio stream
        • See Oboe code samples
        • See the Oboe developer guide
      • Manage memory
        • About managing memory
        • Debug native memory use
      • Deliver assets
      • Detect and diagnose crashes
    • Android Game Development Kit (AGDK)
      • About the AGDK
      • Download the AGDK
      • AGDK release notes
    • Android Game Development Extension (AGDE) for Visual Studio
      • About the AGDE
      • Get started with AGDE
      • Configure your project
      • Debug your project
      • Debug memory corruption using Address Sanitizer
      • Measure app performance
      • Profile-Guided Optimization (PGO)
        • Overview
        • Configure Profile-Guided Optimization
      • See AGDE code samples
      • AGDE release notes
    • Google Play Games Services
      • About Google Play Games Services
      • Get started
      • Google Play Console setup
        • Set up Play Games Services
        • Enable Play Games Services features
        • Manage project settings in Google Cloud
        • Enable accounts for testing
        • Publish through Google Play Console
      • Game concepts
        • Sign-in
        • Recall
        • Next generation Player IDs
        • Achievements
        • Saved games
        • Leaderboards
        • Events
        • Friends
        • App shortcuts
      • Migrate to v2
        • About migration
        • Migrate to v2 (Java or Kotlin)
        • Migrate to v2 (Unity)
      • Use the APIs
        • Java
          • Get started
          • Sign-in and privacy
            • Sign-in
            • Enable server-side access
            • Anti-piracy
          • Add features
            • Achievements
            • Saved games
            • Leaderboards
            • Events
            • Friends
            • Player stats
        • Native SDK
        • Plugin for Unity
          • About the Google Play Games plugin for Unity
          • Set up Google Play Games for Unity
          • Add features
            • Achievements
            • Saved games
            • Leaderboards
            • Events
            • Friends
            • Player stats
        • Recall API
        • Publishing API
          • About the Publishing API
          • Get started
          • Upload images
        • Management API
        • Troubleshooting
      • Review checklists and guidelines
        • Quality checklist
        • Branding guidelines
        • Quota and rate limits
        • Data disclosure requirements
        • Terms of service
      • Downloads
      • Get support
      • Reference
        • Android GMS API
        • Web REST API
        • C++ API
        • Management API
        • Publishing API
    • Google Play Games on PC
      • About Google Play Games on PC
      • Get started
      • Review process
      • Set up
        • Download the Emulator
        • Set up your game for PC compatibility
        • Configure your graphics
        • Device input
          • Set up input
          • Set up mouse input
          • Input SDK
            • About the Input SDK
            • Get started with the Input SDK
            • Migration Guides
              • Overview
              • Upgrade from 1.0 to 1.1 Java/Kotlin
              • Upgrade from 1.0 to 1.1 Unity
              • Upgrade from 0.0.4 to 1.0 Java/Kotlin
              • Upgrade from 0.0.4 to 1.0 Unity
        • Cross-device play
          • About continuity in cross-device play
          • About continuity requirements
          • Verify your game's compliance
          • Federate the identity services
          • Third-party login
      • Test
        • Test your game
        • Use the developer emulator
        • Use ChromeOS devices
        • Troubleshoot the developer emulator
        • Validate your Google Play Games on PC game
      • Publish and deploy
        • Detect Google Play Games on PC platform features
        • Submit your game
        • Update your game
        • Integrity Protection
        • User Acquisition
      • Samples and plugins
      • FAQ
    • Multiplatform
      • About form factors
      • Make your game compatible with all form factors
      • Support large screen resizability
      • Enable natural input on all form factors
    • Use game controller
      • Overview
      • Game controller with Android API
      • Support game controllers library
        • Overview
        • Use the game controller library
        • Use custom controller device mappings
    • Vulkan
      • Overview
      • Game engine support
      • Native and proprietary engines
      • Sample, Codelab, Developer Stories and Videos
      • Tools & advanced features
    • Manage, debug, and profile in Android Studio
  • Optimize
    • Android Vitals
      • Overview
      • ANRs
      • Crashes
      • Slow Sessions
      • Low memory killers (LMKs)
    • About optimization tools
    • Configure system tracing
    • Reduce game size
    • Android GPU Inspector (AGI)
      • About AGI
      • Quickstart
      • Supported devices
      • System profiling
        • About system profiling
        • View a system profile
        • GPU performance counters
        • Analyze a system profile
          • Frame processing times
          • Memory efficiency
          • Texture memory bandwidth usage
          • Vertex memory bandwidth usage
          • Thread scheduling
      • Frame profiling
        • About frame profiling
        • Analyze a frame profile
          • Most expensive render passes
          • Vertex formats
          • Shader performance
        • Frame Profiler UI
          • Performance pane
          • Commands pane
          • Framebuffer pane
          • Geometry pane
          • Report pane
          • Shader pane
          • Memory pane
          • State pane
          • Textures pane
          • Texture pane
          • Pipeline view pane
      • Supported Vulkan extensions
      • Troubleshoot AGI
    • Android Performance Tuner (APT)
    • Android Dynamic Performance Framework (ADPF)
      • Overview
      • Thermal API
      • Performance Hint API
      • Game Mode & Game State API
        • About the Game Mode API and interventions
        • Use the Game Mode API
        • Use Game Mode Interventions
        • FPS Throttling Overview
        • Game State API
      • Fixed Performance Mode
      • Game Engine Support
      • Sample, Codelab and Developer Stories
      • Best Practices for ADPF
    • Optimize 3D assets
    • Best practices for textures
    • Manage vertex data
    • Optimize materials and shaders
    • Optimize power efficiency
    • Vulkan best practices on Android
      • Optimize with reduced precision
    • Memory Advice API
      • About the Memory Advice API
      • Get started with the Memory Advice API
    • Game Dashboard
      • About the Game Dashboard
      • Components
    • Optimize refresh rates
  • Publish
    • About distributing with Google Play
    • Launch your game
  • Build AI experiences
  • Get started
  • Get started
  • Hello world
  • Training courses
  • Tutorials
  • Compose for teams
  • Kotlin for Android
  • Monetization with Play ↗️
  • Extend by device
  • Adaptive apps
  • Android XR
  • Wear OS
  • Android for Cars
  • Android TV
  • ChromeOS
  • Build by category
  • Games
  • Camera & media
  • Social & messaging
  • Health & fitness
  • Productivity
  • Enterprise apps
  • Get the latest
  • Latest updates
  • Experimental updates
  • Android Studio preview
  • Jetpack & Compose libraries
  • Wear OS releases
  • Privacy Sandbox ↗️
  • UI Design
  • Design for Android
  • Mobile
  • Adaptive UI
  • Android XR
  • Widgets
  • Wear OS
  • Android TV
  • Architecture
  • Introduction
  • Libraries
  • Navigation
  • Modularization
  • Testing
  • Quality
  • Overview
  • Core value
  • User experience
  • Accessibility
  • Technical quality
  • Security
  • Overview
  • Privacy
  • Permissions
  • Identity
  • Fraud prevention
  • Build for Billions
  • Overview
  • About new markets
  • Android (Go edition)
  • Gemini in Android Studio
  • Learn more
  • Get Android Studio
  • Core areas
  • Samples
  • User interfaces
  • Background work
  • Data and files
  • Connectivity
  • All core areas ⤵️
  • Tools and workflow
  • Write and debug code
  • Build projects
  • Test your app
  • Performance
  • Command-line tools
  • Gradle plugin API
  • Device tech
  • Adaptive UI
  • Wear OS
  • Android XR
  • Android Health
  • Android for Cars
  • Android TV
  • All devices ⤵️
  • Libraries
  • Android platform
  • Jetpack libraries
  • Compose libraries
  • Google Play services ↗️
  • Google Play SDK index ↗️
  • Android Developers
  • Essentials
  • Games dev center
  • Guides

Input SDK Migration Guides
Stay organized with collections Save and categorize content based on your preferences.

Guides for upgrading between Input SDK versions.

  • 1.1.0-beta from 1.0.0-beta (Java/Kotlin, Unity)
  • 1.0.0-beta from 0.0.4 (Java/Kotlin, Unity)

Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Last updated 2024-09-19 UTC.

  • X X
    Follow @AndroidDev on X
  • YouTube YouTube
    Check out Android Developers on YouTube
  • LinkedIn LinkedIn
    Connect with the Android Developers community on LinkedIn
  • More Android

    • Android
    • Android for Enterprise
    • Security
    • Source
    • News
    • Blog
    • Podcasts
  • Discover

    • Gaming
    • Machine Learning
    • Health & Fitness
    • Camera & Media
    • Privacy
    • 5G
  • Android Devices

    • Large screens
    • Wear OS
    • ChromeOS devices
    • Android for cars
    • Android TV
  • Releases

    • Android 15
    • Android 14
    • Android 13
    • Android 12
    • Android 11
    • Android 10
    • Pie
  • Documentation and Downloads

    • Android Studio guide
    • Developers guides
    • API reference
    • Download Studio
    • Android NDK
  • Support

    • Report platform bug
    • Report documentation bug
    • Google Play support
    • Join research studies
Google Developers
  • Android
  • Chrome
  • Firebase
  • Google Cloud Platform
  • All products
  • Privacy
  • License
  • Brand guidelines
  • Manage cookies
  • Get news and tips by email Subscribe
  • English
  • Deutsch
  • Español – América Latina
  • Français
  • Indonesia
  • Italiano
  • Polski
  • Português – Brasil
  • Tiếng Việt
  • Türkçe
  • Русский
  • العربيّة
  • فارسی
  • বাংলা
  • 中文 – 简体
  • 中文 – 繁體
  • 日本語
  • 한국어