23 open-source projects similar to karumi/dexter, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
PermissionsDispatcher is a declarative permission management library for Android. It provides a framework for handling runtime and special permissions using an API that routes request results to specific handler methods. The library uses annotations to trigger designated methods for success, rationales, or denials. It coordinates both standard runtime permission flows and specialized permissions that require directing the user to system settings activities for manual approval. The system includes workflows for custom permission justifications and denial handling, including fallbacks for when
PermissionsDispatcher is a declarative Android API and runtime permission manager. It provides a structured system for requesting and verifying system permissions while separating authorization logic from general business code. The project focuses on managing the permission request workflow, which includes justifying requests with custom explanations and handling user responses to system prompts. It also functions as a system settings guide, directing users to the manual Android settings menu for special permissions that require approval outside of the application.
XXPermissions is a framework and manager for handling runtime and special system permissions across different Android operating system versions. It provides a unified interface for requesting standard permissions and directing users to system settings pages for advanced access control, such as file access and accessibility services. The project features a backward compatibility layer that abstracts version-specific logic, removing the need for manual operating system version checks in client code. It utilizes a chainable request pipeline to queue multiple permissions and manage their asynchro
AndPermission is a unified API manager for coordinating runtime permissions, secure file sharing, and high-privilege system access on Android. It provides a lifecycle-aware wrapper for handling dangerous permissions and user consent callbacks through a centralized permissions manager. The project distinguishes itself by managing special permissions that require high-privilege access, such as notification monitoring, screen overlays, and the ability to install applications from unknown sources. It also includes a dedicated tool for secure file sharing that generates temporary read and write ac
Accompanist is a collection of extension libraries that provide additional functionality and specialized components for the Jetpack Compose UI framework. It serves as a toolkit for implementing common layout and system tasks that extend the core capabilities of declarative UI development on Android. The library provides specialized utilities for managing modal bottom sheet destinations and defining custom animations for screen transitions within a navigation graph. It includes tools for detecting screen folds and display features to create adaptive layouts that adjust based on window size and
react-native-permissions is a cross-platform permissions library that provides a unified interface for requesting and checking system permissions across iOS, Android, and Windows. It functions as a permission status manager and device capability auditor to determine if access to sensitive data or hardware is granted, denied, or blocked. The project includes a media access controller to handle limited access to photos and contacts through system-native pickers. It also features a system settings integrator that directs users to device settings pages to manually toggle application and notificat
Easypermissions is a library and wrapper for managing Android runtime permissions. It serves as a tool for requesting access to protected system resources and handling the associated result workflows. The project provides mechanisms for triggering system-level permission requests and executing specific tasks after permissions are granted. It includes a guided dialog system to direct users to system settings when a permission has been permanently denied. The library covers permission management, user onboarding, and system settings integration. It handles permission request lifecycles through
Media-kit is a cross-platform media framework designed for Dart and Flutter applications. It provides a unified interface for building custom audio and video players, enabling developers to implement consistent media playback capabilities across mobile and desktop operating systems. The framework distinguishes itself by utilizing a hardware-accelerated media pipeline that offloads decoding and rendering tasks to dedicated device resources. By mapping video frames directly onto hardware-accelerated textures and employing a unified decoding pipeline, it maintains high-performance output while p
Camerakit-android is a library and API wrapper that provides a consistent interface for photo and video capture across Android Camera 1 and 2 APIs. It functions as a media capture library that standardizes hardware access and provides a unified system for recording images and video across different operating system versions. The project includes a camera preview component that automatically scales and crops camera output to fit custom view dimensions. It also provides a camera control toolkit for managing continuous autofocus, tap-to-focus interactions, and pinch-to-zoom gestures. The toolki
Universal API for request permission and get its statuses.
BlocksKit is a block-based UI framework and code block extension library designed to build interactive interfaces and component layouts within native application environments. It provides a structured system for defining complex content blocks and interactive elements that exceed standard formatting constraints. The framework includes a native-bridge communication layer that functions as a message bus for asynchronous data exchange between sandboxed guest blocks and a privileged native host. To manage these interactions, a runtime permission manager maps requested block functions to native ca
RxPermissions is a reactive permissions library for Android that manages runtime system permissions using RxJava observables. It serves as a wrapper for the Android runtime permission manager, converting asynchronous system requests and their results into a unified reactive stream. The library eliminates the need for fragmented callback methods by using a hidden fragment to intercept permission request results. This allows the request and the resulting outcome to remain within a single logic flow, avoiding boilerplate callbacks in the activity. The system supports requesting multiple permiss
TakePhoto is an Android media capture framework and image processing library designed to manage photo acquisition and manipulation. It provides a toolkit for capturing new images via the device camera and selecting existing images from the system gallery or local file storage. The framework distinguishes itself through automatic activity and session state restoration, which recovers the capture process after the system recycles an activity. It also includes a unified handler for managing runtime media permissions for camera and storage access across different Android versions. The library co
This project provides a collection of instructional guides and tutorials for Android app development, native mobile application creation, and computer science education. It focuses on building native applications through step-by-step implementation, covering the development of user interfaces and the integration of system hardware and permissions. The material extends into broader technical domains, including the study of fundamental data structures and algorithms for technical interview preparation. It also covers cybersecurity fundamentals, such as identifying web vulnerabilities and implem
SPPermissions is a Swift library that centralizes permission status checks and request flows across iOS and macOS system services. It provides a unified API for checking the current authorization state of any system permission and requesting access through the appropriate system dialog, all through a single interface. The library uses typed enums to map each system permission to a distinct case, allowing developers to check status and request authorization with a single method call and closure-based callback. It automatically derives the required Info.plist usage-description keys from the per
wsa_pacman is a graphical package manager and installer for the Windows Subsystem for Android. It provides a user interface for deploying Android package files, upgrading application versions, and managing software installations within the subsystem environment. The utility includes a metadata inspector that extracts icons, version numbers, and requested permissions from Android manifest files to verify app contents before installation. It also functions as an application manager that allows users to open system settings to uninstall software, disable applications, or modify specific device p
This project is an Android RPA framework designed for automating user interfaces and system tasks on rooted Android devices using Python and ADB. It provides a suite of tools for rooted device management, allowing for programmatic control of system settings, application lifecycles, and shell command execution via a remote API. The framework distinguishes itself through a combination of dynamic instrumentation and AI integration. It can inject scripts into running processes to hook Java interfaces and modifies application behavior in real time. Additionally, it supports large language model in
RxTool is an Android development utility library consisting of reusable components and helper classes for common mobile development tasks. It provides a coordinated set of toolkits for hardware interfacing, media processing, and user interface construction. The project features specialized implementations for mobile payment integration with Alipay and WeChat Pay, as well as dedicated tools for social sharing workflows. It includes a security-focused set of human verification widgets, such as puzzle and sliding captchas, to prevent automated bot interactions. The library covers a broad capabi
react-native-permissions is a cross-platform mobile permissions library that provides a unified API for checking and requesting hardware and software permissions on iOS, Android, and Windows. It serves as a device permission manager to verify permission status and prompt users for access to device features across different operating systems. The library includes a system settings navigator to direct users to application-specific device settings for modifying blocked or limited permissions. It provides a single interface for managing platform-specific permission requests and notification autho
Anko is an Android Kotlin library designed to simplify application development through a set of domain-specific languages and extensions. It functions as a programmatic UI DSL, an SQLite wrapper, an SDK utility, and an asynchronous framework. The project provides a declarative layout system that allows developers to build user interfaces through code instead of static XML markup. It distinguishes itself by offering a fluent database layer that eliminates manual cursor management and a concurrency system that uses weak references to prevent memory leaks in activities. The library covers broad
AppIntro is an Android onboarding framework used to create swipeable introductory screens and feature walkthrough carousels. It provides a navigation controller to manage wizard-style flow control and a UI component library for handling slide transitions and immersive layouts. The framework integrates system runtime permission requests directly into the onboarding sequence, allowing developers to block navigation until required access is granted. It supports different navigation modes that can toggle between standard and wizard behaviors, including the ability to restrict slide transitions ba
This project provides a collection of reference materials, guides, and cheatsheets designed to optimize the Android development workflow. It serves as a comprehensive resource for implementing best practices in application building, debugging, and user interface design. The repository covers specialized techniques for build optimization, including methods to reduce binary sizes and accelerate compilation. It also provides detailed references for device debugging, memory leak detection, and the application of Material Design principles. The project further details productivity enhancements fo
This project is a cross-platform mapping SDK and hardware-accelerated rendering engine implemented in C++. It provides a shared geospatial core that allows for the embedding of interactive maps into Android, iOS, macOS, Node.js, and Qt applications. The system focuses on high-performance vector tile rendering using OpenGL and GPU primitives to display interactive 3D landscapes and complex geospatial datasets. It transforms compressed protocol buffers into customizable visuals through a style-driven layer pipeline. The capability surface extends to comprehensive location services, including g