So erteilen Sie meiner Aktivität eine Berechtigung zum Überlagern von Bildschirmen

In meiner Anwendung bekomme ich ein Bildschirm-Overlay-Problem in Android 6+ Ich habe versucht einzuschalten, aber dafür muss ich eine Erlaubnis für das Bildschirm-Overlay geben.

Ich folgteDie Ich kann mich nicht in meine Aktivität integrieren

Ich habe es auch versuchtDie anscheinend funktionieren beide, also möchte ich sie in meine Aktivität integrieren

Dies ist meine Aktivität:

public class MainActivity extends Activity {

    public static final int R_PERM = 123;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.data);
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

        if ((CheckPermission(this, Manifest.permission.CAMERA)) &&
                (CheckPermission(this, Manifest.permission.READ_PHONE_STATE)) &&
                (CheckPermission(this, Manifest.permission.NFC))) {
            PermHandling();
        } else {
            RequestPermission(MainActivity.this, Manifest.permission.CAMERA, R_PERM);
            RequestPermission(MainActivity.this, Manifest.permission.READ_PHONE_STATE, R_PERM);
            RequestPermission(MainActivity.this, Manifest.permission.NFC, R_PERM);

            //NewPermHandling();
        }

    }

    private void PermHandling() {
        //My app internal parts....
        //Here my stuff works...
    }

    //private void NewPermHandling(){

    //}

    @Override
    public void onRequestPermissionsResult(int permsRequestCode, String[] permissions, int[] grantResults) {

        switch (permsRequestCode) {

            case R_PERM: {
                if (grantResults.length > 0
                        && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
                    PermHandling();
                } else {
                    //Toast.makeText(this, "Please Grant Permissions other wise app will close.!", Toast.LENGTH_SHORT).show();
                }
                return;
            }
        }
    }

    public void RequestPermission(Activity thisActivity, String Permission, int Code) {
        if (ContextCompat.checkSelfPermission(thisActivity,
                Permission)
                != PackageManager.PERMISSION_GRANTED) {
            if (ActivityCompat.shouldShowRequestPermissionRationale(thisActivity,
                    Permission)) {
            } else {
                ActivityCompat.requestPermissions(thisActivity,
                        new String[]{Permission},
                        Code);
            }
        }
    }

    public boolean CheckPermission(Context context, String Permission) {
        if (ContextCompat.checkSelfPermission(context,
                Permission) == PackageManager.PERMISSION_GRANTED) {
            return true;
        } else {
            return false;
        }
    }
}

Kann mir jemand vorschlagen, wie ich in meiner Aktivität die Berechtigung zur Bildschirmorientierung erteilen kann, damit der Benutzer keine Notwendigkeit hat, dies zu tun oder sich darum zu kümmern. Bitte helfen Sie miPERM_REQUEST_CODE_DRAW_OVERLAYS

Jeder Bitte helfen Sie mir bei meiner Aktivität, dies ist kein Duplikat oder etwas anderes, das ich frage, wie ich es in meine Aktivität aufnehmen kann.

Antworten auf die Frage(8)

Ihre Antwort auf die Frage