У меня есть два действия в моем приложении, MainActivity вызывает ImagePicker, у которого GridView выкладывает все изображения в галерее телефона, где я использую ContentResolver для получения курсора.
Он отлично работал на моем телефоне, когда я тестировал его, но каждый раз мгновенно разбивался на эмулятор.
Здесь журнал ошибок:
java.lang.SecurityException: отказ в разрешении: чтение com.android.providers.media.MediaProvider uri content://media/external/images/media from pid = 5934, uid = 10060 требует android.permission.READ_EXTERNAL_STORAGE или grantUriPermission()
У меня есть разрешение, написанное в манифесте, как показано ниже:
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme">
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".ImagePicker" />
</application>