android - 从 Android 小部件查询内容

标签 android android-widget

我正在创建一个包含一些联系信息的 Android Widget

我发现 getContentResolver() 方法只存在于 Activity 类中,而不存在于 AppWidgetProvider 类中。

如何查询小部件的内容?

像这样:

光标人 = getContentResolver().query(SOME QUERY);

更新:

<pre>@Override public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { String people = getContacts(context); // Do something with people... } private String getContacts(Context context) { String peopleStr = ""; String[] projection = new String[] { ContactsContract.Contacts._ID,ContactsContract.Contacts.DISPLAY_NAME }; String sortOrder = ContactsContract.Contacts.DISPLAY_NAME + " COLLATE LOCALIZED ASC"; String selection = ContactsContract.Contacts.IN_VISIBLE_GROUP + " = '" + ("1") + "'"; Cursor people = context.getContentResolver().query(ContactsContract.Contacts.CONTENT_URI, projection, selection, null, sortOrder); while(people.moveToNext()) { int nameFieldColumnIndex = people.getColumnIndex(ContactsContract.Data.DISPLAY_NAME); peopleStr += people.getString(nameFieldColumnIndex) + "\n"; } people.close(); return peopleStr; } </pre>

最佳答案

getContentResolver() 实际上定义在Context 中类(class)。这意味着,可以通过在 appwidgetprovider.onupdate() 和那些相关方法中传递的上下文来调用它。

关于android - 从 Android 小部件查询内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4076624/

相关文章:

android - 保持对话框/Activity 始终在顶部

android - 处理 EditText 中可绘制对象的点击事件

android - 启动和停止服务的 PendingIntent

android - 如何滚动到 android TextView 的末尾?

android - 如何创建与 ContextMenu 完全一样的对话框?

android - 在 LongPress 之后移动事件

java - Kotlin android 可打包

android - 如何在android中解决这个图像缩放问题?

android - 需要一段代码来验证现有订阅

Android RadioButton 类行为