narimetisaigopi

run time permission

Mar 6th, 2020
160
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.67 KB | None | 0 0
  1. package com.example.teachingdemoapp;
  2.  
  3. import androidx.annotation.NonNull;
  4. import androidx.annotation.RequiresApi;
  5. import androidx.appcompat.app.AppCompatActivity;
  6. import androidx.core.app.ActivityCompat;
  7. import androidx.core.content.ContextCompat;
  8.  
  9. import android.Manifest;
  10. import android.accounts.Account;
  11. import android.accounts.AccountManager;
  12. import android.content.Intent;
  13. import android.content.pm.PackageManager;
  14. import android.os.Build;
  15. import android.os.Bundle;
  16. import android.util.Log;
  17. import android.view.Gravity;
  18. import android.view.LayoutInflater;
  19. import android.view.View;
  20. import android.view.ViewGroup;
  21. import android.widget.AdapterView;
  22. import android.widget.ArrayAdapter;
  23. import android.widget.Button;
  24. import android.widget.Spinner;
  25. import android.widget.TextView;
  26. import android.widget.Toast;
  27.  
  28. import java.util.ArrayList;
  29. import java.util.List;
  30.  
  31. public class MainActivity extends AppCompatActivity {
  32.  
  33. String TAG = "MainActivity";
  34.  
  35. int permission = 13;
  36. @Override
  37. protected void onCreate(Bundle savedInstanceState) {
  38. super.onCreate(savedInstanceState);
  39. setContentView(R.layout.activity_main);
  40.  
  41. if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
  42. if (checkPermissions()){
  43. Toast.makeText(this, "all permissions given", Toast.LENGTH_SHORT).show();
  44. }else {
  45. Toast.makeText(this, "give permissions", Toast.LENGTH_SHORT).show();
  46. }
  47. }
  48.  
  49. }
  50.  
  51. @RequiresApi(api = Build.VERSION_CODES.M)
  52. boolean checkPermissions(){
  53. int cameraPermission = checkSelfPermission(Manifest.permission.CAMERA);
  54. int smsPermission = checkSelfPermission(Manifest.permission.READ_SMS);
  55.  
  56. List<String> permissionsList = new ArrayList<>();
  57.  
  58. if (cameraPermission != PackageManager.PERMISSION_GRANTED){
  59. permissionsList.add(Manifest.permission.CAMERA);
  60. }
  61.  
  62. if (smsPermission != PackageManager.PERMISSION_GRANTED){
  63. permissionsList.add(Manifest.permission.READ_SMS);
  64. }
  65.  
  66. if (permissionsList.size() > 0){
  67. requestPermissions(permissionsList.toArray(new String[permissionsList.size()]),permission);
  68. return false;
  69. }
  70.  
  71. return true;
  72. }
  73.  
  74. @Override
  75. public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
  76.  
  77. if(requestCode == permission && grantResults.length == 2){
  78. Toast.makeText(this, "granted all permissions", Toast.LENGTH_SHORT).show();
  79. }
  80. super.onRequestPermissionsResult(requestCode, permissions, grantResults);
  81. }
  82. }
Add Comment
Please, Sign In to add comment