我在2个不同的类query()
和A
中的2个不同文件中创建了B
方法A
和B
从不同的表中查询:< / p>
public Cursor query(Uri uri, String[] projection, String selection,
String[] selectionArgs, String sortOrder) {
}
然后从2个不同的Activity
我尝试使用以下代码调用:
Cursor cursor = getContentResolver().query(uri, projection, null, null, null);
但是Activity
来自query()
只调用Class A
getContentResolver()
方法。在调用<manifest>
<application>
......................
<provider
android:name=".provider.ItemProvider"
android:authorities="com.waveletandroid.provider" >
</provider>
<provider
android:name=".provider.CustomerProvider"
android:authorities="com.waveletandroid.provider" >
</provider>
</application>
</manifest>
之前我是否缺少设置内容?
我的清单:
URI
ItemListActivity
中的itemUri = Uri.parse("content://com.waveletandroid.provider/waveletandroid";
:
URI
CustomerListActivity
中的customerUri = Uri.parse("content://com.waveletandroid.provider/waveletandroid";
:
{{1}}
答案 0 :(得分:1)
试试如下:
public Cursor getAllContacts() { return database.query("country", new String[] {"_id", "name"}, null, null, null, null, "name"); }
在您的活动中,请按以下方式访问此方法:
Cursor cursor =getAllContacts();