{"id":19196136,"url":"https://github.com/nsneruno/android_package_manager","last_synced_at":"2025-05-09T00:33:50.156Z","repository":{"id":62458751,"uuid":"491025812","full_name":"nsNeruno/android_package_manager","owner":"nsNeruno","description":"Android's native PackageManager API access for Flutter","archived":false,"fork":false,"pushed_at":"2024-02-02T07:28:02.000Z","size":117,"stargazers_count":7,"open_issues_count":5,"forks_count":17,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-20T10:40:31.217Z","etag":null,"topics":["android","android-library","androidapi","dart","flutter","kotlin","kotlin-android","packagemanager"],"latest_commit_sha":null,"homepage":"https://pub.dev/packages/android_package_manager","language":"Dart","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nsNeruno.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-05-11T08:38:39.000Z","updated_at":"2025-01-02T08:28:11.000Z","dependencies_parsed_at":"2024-01-10T20:07:44.357Z","dependency_job_id":"3c2a892a-a67e-46cc-bf4e-b03eff7d2ab4","html_url":"https://github.com/nsNeruno/android_package_manager","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nsNeruno%2Fandroid_package_manager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nsNeruno%2Fandroid_package_manager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nsNeruno%2Fandroid_package_manager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nsNeruno%2Fandroid_package_manager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nsNeruno","download_url":"https://codeload.github.com/nsNeruno/android_package_manager/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253171166,"owners_count":21865275,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","android-library","androidapi","dart","flutter","kotlin","kotlin-android","packagemanager"],"created_at":"2024-11-09T12:12:45.410Z","updated_at":"2025-05-09T00:33:50.131Z","avatar_url":"https://github.com/nsNeruno.png","language":"Dart","readme":"# android_package_manager [![Pub](https://img.shields.io/pub/v/android_package_manager.svg)](https://pub.dartlang.org/packages/android_package_manager)\n\nProvides access to Android's native PackageManager API to fetch various information, such as installed applications, packages, permissions, etc.\n\n## About this Package\nThis plugin is purposed for Android use only. Allowing easier access to most commonly used methods of Android's [PackageManager](https://developer.android.com/reference/android/content/pm/PackageManager) API. Adapted a few methods from existing package [package_manager](https://pub.dev/packages/package_manager) which seems not to be maintained recently.\n\n## Getting Started\n\nImporting:\n```dart\nimport package:android_package_manager/android_package_manager.dart;\n```\nSingleton access example:\n```dart\nfinal pm = AndroidPackageManager();\n```\n\n## Available Methods\nPlease see official documentation of [PackageManager](https://developer.android.com/reference/android/content/pm/PackageManager) API.  \n**Disclaimer**: I have been trying to adapt most of the available methods. Done with some simple instrumentation tests.  \nTested methods can be found under `example/integration_test` directory.\n\nExample Flutter app demonstrates the [getInstalledPackages](https://developer.android.com/reference/android/content/pm/PackageManager#getInstalledPackages(int)) method.\n\n## Side Notes\nPlease take note of the `flags` optional argument on some of the methods. These will affect the \noutput of the request to the APIs. For example, `PackageInfo` won't show any permissions info if \nthe flag for `GET_PERMISSIONS` is not specified.\n\n## Optional permissions\nBy default, the list of installed apps is limited on Android 11 (API level 30) and higher. Read more about it [here](https://developer.android.com/training/package-visibility). To access the full list of apps installed on a device, add the following permission to your `AndroidManifest.xml` file:\n```xml\n\u003cuses-permission android:name=\"android.permission.QUERY_ALL_PACKAGES\" /\u003e\n```\n\n## TO-DOs\n- Proper documentation\n- DartDocs\n- Adjusting some methods to be Android Tiramisu compatible (deprecating some methods)\n- Documenting bitmask values\n- Separating interfaces into a separate package (maybe)\n\n## Issues\nFeel free to file issues or any suggestions [here](https://github.com/nsNeruno/android_package_manager/issues)","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnsneruno%2Fandroid_package_manager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnsneruno%2Fandroid_package_manager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnsneruno%2Fandroid_package_manager/lists"}