Skip to content

Commit ed4a758

Browse files
committed
Improve permission checking and request
1 parent 1f808f1 commit ed4a758

File tree

1 file changed

+7
-6
lines changed

1 file changed

+7
-6
lines changed

app/src/main/java/com/addev/listaspam/MainActivity.kt

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -163,13 +163,14 @@ class MainActivity : AppCompatActivity(), CallLogAdapter.OnItemChangedListener {
163163
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
164164
permissions.add(Manifest.permission.POST_NOTIFICATIONS)
165165
}
166-
val missingPermissions = permissions.filter {
166+
val notGrantedPermissions = permissions.filter {
167167
ContextCompat.checkSelfPermission(this, it) != PackageManager.PERMISSION_GRANTED
168-
&& ActivityCompat.shouldShowRequestPermissionRationale(this, it)
169168
}
170-
val deniedPermissions = permissions.filter {
171-
ContextCompat.checkSelfPermission(this, it) != PackageManager.PERMISSION_GRANTED
172-
&& !ActivityCompat.shouldShowRequestPermissionRationale(this, it)
169+
val missingPermissions = notGrantedPermissions.filter {
170+
!ActivityCompat.shouldShowRequestPermissionRationale(this, it)
171+
}
172+
val deniedPermissions = notGrantedPermissions.filter {
173+
ActivityCompat.shouldShowRequestPermissionRationale(this, it)
173174
}
174175
if (missingPermissions.isNotEmpty()) {
175176
ActivityCompat.requestPermissions(
@@ -191,7 +192,7 @@ class MainActivity : AppCompatActivity(), CallLogAdapter.OnItemChangedListener {
191192
*/
192193

193194
private fun showPermissionToastAndRequest(missingPermissions: List<String>) {
194-
val permissionNames = missingPermissions.map { "- " + getPermissionName(it) }
195+
val permissionNames = missingPermissions.map { " " + getPermissionName(it) }
195196
val message = getString(R.string.permissions_required_message, permissionNames.joinToString("\n"))
196197

197198
if (permissionDeniedDialog?.isShowing == true) {

0 commit comments

Comments
 (0)