2017-02-01 5 views
0

Ich rufe gerade den Laufzeitkamerapermissionsdialog auf, um die Kameraberechtigung zu aktivieren, wenn sie deaktiviert wurde.Methode überschreibt oder implementiert keine Methode aus Supertype für die Erlaubnis zur Laufzeitkamera

immer drei Probleme, dass:

1) Verfahren kein Verfahren vom Supertyp für die unter-Methode überschreiben oder implementieren

@Override 
public void onRequestPermissionsResult(int requestCode, 
             String permissions[], int[] grantResults) { 
    switch (requestCode) { 
     case MY_PERMISSIONS_REQUEST_CAMERA: { 
      // 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 
    } 
} 

2), auch wenn die Kamera die Erlaubnis seine giving deaktiviert als '0' welche Erlaubnis ist Ritus gewährt?

Ich weiß nicht, warum es gibt '0', wenn die Erlaubnis deaktiviert.

Gerät: Samsung Galaxy s6

  int MY_PERMISSIONS_REQUEST_Camera=101; 
     if (mActivity.checkSelfPermission(Manifest.permission.CAMERA) == PackageManager.PERMISSION_GRANTED) { 

      // Should we show an explanation? 
      if (mActivity.shouldShowRequestPermissionRationale(Manifest.permission.CAMERA)) { 

       // Show an expanation to the user *asynchronously* -- don't block 
       // this thread waiting for the user's response! After the user 
       // sees the explanation, try again to request the permission. 

      } else { 
       // No explanation needed, we can request the permission. 

       mActivity.requestPermissions(new String[]{Manifest.permission.CAMERA}, MY_PERMISSIONS_REQUEST_Camera); 

       // MY_PERMISSIONS_REQUEST_Camera is an 
       // app-defined int constant. The callback method gets the 
       // result of the request. 
      } 
     } 

3) Wenn ich die Erlaubnis, während der Laufzeit zu ermöglichen, wird die App neu gestartet, die ich nicht will.

Kann jemand mir bitte für die drei oben genannten Problemen helfen ...

Antwort

0

Ihre Anfrage überprüfen Code:

mActivity.requestPermissions(new String[]{Manifest.permission.CAMERA}, MY_PERMISSIONS_REQUEST_Camera); 

es sein sollte:

mActivity.requestPermissions(new String[]{Manifest.permission.CAMERA}, MY_PERMISSIONS_REQUEST_CAMERA); 
+0

Oh Leider i eine Zeile verpasst haben : int MY_PERMISSIONS_REQUEST_Camera = 101; – Vji

+0

Wo schreiben Sie diesen Code 'onRequestPermissionsResult()'? – rafsanahmad007

+0

nur in derselben Klasse. unten zu der Funktion, die den Laufzeitdialog zeigt, um die Erlaubnis zu aktivieren. – Vji

Verwandte Themen