Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/223.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用android contentResolver/Mediastore公开的jetbrains_Android_Kotlin_Orm_Android Contentresolver_Kotlin Exposed - Fatal编程技术网

如何使用android contentResolver/Mediastore公开的jetbrains

如何使用android contentResolver/Mediastore公开的jetbrains,android,kotlin,orm,android-contentresolver,kotlin-exposed,Android,Kotlin,Orm,Android Contentresolver,Kotlin Exposed,我正在尝试制作一个简单的android mediaplayer应用程序,可以远距离控制。目前,我正试图解决在手机上发送艺术家/专辑/歌曲的所有信息的问题。目前,我正在检索以下所有信息: private val contentResolver = activity.contentResolver!! fun getAll():Set<Album>{ val res = mutableSetOf<Album>() val cursor = contentRe

我正在尝试制作一个简单的android mediaplayer应用程序,可以远距离控制。目前,我正试图解决在手机上发送艺术家/专辑/歌曲的所有信息的问题。目前,我正在检索以下所有信息:

private val contentResolver = activity.contentResolver!!

fun getAll():Set<Album>{
    val res = mutableSetOf<Album>()
    val cursor = contentResolver.query(MediaStore.Audio.Albums.EXTERNAL_CONTENT_URI,
            arrayOf(
                    MediaStore.Audio.Albums.ALBUM,
                    MediaStore.Audio.Albums.ALBUM_ART,
                    MediaStore.Audio.Albums.NUMBER_OF_SONGS,
                    MediaStore.Audio.Albums.ARTIST)
            ,null,null)
    if(cursor!!.moveToFirst())
        do {
            res.add(Album().apply {
                name = cursor.getString(0)
                if (!cursor.getString(1).isNullOrEmpty())
                    albumArtUri = Uri.parse(cursor.getString(1))
                songCount = cursor.getInt(2)
                artist = Artist().apply {
                    name = cursor.getString(3)
                }
            })
            cursor.moveToNext()
        }while (!cursor.isAfterLast)
    cursor.close()
    return res
}

我不知所措,我不知道如何连接到这个数据库。我似乎找不到任何关于如何从这个开始的例子。

公开的是针对JDBC的
ContentResolver
未使用JDBC,并且
光标
不是来自JDBC的对象。一般来说,Android不在应用程序或操作系统级别使用JDBC。

非常感谢,我想我会研究一下ORMLite的Iguess@Typhaon:我不知道有任何针对Android的ORM通过
ContentResolver
访问
ContentProvider
。通常,Android ORMs和类似的框架(例如Room)用于访问您自己的SQLite数据库。
 val database = Database.connect(....)