我有2个android应用程序,第一个(用Kotlin编写)使用内容提供程序将数据提供给第二个应用程序。如何异步返回查询函数中的游标?
**In ContentProvider class**
override fun query(p0: Uri, p1: Array<String>?, p2: String?, p3: Array<String>?, p4: String?): Cursor? {
val cursor = MatrixCursor(arrayOf("id", "name"))
// async fun
ContactsHelper(context).getContacts {
for (contact in it) {
cursor.newRow()
.add("id", contact.contactId)
.add("name", contact.firstName)
}
}
return cursor
}
**in ContactsHelper class**
fun getContacts(ignoredContactSources: HashSet<String> = HashSet(), callback: (ArrayList<Contact>) -> Unit) {
Thread {
callback(...)
}.start()
}
返回的游标不包含数据,如何向游标添加数据然后返回它?
答案 0 :(得分:0)
如何异步返回查询函数中的游标?
不能。 query()
需要同步。