| |||||||
Das Thema "CONTENT_URI nicht vorhanden - wie mache ich trotzdem Cursor-Query?" befindet sich unter Android App Entwicklung auf Android-Hilfe.de.
|
| | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Android-Hilfe.de Mitglied Modell: Nexus One Registriert seit: 06.03.2011
Beiträge: 111
Abgegebene Danke: 14
Erhielt 0 Danke für 0 Beiträge
| ![]() Ich hab' ein kleines API Problem, und zwar geht es um die Kategorie ContactsContract.CommonDataKinds: ContactsContract.CommonDataKinds | Android Developers Fall 1) Ich möchte die verschiedenen E-Mail Addressen eines Kontaktes aufsammeln: Code: public void queryAllEmailAddresses(int contactId) {
final String[] projection = new String[] {
Email.DATA, // use Email.ADDRESS for API-Level 11+
Email.TYPE
};
final Cursor email = getContentResolver().query(
Email.CONTENT_URI,
projection,
Data.CONTACT_ID + "=?",
new String[]{String.valueOf(contactId)},
null);
if(email.moveToFirst()) {
final int contactEmailColumnIndex = email.getColumnIndex(Email.DATA);
final int contactTypeColumnIndex = email.getColumnIndex(Email.TYPE);
while(!email.isAfterLast()) {
final String address = email.getString(contactEmailColumnIndex);
final String test3 = email.getString(contactTypeColumnIndex);
final String type = addressType(test3);
email.moveToNext();
}
}
email.close() Referenz: ContactsContract.CommonDataKinds.Email | Android Developers Fall 2) Ich möchte nun die verschiedenen Organizations (Variable COMPANY & TITLE) & Websites (Variable URL) eines Kontaktes aufsammeln. Die Dokus (ContactsContract.CommonDataKinds.Organization | Android Developers, ContactsContract.CommonDataKinds.Website | Android Developers) geben aber keine URIs an --> was mache ich nun? Da habe ich mal gedacht, ja ich kann ja ein DATA.CONTENT_URI nehmen und tatsächlich --> der hat alle WERTE ausgegeben (Nummer, Email, Addresse, Organizaton, Websites, usw.) Wie kann ich jetzt gezielt nur Website & Organization-Variblen sammeln? |
| | |
| | #2 (permalink) | |
| Android Experte Registriert seit: 24.01.2011
Beiträge: 637
Abgegebene Danke: 5
Erhielt 572 Danke für 228 Beiträge
| Zitat:
| |
| | |
| Folgender Benutzer bedankt sich bei maniac103 für diesen Beitrag: | sem_thesis (11.04.2011) |
| | #3 (permalink) |
| Android-Hilfe.de Mitglied Modell: Nexus One Registriert seit: 06.03.2011
Beiträge: 111
Abgegebene Danke: 14
Erhielt 0 Danke für 0 Beiträge
|
Danke! Hat perfekt funktioniert: Code: public void queryWebsites(int contactId) {
final String[] projection = new String[] {
Website.URL
};
String where = Data.CONTACT_ID + " = ? AND " + Data.MIMETYPE + " = ?";
String[] whereParameters = new String[]{
String.valueOf(contactId),
Website.CONTENT_ITEM_TYPE
};
final Cursor website = getContentResolver().query(
Data.CONTENT_URI,
projection,
where,
whereParameters,
null);
if(website.moveToFirst()) {
final int contactWebsiteColumnIndex = website.getColumnIndex(Website.URL);
while(!website.isAfterLast()) {
final String url = website.getString(contactWebsiteColumnIndex);
Log.d(TAG, "Website: " + url);
website.moveToNext();
}
}
website.close();
} |
| | |
![]() |
|
| Themen-Optionen | |
| Ansicht | |
| |
| ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| [Beginner] Wie mache ich in meinem X8... | topek | Sony Ericsson Xperia X8 Forum | 20 | 31.03.2012 22:45 |
| [Datenbank Frage] Cursor query | Googles94 | Android App Entwicklung | 2 | 17.03.2011 13:33 |
| Wie mache ich das update ?? | porti82 | Root / Hacking / Modding für T-Mobile Pulse | 3 | 21.02.2011 22:43 |
| Wie mache ich einen Screenshot? | Manni09 | HTC Desire HD Forum | 11 | 16.12.2010 19:55 |
| Wie mache ich ein Rom update ?? | iamurhero | HTC Hero / T-Mobile G2 Touch Forum | 1 | 22.11.2009 23:16 |