All Projects → NoNews → NoPermission

NoNews / NoPermission

Licence: Apache-2.0 license
Android library for permissions request (updated 27.11.2017)

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to NoPermission

rbac-tool
Rapid7 | insightCloudSec | Kubernetes RBAC Power Toys - Visualize, Analyze, Generate & Query
Stars: ✭ 546 (+415.09%)
Mutual labels:  permissions
permissions-flow
A simple library to make it easy requesting permissions in Android using Kotlin Coroutines.
Stars: ✭ 81 (-23.58%)
Mutual labels:  permissions
django-cancan
🔓Authorization library for Django
Stars: ✭ 36 (-66.04%)
Mutual labels:  permissions
Android-Studio-Sample-Projects
Android Studio Sample Projects
Stars: ✭ 33 (-68.87%)
Mutual labels:  andriod
LuckPerms-Mirai
LuckPerms on MiraiConsole
Stars: ✭ 58 (-45.28%)
Mutual labels:  permissions
go-acl
Go library for manipulating ACLs on Windows
Stars: ✭ 97 (-8.49%)
Mutual labels:  permissions
kotlin-permissions
An Android library, written in Kotlin, which helps avoid boilerplate code when your request runtime permissions.(KotlinPermissions)
Stars: ✭ 56 (-47.17%)
Mutual labels:  permissions
permissions-ui
Background location permissions request helper
Stars: ✭ 53 (-50%)
Mutual labels:  permissions
lakecli
A CLI to manage and monitor permissions in AWS Lake Formation
Stars: ✭ 22 (-79.25%)
Mutual labels:  permissions
iam-policies
Iam policies implementation for create roles and manage permissions
Stars: ✭ 20 (-81.13%)
Mutual labels:  permissions
React-Express-JWT-UserPortal
React.js & Express.js User portal Using Core UI, JWT, JWT Token, Refresh Token, Role & Permission management, User manamgenet, Event Log.
Stars: ✭ 22 (-79.25%)
Mutual labels:  permissions
laravel-zend-acl
Adds ACL to Laravel via Zend\Permissions\Acl component.
Stars: ✭ 41 (-61.32%)
Mutual labels:  permissions
easypermissions-ktx
🔓 Kotlin version of the popular google/easypermissions wrapper library to simplify basic system permissions logic on Android M or higher.
Stars: ✭ 324 (+205.66%)
Mutual labels:  permissions
OpenSourceTutorials-Android
Android Programming With Kotlin/JVM (Open Source Tutorials)
Stars: ✭ 15 (-85.85%)
Mutual labels:  andriod
sentry
A lightweight (23KB) wrapper for inline Android permission checks/requests.
Stars: ✭ 22 (-79.25%)
Mutual labels:  permissions
nova-permissions
Add Permissions based authorization for your Nova installation via User-based Roles and Permissions. Roles are defined in the database whereas Permissions are defined in the code base.
Stars: ✭ 115 (+8.49%)
Mutual labels:  permissions
django-hats
Role-based permissions system for Django. Everyone wears a different hat, some people wear multiple.
Stars: ✭ 21 (-80.19%)
Mutual labels:  permissions
shyft
⬡ Shyft is a server-side framework for building powerful GraphQL APIs 🚀
Stars: ✭ 56 (-47.17%)
Mutual labels:  permissions
spree admin roles and access
Admin Roles And Access for Spree
Stars: ✭ 45 (-57.55%)
Mutual labels:  permissions
metrica-plugin-unity
Unity plugin for Yandex AppMetrica SDK
Stars: ✭ 24 (-77.36%)
Mutual labels:  andriod

NoPermission

Android Arsenal androidweekly.cn Download API

Deprecated.

Simple Android library for permissions request. Consists of only one class.

Why NoPermission:

  • Not a framework. It's just one class
  • Dialog with an explanation of why the application needs permission (with custom title, message and button text and color)
  • Never ask again feature
  • Automatic check whether the permission is granted or not (don't need to check api version)
  • Fragments support

Gradle

compile 'ru.alexbykov:nopermission:1.1.2'

Install

PermissionHelper permissionHelper = new PermissionHelper(this); //don't use getActivity in fragment!

        permissionHelper.check(Manifest.permission.ACCESS_COARSE_LOCATION)
                .onSuccess(this::onSuccess)
                .onDenied(this::onDenied)
                .onNeverAskAgain(this::onNeverAskAgain)
                .run();
Multiply permissions and other settings:
   permissionHelper.check(Manifest.permission.READ_CONTACTS, Manifest.permission.Manifest.permission.READ_CONTACTS)
                   .withDialogBeforeRun(R.string.dialog_before_run_title, R.string.dialog_before_run_message, R.string.dialog_positive_button)
                   .setDialogPositiveButtonColor(android.R.color.holo_orange_dark)
                   .onSuccess(this::onSuccess)
                   .onDenied(this::onDenied)
                   .onNeverAskAgain(this::onNeverAskAgain)
                   .run();
onRequestPermissionsResult:
 @Override
  public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults)
        permissionHelper.onRequestPermissionsResult(requestCode, permissions, grantResults);
   }
Open application settings activity

If user check "Never ask again", you can redirect him to application settings.

permissionHelper.startApplicationSettingsActivity();

Don't forget explain it manually (with dialog). In future this feature will be realised in library.

Changelog

Be sure to review the changes list before updating the version

TODO

  • Unit tests
  • Getting rid of the onRequestPermissionsResult method

Contributing

If you find any bug, or you have suggestions, don't be shy to create issues or make a PRs in the develop branch. You can read contribution guidelines here

License

Copyright 2017 Mike Antipiev and Alex Bykov

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].