Comments (6)
Understood, actually, PermissionFlow is there to solve domain-specific issues and here the problem is occurring because you're using it for UI operations. It's meant for core use case only which only has live knowledge of permission and its state.
For your particular use case, you can do something like
private val permissionLauncher = registerForPermissionFlowRequestsResult { permissionMap ->
if (permissionMap[Manifest.permission.____] == true) {
// Permission granted
} else {
// Permission NOT granted
}
}
Since in this case, flow will not give updates since state hasn't changed.
from permission-flow-android.
Meanwhile, I'll also think from an API perspective if something can be done for this as well or not.
from permission-flow-android.
@Kranthi94 It's the original nature of the StateFlow that it always emits the current state. If you're using it for some purpose and don't want first update, just ignore the first emission of the StateFlow.
from permission-flow-android.
@PatilShreyas To ignore i need a way to know it but the initiate state and the state when the permission is denied is the same. There is no difference between those two states, so i am finding it difficult to differentiate for ignoring.
from permission-flow-android.
Thanks for the quick response
from permission-flow-android.
After thinking a lot from the API perspective, this use case doesn't actually fit for the library. Because the solution on this thread actually solves the issue and there's no need for special API.
from permission-flow-android.
Related Issues (10)
- Use in domain layer HOT 1
- Support for shouldShowRequestRationale HOT 4
- Use AppStartup library for auto initialization HOT 3
- Getting Fragment not attached to an activity exception HOT 2
- Package not found HOT 2
- No support for rational dialog after user denies permission more than once HOT 2
- Wrong state for Manifest.permission.ACCESS_NOTIFICATION_POLICY HOT 4
- Remove the duration of debounce to refresh the permission states HOT 1
- isRationaleRequired is null after manual initialization HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from permission-flow-android.