FRAGE an alle Devs: Kontakte drehen

  • Antworten:25
Evelyn C.
  • Forum-Beiträge: 7.346

19.06.2010, 18:07:17 via Website

Ihr wisst selbst, dass mit HTC Sync alles nicht so richtig hinhaut. Die Namen werden immer falsch herum übertragen (Vorname, Nachname). Und jetzt geht man her und wechselt die Ansicht nach Nachname, Vorname zu Fuß in den Kontakten, für jeden einzelnen Kontakt. Nicht der Burner. Schon gar nicht bei vielen Kontakten. Und auch nicht jeder will den Umweg über Big Brother gehen...

FRAGE: ist es denn nicht möglich, ein kleines Programm zu schreiben, das diese Arbeit übernehmen und alle Kontakte DREHEN kann?

We choose our destiny in the way we treat others Apps nach EinsatzzweckKleine, tolle Helferlein (Apps)

Antworten
Gian U.
  • Forum-Beiträge: 117

19.06.2010, 23:56:58 via Website

Meiner Meinung nach ist es leider nicht möglich. Denn mit einer einfachen Applikation kann man meines Wissens keine Namen editieren. Man kann sie nur lesen...

Ich lasse mich aber gerne vom Gegenteil überzeugen :-)

Mnemono - Efficient learning!

Antworten
Evelyn C.
  • Forum-Beiträge: 7.346

20.06.2010, 13:38:31 via App

Naja, editierten in dem Sinne ist das ja nicht, denke ich. Die App soll ja nur das machen, was ich auch machen kann: Vorname Nachname drehen und mich fragen, ob alle gedreht werden sollen. Solange hier seitens HTC nix besseres angeboten wird, wäre das eine große Hilfe.

We choose our destiny in the way we treat others Apps nach EinsatzzweckKleine, tolle Helferlein (Apps)

Antworten
Mac Systems
  • Forum-Beiträge: 1.727

20.06.2010, 16:54:59 via Website

Kenne das ding zwar nicht, klingt aber eher nach einem bug in dem HTC Sync.

Windmate HD, See you @ IO 14 , Worked on Wundercar, Glass V3, LG G Watch, Moto 360, Android TV

Antworten
Evelyn C.
  • Forum-Beiträge: 7.346

20.06.2010, 17:01:40 via Website

ja, das stimmt schon, das ist insofern ein Bug, als irgendwer die Kontaktübernahme aus Outlook nicht an Deutschland angepaßt hat, also Anzeige nicht Vorname/Nachname = typisch amerikanisch... "Hey George! How are you!"

So geht's halt bei uns in Good Old Germany nicht... :smug:

