Android takePersistableUriPermission kompiliert nicht

Ich verwende KITKAT Content Provider in meiner Anwendung. Nachdem ich das uri eines ausgewählten Bildes bekommen habe, speichere ich es in einer Datenbank, um es später wieder zu benutzen. Das Problem ist, dass nach dem Neustart des Telefons bekam ich eine Genehmigung Ausnahme bei der Verwendung der gespeicherten uri.

Nach der Suche habe ich versucht, takePersistableUriPermission zu benutzen () Aber aus irgendeinem Grund kompiliert es nicht (ich benutze androidstudio).

  • Kommissionierobjekt funktioniert nicht?
  • WebView funktioniert nicht und startet die URL extern im Browser. Webseite anzeigen innerhalb App
  • Welche Programmiersprachen können in Android verwendet werden?
  • Aktivitäten laden xml Layout dynamisch in Android
  • So stellen Sie die Farbe für die Bildansicht in Android ein
  • Sichern eines Web-Service, so dass es nur von einer bestimmten Android-Anwendung aufgerufen werden kann
  • Der Fehler ist: Muss ein oder mehrere von IntentFLAG_GRANT_READ_URI_PERMISSION oder Intent.FLAG_GRANT_WRITE_URI_PERMISSION sein. Es tritt auf dem zweiten Argument der Methode takePersistableUriPermission (das Flag)

    Hier ist der Code:

    Intent intent; if (Build.VERSION.SDK_INT < 19){ intent = new Intent(); intent.setAction(Intent.ACTION_GET_CONTENT); intent.setType("image/*"); startActivityForResult(intent, ANDROID_LESS_19); } else { intent = new Intent(Intent.ACTION_OPEN_DOCUMENT); intent.addCategory(Intent.CATEGORY_OPENABLE); intent.setType("image/*"); startActivityForResult(intent, ANDROID_MORE_19); }` case ANDROID_MORE_19: if(resultCode == RESULT_OK){ Uri selectedImage = data.getData(); mImage = selectedImage.toString(); String[] filePathColumn = {MediaStore.Images.Media.DATA}; // this part means to keep permanent permissions, so no exception after rebooting the device final int takeFlags = data.getFlags() & (Intent.FLAG_GRANT_READ_URI_PERMISSION | Intent.FLAG_GRANT_WRITE_URI_PERMISSION); getContentResolver().takePersistableUriPermission(selectedImage, takeFlags); grantUriPermission("com.main.bonappetit", selectedImage, Intent.FLAG_GRANT_WRITE_URI_PERMISSION | Intent.FLAG_GRANT_READ_URI_PERMISSION); Cursor cursor = getContentResolver().query( selectedImage, filePathColumn, null, null, null); cursor.moveToFirst(); int columnIndex = cursor.getColumnIndex(filePathColumn[0]); String filePath = cursor.getString(columnIndex); cursor.close(); 

    Jemand weiß, was hier los ist?

  • Uri kehrte nach ACTION_GET_CONTENT von Galerie nicht in setImageURI () von ImageView
  • Erstellen einer Android Lock Screen App.
  • Java.lang.IllegalStateException: Das Tag des Fragments kann nicht geändert werden
  • Wie bekomme ich Länge in Millisekunden Video von URL ohne Video-Ansicht in Android?
  • Android - DataBinding - Wie und wann werden die Bindungsklassen generiert?
  • Wie man mehrere Anfragen macht und wartet, bis Daten von allen Anfragen in Retrofit 2.0 - android kommen
  • One Solution collect form web for “Android takePersistableUriPermission kompiliert nicht”

    Auf Android Studio musste ich die Zeile zerlegen, um kompilieren zu können:

     int takeFlags = data.getFlags(); takeFlags &= (Intent.FLAG_GRANT_READ_URI_PERMISSION | Intent.FLAG_GRANT_WRITE_URI_PERMISSION); 
    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.