Android 10端末にインストールするandroid開発において、contentResolver、MediaStoreを使って外部ストレージの共有ファイルにアクセスしようとしています。
以下を行いましたが、うまくいきません。
どこが間違っているのかお教えください。
- Android 10の端末にて、「内部記憶への保存」と「外部記憶への保存」を設定できるカメラアプリを使って、"外部SDカード/DCIM/Camera/"以下に写真を2枚保存。
"外部SDカード/DCIM/Camera"はカメラアプリが自動的に作成し、保存ディレクトリを選択できない。
- 下記のコードのアプリを作成。
画面上のbtnGetMediaボタンをタップしたら、contentResolverが見つけたMediaStore.Images.Media.EXTERNAL_CONTENT_URIの数をLogcatに出力するようにした(つもり)。
- 上記のアプリをAndroid 10端末上で実行しても、MediaStore.Images.Media.EXTERNAL_CONTENT_URIの取得数が0(ゼロ)となる。
〈コード〉
build.gradle(:app)
android { compileSdkVersion 30 buildToolsVersion "30.0.3" defaultConfig { minSdkVersion 24 targetSdkVersion 30 } }
AndroidManifest.xml
xml
1<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" 2 android:maxSdkVersion="28" /> 3<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
MainActivity.kt
kotlin
1class MainActivity : AppCompatActivity() { 2 3 override fun onCreate(savedInstanceState: Bundle?) { 4 super.onCreate(savedInstanceState) 5 6 val binding = ActivityMainBinding.inflate(layoutInflater) 7 setContentView(binding.root) 8 9 binding.btnGetMedia.setOnClickListener { 10 getExternalImages() 11 } 12 } 13 14 fun getExternalImages() { 15 Log.d("MyApp", "Tapped to getExternalImageFiles.") 16 17 val resolver = this.applicationContext.contentResolver 18 val cursor = resolver.query( 19 MediaStore.Images.Media.EXTERNAL_CONTENT_URI, 20 null, 21 null, 22 null, 23 null 24 ) 25 Log.d( "MyApp" , Arrays.toString( cursor?.getColumnNames() ) ) 26 val numCount: Int? = cursor?.count 27 Log.d("MyApp","Num raws : " + numCount) 28 }
<Logcat出力>
2021-06-27 12:39:02.207 D/MyApp: Tapped to getExternalImageFiles. 2021-06-27 12:39:02.233 D/MyApp: [instance_id, duration, description, picasa_id, latitude, orientation, height, is_drm, bucket_display_name, owner_package_name, volume_name, date_modified, date_expires, _display_name, datetaken, mime_type, _id, _data, _hash, _size, title, width, longitude, is_trashed, group_id, document_id, is_pending, date_added, mini_thumb_magic, primary_directory, secondary_directory, isprivate, original_document_id, bucket_id, relative_path] 2021-06-27 12:39:02.233 D/MyApp: Num raws : 0
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。