Gruppe 1
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

PermissionHandler.java 1.4KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. package com.example.ueberwachungssystem;
  2. import android.app.Activity;
  3. import android.content.Context;
  4. import android.content.pm.PackageManager;
  5. import android.widget.Toast;
  6. import androidx.core.app.ActivityCompat;
  7. import androidx.core.content.ContextCompat;
  8. public class PermissionHandler {
  9. private final Context context;
  10. private static final int PERMISSION_REQUEST_CODE = 23409;
  11. private static final String[] permissions = new String[]{
  12. android.Manifest.permission.CAMERA,
  13. android.Manifest.permission.RECORD_AUDIO
  14. };
  15. public PermissionHandler(Context context) {
  16. this.context = context;
  17. }
  18. public boolean hasPermissions() {
  19. boolean permissionState = true;
  20. for (String permission: permissions) {
  21. permissionState = permissionState && ContextCompat.checkSelfPermission(context, permission) == PackageManager.PERMISSION_GRANTED;
  22. }
  23. return permissionState;
  24. }
  25. public void getPermissions() {
  26. if (!hasPermissions())
  27. ActivityCompat.requestPermissions((Activity) context, permissions, PERMISSION_REQUEST_CODE);
  28. }
  29. public void showPermissionToast() {
  30. if (hasPermissions())
  31. Toast.makeText(context, "permissions available", Toast.LENGTH_SHORT).show();
  32. else
  33. Toast.makeText(context, "permissions missing", Toast.LENGTH_SHORT).show();
  34. }
  35. }