Aber ich mit meinem Laienverstand dachte mir, wenn mir die Möglichkeit gegeben ist, auf dem Desire jeden einzelnen Kontakt zu drehen (man kann wählen, wie herum der Kontakt angezeigt werden soll), dann sollte es doch möglich sein, hierfür einen Batch zu schreiben, der dieses Drehen für alle Kontakte in einem Schwuppdich ermöglicht...:(

Ich weiß ja auch nicht, ob dieser Fehler mit Froyo behoben wird oder ob's da fröhlich so weiter geht.

We choose our destiny in the way we treat others Apps nach EinsatzzweckKleine, tolle Helferlein (Apps)

Antworten
Mac Systems
  • Forum-Beiträge: 1.727

20.06.2010, 17:28:49 via Website

Ich sehe das drama hier ehrlich gesagt nicht, denke nicht das es ein Android Problems, eher in dem Mapping das dass SENSE UI hier vorgibt, aber wieso nicht einfach dennen einen Bug einstellen als zu jammern ? Oder Fix es selbst wenn das Sense UI OpenSource ist sollte das wohl möglich sein!

Windmate HD, See you @ IO 14 , Worked on Wundercar, Glass V3, LG G Watch, Moto 360, Android TV

Antworten
Evelyn C.
  • Forum-Beiträge: 7.346

20.06.2010, 17:34:46 via Website

dieser Bug ist HTC schon tausendfach zur Kenntnis gebracht worden. Und nix ist passiert. Deshalb ja meine Frage wegen eines Workarounds an die Devs hier.

We choose our destiny in the way we treat others Apps nach EinsatzzweckKleine, tolle Helferlein (Apps)

Antworten
Mac Systems
  • Forum-Beiträge: 1.727

20.06.2010, 17:38:19 via Website

Ist den Sense jetzt OS ? Wenn ja liefere ihnen den Fix und sie werden es sicher übernehmen :grin:

Windmate HD, See you @ IO 14 , Worked on Wundercar, Glass V3, LG G Watch, Moto 360, Android TV

Antworten
Jochen Rühl
  • Forum-Beiträge: 133

21.06.2010, 12:02:46 via Website

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

Antworten
Evelyn C.
  • Forum-Beiträge: 7.346

21.06.2010, 12:26:31 via Website

vielen Dank Jochen für die Arbeit, die du dir gemacht hast. Das ist wenigstens mal ein Lösungsansatz für uns HTC'ler. Werd's mir mal zu Gemüte führen.

We choose our destiny in the way we treat others Apps nach EinsatzzweckKleine, tolle Helferlein (Apps)

Antworten
Jochen Rühl
  • Forum-Beiträge: 133

05.08.2010, 16:05:53 via Website

Falls jemand daran interessiert ist...
Die App zum Taschen der Namen läuft ab Android 2.1 und das APK kann hier heruntergeladen werden:

SwapNames.apk

Antworten
Muckbert
  • Forum-Beiträge: 94

06.08.2010, 21:42:53 via Website

Jochen Rühl
Falls jemand daran interessiert ist...
Die App zum Taschen der Namen läuft ab Android 2.1 und das APK kann hier heruntergeladen werden:

SwapNames.apk


Funktioniert leider nicht.

Die Anwendung Namen Tauschen (..) wurde unerwartet beendet.

Neuinstallation sowie Reboot haben nix gebracht. Einmal konnte ich kurz das Menü sehen, ist dann aber trotzdem abgestürzt.

Antworten
Jochen Rühl
  • Forum-Beiträge: 133

07.08.2010, 14:41:32 via App

Würdest Du mir bitte die Logcat Ausgabe an jochen[at]fun2code.de schicken.

Gruß
Jochen

Antworten
Jochen Rühl
  • Forum-Beiträge: 133

03.11.2010, 11:51:33 via Website

Eigentlich wollte ich das Thema ruhen lassen, weil sich niemand so recht dafür zu interessieren schien.

Nach Rückfrage von Christian habe ich mich mit ihm zusammen nochmal darangesetzt.
Nachdem die Probleme der ursprünglichen App beseitigt waren kam heraus, dass obige App nicht den eigentlichen Anforderungen entspricht.

Da ich nicht mit Outlook synchronisiere und auch sonst nicht viele Kontakte habe, war mir das Problem nicht ganz klar.
Die eigentliche Anforderung müsste lauten:

Die Anzeigenamen der Kontakte sollen wie folgt formatiert werden: "Nachname, Vorname"

Mit dem Drehen von Vor- und Nachname hat das also nur bedingt etwas zu tun.
Ich habe also eine neue App geschrieben und Christian hat diese getestet.

Das Benutzen der App geschieht natürlich wie immer auf eigenes Risiko!

Die App kann hier heruntergeladen werden:
DisplayNames.apk

Gruß
Jochen

Stefan K

Antworten
Stefan
  • Forum-Beiträge: 35

19.11.2010, 14:40:16 via Website

wie kann ich das installieren?

Antworten
Jochen Rühl
  • Forum-Beiträge: 133

19.11.2010, 14:44:17 via Website

Hallo Stefan,

einfach auf dem Handy unter "Einstellungen>Anwendungen" den Haken bei "Unbekannte Herkunft" setzen und den Link im Browser anklicken.
Dann sollte automatisch die Installation gestartet werden.

Gruß
Jochen

Antworten
Stefan K
  • Forum-Beiträge: 1

20.11.2010, 11:24:46 via Website

Hallo Jochen,

ich bin zwar ein anderer Stefan, habe dein Tool aber benutzt und es hat bei meinen Kontakten wunderbar funktioniert!
Vielen Dank!

Antworten
Stefan
  • Forum-Beiträge: 35

21.11.2010, 16:28:06 via Website

sau geil, funkt einwandfrei und suchte das teil schon ewig

vielen dank, weiter so

Antworten
Gelöschter Account
  • Forum-Beiträge: 18

12.01.2011, 10:24:40 via Website

Hallo Jochen,
habe das App runtergeladen.
Klappt alles wunderbar.
Hat aber einen großen Nachteil. Es werden immer alle Kontakte gedreht.
Wenn ich einen neue Kontakte anlege, werden diese wieder in der Reihenfolge Vorname, Nachname eingefügt.
Somit ist dann alles durcheinander. Das heißt der neue Kontakt ist dann immer andersrum angelegt, weil sich immer nur die komplette Liste drehen lässt.

Gruß Harald

Antworten
Jochen Rühl
  • Forum-Beiträge: 133

12.01.2011, 10:37:09 via Website

Hallo Harald,

die Kontakte werden nicht gedreht, sondern es wird der Anzeigename "Nachname, Vorname" erzeugt.
Sollte also auch bei mehreren Durchläufen noch stimmen.
Ist schon eine Weil her, somit hoffe ich dass das oben geschriebene stimmt.
Werde mir das bei Gelegenheit nochmal anschauen.

Da ich das selbst nicht benutze, kann es durchaus sein, das nicht alles wie gewünscht funktioniert.
Falls das jemand weiter pflegen möchte, stelle ich gerne den Code zur Verfügung.

Gruß
Jochen

Antworten
Jochen Rühl
  • Forum-Beiträge: 133

13.01.2011, 17:51:34 via Website

Hi,

scheint wohl wirklich so zu sein, dass irgendwie Vor- und Nachname getauscht werden. Explizit wird dies im Code jedoch nicht gemacht.
Auf meinem Nexus One kann ich die App so oft aufrufen wie ich möchte, dies hat keinerlei Auswirkungen auf die Namen.
Warum sich diese bei HTC (Sense) Geräten anders verhält, ist mir ein Rätsel.

Mittlerweile habe ich eine neue Version hoch geladen die den Anzeigename nur dann erzeugt, wenn dieser nicht korrekt ist.

Da ich das Rätsel gerne lösen möchte hier die Codezeilen, die den Anzeigenamen (DISPLAY_NAME) erzeugen:

1ContentValues cv = new ContentValues();
2cv.put(StructuredName.DISPLAY_NAME, lastName + ", " + firstName);
3int ret = ctx.getContentResolver().update(ContactsContract.Data.CONTENT_URI, cv, StructuredName._ID + "=?", new String[] { id });

Vielleicht hat jemand eine Idee woran das liegen könnte.

Gruß
Jochen

Antworten
Jochen Rühl
  • Forum-Beiträge: 133

14.01.2011, 09:13:55 via Website

Hi,

die Änderung hat wohl nichts gebracht, warum auch immer :(

Bitte die APP erstmal nicht installieren!

Ich melde mich, sobald es etwas neues gibt.

Gruß
Jochen

Antworten
Jochen Rühl
  • Forum-Beiträge: 133

15.01.2011, 12:42:26 via Website

Hi,

die neue Version scheint wohl zu funktionieren und steht zum Download bereit:

DisplayNames.apk

Gruß
Jochen

Antworten
Thomas S.
  • Forum-Beiträge: 12

15.01.2011, 22:22:38 via App

super auf meinen Desire hat es geklappt.

Antworten
Gelöschter Account
  • Forum-Beiträge: 6

11.08.2011, 01:28:39 via Website

Funzt bei mir leider nicht. HTC Desire Z mit CM 7. Anzeigeeinstellung auf "Nachname zu erst und auch danach sortieren. falls das überhaupt relevant ist,,,

Antworten
Holger Klages
  • Forum-Beiträge: 1

20.11.2011, 17:20:58 via Website

nach langer Suche bin ich erfolgreich gewesen SUPER DANKEEEEE !!!!! Sony Ericsson Xperia active 2.33

— geändert am 20.11.2011, 17:22:36

Ansgar M

Antworten