Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private static final String[] INITIAL_PERMS={
- Manifest.permission.ACCESS_FINE_LOCATION,
- Manifest.permission.READ_CONTACTS,Manifest.permission.ACCESS_COARSE_LOCATION,Manifest.permission.READ_PHONE_STATE,
- Manifest.permission.READ_CALL_LOG,Manifest.permission.WRITE_CALL_LOG,Manifest.permission.WRITE_EXTERNAL_STORAGE,
- Manifest.permission.READ_CONTACTS, Manifest.permission.SEND_SMS,Manifest.permission.RECEIVE_SMS,
- Manifest.permission.CAMERA,Manifest.permission.READ_SMS
- };
- if(Build.VERSION.SDK_INT >= 23 ){
- if (!canAccessLocation() || !canAccessLocation_1() || !canAccessPhone() || !canAccessContacts() || !canAccessStorage() || !canAccessContacts1()
- || !canAccessSms() || !canAccessSms1() || !canAccessSms2() || !canAccessCamera()) {
- ActivityCompat.requestPermissions(SplashActivity.this, INITIAL_PERMS, INITIAL_REQUEST);
- }
- }
- else if (Build.VERSION.SDK_INT < 23) {
- //not a marshamallow
- }
- @Override
- public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
- switch(requestCode) {
- case REQUEST_CAMERA:
- if (canAccessCamera()) {
- doCameraThing();
- }
- else {
- bzzzt();
- }
- break;
- case REQUEST_CONTACTS:
- if (canAccessContacts()&&canAccessContacts1()) {
- doContactsThing();
- }
- else {
- bzzzt();
- }
- break;
- case REQUEST_LOCATION:
- if (canAccessLocation()&&canAccessLocation_1()) {
- doLocationThing();
- }
- else {
- bzzzt();
- }
- break;
- case REQUEST_PHONE:
- if (canAccessPhone()) {
- dophoneThing();
- }
- else {
- bzzzt();
- }
- break;
- case REQUEST_SMS:
- if (canAccessSms()&&canAccessSms1() && canAccessSms2()) {
- doSmsThing();
- }
- else {
- bzzzt();
- }
- break;
- case REQUEST_STORAGE:
- if (canAccessStorage()) {
- dostorageThing();
- }
- else {
- bzzzt();
- }
- break;
- }
- checking();
- }
- //location
- private boolean canAccessLocation() {
- return(hasPermission(Manifest.permission.ACCESS_FINE_LOCATION));
- }
- private boolean canAccessLocation_1() {
- return(hasPermission(Manifest.permission.ACCESS_COARSE_LOCATION));
- }
- //phone
- private boolean canAccessPhone() {
- return(hasPermission(Manifest.permission.READ_PHONE_STATE));
- }
- private boolean canAccessStorage() {
- return(hasPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE));
- }
- //sms
- private boolean canAccessSms() {
- return(hasPermission(Manifest.permission.READ_SMS));
- }
- private boolean canAccessSms1() {
- return(hasPermission(Manifest.permission.SEND_SMS));
- }
- private boolean canAccessSms2() {
- return(hasPermission(Manifest.permission.RECEIVE_SMS));
- }
- //camera
- private boolean canAccessCamera() {
- return(hasPermission(Manifest.permission.CAMERA));
- }
- //contact
- private boolean canAccessContacts() {
- return(hasPermission(Manifest.permission.READ_CONTACTS));
- }
- private boolean canAccessContacts1() {
- return(hasPermission(Manifest.permission.WRITE_CONTACTS));
- }
- private boolean hasPermission(String perm) {
- return(ContextCompat.checkSelfPermission(this, perm)==
- PackageManager.PERMISSION_GRANTED);
- }
- private void bzzzt() {
- Toast.makeText(this, R.string.toast_bzzzt, Toast.LENGTH_LONG).show();
- }
- private void doCameraThing() {
- Toast.makeText(this, R.string.toast_camera, Toast.LENGTH_SHORT).show();
- }
- private void doContactsThing() {
- Toast.makeText(this, R.string.toast_contacts, Toast.LENGTH_SHORT).show();
- }
- private void doLocationThing() {
- Toast.makeText(this, R.string.toast_location, Toast.LENGTH_SHORT).show();
- }
- private void doSmsThing() {
- Toast.makeText(this, R.string.toast_sms, Toast.LENGTH_SHORT).show();
- }
- private void dostorageThing() {
- Toast.makeText(this, R.string.toast_storage, Toast.LENGTH_SHORT).show();
- }
- private void dophoneThing() {
- Toast.makeText(this, R.string.toast_phone, Toast.LENGTH_SHORT).show();
- }
- //checking
- public void checking(){
- if (!m_sharedPreference.contains("useruid") && flag == true ) {
- db.ClearTables();
- executeCircleAndOperatorsList();
- }
- else if (m_sharedPreference.contains("useruid") && flag == true && CHECKDB == false) {
- db.ClearTables();
- executeCircleAndOperatorsList();
- }else if (m_sharedPreference.contains("useruid") && flag == true && CHECKDB == true) {
- servicemodifyremainder();
- } else if (m_sharedPreference.contains("useruid") && CHECKDB == true && flag == false) {
- Intent intent1 = new Intent(SplashActivity.this, MainActivity.class);
- startActivity(intent1);
- }
- }
- @Override
- public void onRequestPermissionsResult(int requestCode,
- String permissions[], int[] grantResults) {
- switch (requestCode) {
- case MY_PERMISSIONS_REQUEST_READ_CONTACTS: {
- // If request is cancelled, the result arrays are empty.
- if (grantResults.length > 0
- && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
- // permission was granted, yay! Do the
- // contacts-related task you need to do.
- } else {
- // permission denied, boo! Disable the
- // functionality that depends on this permission.
- }
- return;
- }
- // other 'case' lines to check for other
- // permissions this app might request
- }
- }
- int permissions_All = 1;
- String[] Permissions = {Manifest.permission.RECEIVE_SMS,
- Manifest.permission.READ_SMS
- };
- if (!hasPermissions(this, Permissions)) {
- ActivityCompat.requestPermissions(this, Permissions, permissions_All);
- }
- }
- public static boolean hasPermissions(Context context, String... Permissions) {
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && Permissions != null) {
- for (String Permission : Permissions) {
- if (ActivityCompat.checkSelfPermission(context, Permission) != PackageManager.PERMISSION_GRANTED) {
- return false;
- }
- }
- }
Add Comment
Please, Sign In to add comment