Einen Bug Report bei HTC auf zumachen ist natürlich eine gute Idee.
Um nun aber Evelyn weiter zu bringen hier ein Lösungsvorschlag.
Vorab, ich habe es nicht großartig getestet, da ich mir meine Kontakte nicht versauen wollte.
Das unten stehende Skript (für Android 2.x) kann einfach in der BeanShell Console des
PAW Servers eingefügt und aufgerufen werden.
Erst wenn
DEBUG=false (Zeile 5) gesetzt wird werden die Änderungen vorgenommen.
Bei
DEBUG=true wird nur ausgegeben, was passieren würde.
Hoffe das funktioniert. Falls nicht, dann schon mal sorry ... alles auf eigenes Risiko!
1import android.provider.ContactsContract;
2import android.provider.ContactsContract.CommonDataKinds.StructuredName;
3import android.content.ContentValues;
4
5DEBUG = true;
6
7service = server.props.get("serviceContext");
8
9String[] cols = { StructuredName._ID, StructuredName.FAMILY_NAME, StructuredName.GIVEN_NAME };
10
11cur = service.getContentResolver().query(ContactsContract.Data.CONTENT_URI,
12 null,
13 StructuredName.MIMETYPE + "=?" ,
14 new String[] { StructuredName.CONTENT_ITEM_TYPE },
15 null
16);
17
18if (cur.moveToFirst()) {
19 do {
20 id = cur.getString(cur.getColumnIndex(StructuredName._ID));
21 firstName = cur.getString(cur.getColumnIndex(StructuredName.GIVEN_NAME));
22 lastName = cur.getString(cur.getColumnIndex(StructuredName.FAMILY_NAME));
23 print(firstName + " " + lastName + "-->" + lastName + " " + firstName);
24 print("ID: " + id);
25 cv = new ContentValues();
26 cv.put(StructuredName.FAMILY_NAME, firstName);
27 cv.put(StructuredName.GIVEN_NAME, lastName);
28 if(!DEBUG) {
29 changed = service.getContentResolver().update(ContactsContract.Data.CONTENT_URI, cv, StructuredName._ID + "=?", new String[] { id });
30 print("Changed: " + changed);
31 }
32
33 print("-------------------------------------------------------------------");
34 } while(cur.moveToNext());
35}
36
37cur.close();
Beim Ausschneiden des Quelltextes kommen leider die Zeilennummern mit, diese müssen vor dem Einfügen entfernt werden.
Gruß
Jochen
— geändert am 21.06.2010, 14:52:36
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.