Android und Mac OS X synchronisieren

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von Lucas de Vil, 09.03.2009.

  1. Lucas de Vil, 09.03.2009 #1
    Lucas de Vil

    Lucas de Vil Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    59
    Erhaltene Danke:
    2
    Registriert seit:
    09.03.2009
    Hey ho!

    Am Android (auf dem Freerunner) nervt mich ja tierisch an, dass ich permanent Daten doppelt und dreifach pflegen darf.

    Zum Beispiel darf ich meine Kontaktdaten sowohl auf dem 'Großen'
    (PowerMac 2x2.0GHz) als auch auf dem 'Kleinen' (MacBook) und zusätzlich noch auf dem 'Handgerät' synchron halten.

    Gut, vom Großen auf den Kleinen hält sich der Aufwand in Grenzen. Adressbuch exportieren, importieren, fertsch.
    (Ich hör schon den Ruf nach nem LDAP-Server... Momentan ist kein Geld für nen Mac Mini über. :p)

    Nun würde ich mir ja liebend gern ein iSync Plugin schreiben, welches die Daten des Android-Adressbuchs mit dem des Apple-Adressbuchs synchronisiert.

    Tja... aber wie komme ich an die Daten im Android-Adressbuch?

    Wenn ich die API-Demos richtig deute, dann darf ich mir irgendwie per ContactFilter alle Kontakte aus Android laden...
    Ich persönlich kann mit Java ja nicht allzu viel anfangen, weshalb es mir natürlich lieb wäre, möglichst ohne Java da ran zu kommen.

    Ausgesprochen offen ist Android auch nicht gerade, so dass ich z.B. auch keine Möglichkeit sehe über Umwege auf die Daten der SD-Karte zuzugreifen.

    Müsste ich eine (Android)Client-(Mac)Serverlösung erstellen, die mir die Daten bereit stellt?
    Oder gibt es da was Einfaches?
    Hat sich vielleicht schon jemand Anderes mit der Thematik beschäftigt und bereits eine Lösung gefunden?
     
  2. ikarusx3, 09.03.2009 #2
    ikarusx3

    ikarusx3 Fortgeschrittenes Mitglied

    Beiträge:
    449
    Erhaltene Danke:
    516
    Registriert seit:
    03.02.2009
    Phone:
    Z5C & M7
    Wearable:
    LG GWR
  3. Lucas de Vil, 09.03.2009 #3
    Lucas de Vil

    Lucas de Vil Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    59
    Erhaltene Danke:
    2
    Registriert seit:
    09.03.2009
    Zunächst einmal vielen Dank für den Link! :)

    Aber meinen die das wirklich ernst? Applikationen können nur auf Kontakte zugreifen, wenn sie in Google verfügbar sind?
    Das halte ich persönlich ja für eine Frechheit...
    Zunächst einmal nutzt es mir nicht viel, da mein Gerät nicht ins Netz kann.
    Zum Anderen würde es ja bedeuten, dass jeder Hans und Franz mit seinen Anwendungen sämtliche Daten von mir abrufen und sonst wie weiter verteilen kann.

    Ich denke, da liegt einfach eine Fehlinformation vor. Das Adressbuch kann ja auch so auf meine Adressen zugreifen. Wie gesagt ohne Google im Hintergrund.

    Es muss also eine aus Datenschutzsicht weniger bedenkliche Möglichkeit geben.
     
    Steveria bedankt sich.
  4. zx128, 09.03.2009 #4
    zx128

    zx128 Android-Lexikon

    Beiträge:
    1,179
    Erhaltene Danke:
    143
    Registriert seit:
    23.01.2009
    Wie läuft das mit dem Freerunner? Hast du da Root-Rechte?

    Ich denke die Adress-Daten werden auf dem G1 in einer SQLite-DB stehen,
    ist nur eine Vermutung, aber wenn es stimmt, könnte man es auch versuchen,
    mit bash, C usw. wenn du kein Java magst.
     
  5. Lucas de Vil, 09.03.2009 #5
    Lucas de Vil

    Lucas de Vil Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    59
    Erhaltene Danke:
    2
    Registriert seit:
    09.03.2009
    Berechtigte Frage.
    Ich finde kein Terminal und habe nicht den Hauch einer Ahnung welche IP die USB-Schnittstelle des Geräts verpasst bekommen hat.

    Ich frag mal die Suchfunktion, wie ich das rausfinden kann.

    [gefragt]
    Und kein Stück schlauer.
    Klar, wenn JesusFreke oder so da steht hat es Root-Rechte.
    Gut, ich bin kein Fan von Root-Rechten im normalen Betrieb...
    Wie dem auch sei:
    Modellnummer: freerunner
    Firmware: 1.5
    Basisband-Version: unbekannt
    Kernel-Version: 2.6.29-GTA02_android-kernel-mokodev
    <developer><@><panicking> #91
    Build-Nummer: eng.michael.20090223.110435

    Und nu?

    Oh, SQLite ist okay, damit kann ich um.
    Wenn ich $irgendwie ans Gerät komme muss ich vielleicht gar nicht mal mit bash oder C rumprobieren sondern kann es gleich in Objective-C lösen...

    Danke für den Denkanstoß!
     
    Zuletzt bearbeitet: 09.03.2009
  6. zx128, 09.03.2009 #6
    zx128

    zx128 Android-Lexikon

    Beiträge:
    1,179
    Erhaltene Danke:
    143
    Registriert seit:
    23.01.2009
    Ist ja spannend, Android und Freerunner :) Mal die Welt aus dem anderen Winkel sehen, dank Menschen wie du ...

    Hast du schon SDK drauf? Android Developers ?
    Da ist ein "adb" dabei, mit "adb shell" hast du Terminal auf die Kiste (via USB).

    Was Objective-C angeht:

    aufm G1 läuft ein abgespeckter ARM-Linux drunter, ob du dafür Objective-C kompilierst bekommst, habe ich so meine Zweifel, und wenn, dann nicht mal eben.

    Wenn du native C usw. für Android machen willst (also kein Java) brauchst du arm-eabi Toolchain.
    Es gibt ein paar im Netz, ich nehme das hauseigene, dafür brauchst komplette Source-Umgebung von
    Android. Welcome ?(Android Open Source Project)?
     
  7. Lucas de Vil, 09.03.2009 #7
    Lucas de Vil

    Lucas de Vil Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    59
    Erhaltene Danke:
    2
    Registriert seit:
    09.03.2009
    Ist ganz nett. Leider läuft nur ne Cupcake-Variante vernünftig, weil man mit reinem Touchscreen ohne Softkeys leicht aufgeschmissen ist. ;)
    Richtig geil wäre es auch noch, beim SMS tippen das Gerät kippen zu können, damit die gesamte Ansicht sich ebenfalls dreht. Mehr Platz fürs Keyboard, leichter zu treffende Tasten...

    Nein.
    Dual 2GHz PowerPC G5...
    Aber es wird demnächst auf dem MacBook installiert.

    CrossCompiler für Objective-C gibt es Einige. Den GCC zum Beispiel.
    Allerdings fehlen etliche Frameworks.
    Welches ARM besitzt der gute G1 denn? Ein Mitglied aus dem OSXEntwicklerforum hat nämlich im Zuge für seine Programmiersprache QuantumStep auch einen kleinen Crosscompiler für ARM-Prozessoren drin.
    Leider passt dieser nicht für den ARM, der im Freerunner verbaut ist...
    Was das genaue Problem war weiß ich gar nicht mehr, aber irgendwas am Binary-Format war grundlegend anders und es gab keine Quellen, die dem guten Mann beim Cross Compiler basteln helfen konnten.
    (Weshalb wir unter Anderem die wirre Idee haben, Darwin [den OS X Kern] für ARM zu portieren... +lach+)



    EABI... EABI??? +grübel+
    Ha, DAS war das Problem! Den ARM-OABI konnte er cross-compilen, nur den ARM-EABI nicht. Mist, also wirds für das G1 auch nix mit QuantumSTEP... :(

    Ohne im Android selbst rumfuhrwerken zu müssen werde ich da jedenfalls wohl eher nix realisiert bekommen. Ich hoffte ja auf einen per USB oder Bluetooth erreichbaren Dienst, dem man einfach ein 'getContactData' entgegenwirft und der dann mit sämtlichen Kontakten um sich wirft.
    Idealerweise noch ein 'getContactDataChangedAfter:timestamp', um die Synchronisationsdatenflut gering zu halten.

    Aber da war ich wohl etwas zuversichtlich.

    Immerhin, so bleibt es spannend. :D
     
  8. Lucas de Vil, 10.03.2009 #8
    Lucas de Vil

    Lucas de Vil Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    59
    Erhaltene Danke:
    2
    Registriert seit:
    09.03.2009
    Hab es gerade auf dem Arbeitsrechner (XP) versucht.
    Erfolglos, ich komm nicht rauf.
    Nach mehrmaligem Hin und Her ist der Fehler auch bekannt: XP mag diesen RNDIS-Treiber nicht, wenn der Kernel > 2.6.24 ist.

    Wat weiß ich wieso. Dem Internetz zu Folge auf Grund spontaner Reboots von XP dank des RNDIS-Treibers.

    Also muss das bis heute Abend warten. :)

    Nur falls jemand mal danach suchen sollte:
    Der Versuch, eine Shell zu öffnen, liefert folgendes Ergebnis:
    Code:
    C:\>adb shell
    error: device not found
    
    C:\>
    Die Anzeige der Devices ist auch eher mau:
    Code:
    C:\>adb devices
    List of devices attached
    
    
    C:\>
    Der Status des RNDIS-Treibers mit dem schwarzen Ausrufezeichen im gelben Dreieck lautet:
     
    Zuletzt bearbeitet: 10.03.2009
  9. Lucas de Vil, 16.03.2009 #9
    Lucas de Vil

    Lucas de Vil Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    59
    Erhaltene Danke:
    2
    Registriert seit:
    09.03.2009
    Nun auf dem MacBook ein ähnliches/gleiches Problem.
    Immerhin wurde das Gerät als Netzlaufwerk erkannt und hat eine vernünftige IP bekommen. Pingen kann ich den Kleinen. Doch sowohl SSH als auch Telnet lassen mich nicht rauf.

    Dem adb kann ich zwar theoretisch eine Ziel-IP mitgeben (ADBHOST=192.168.0.202 vor jeden adb-Befehl), aber auch das führt zu keinem Erfolg.

    Kann ich adb irgendwie zwingen auf eine bestimmte IP zugreifen zu wollen?
     
    Zuletzt bearbeitet: 16.03.2009
  10. mcules, 19.03.2009 #10
    mcules

    mcules Junior Mitglied

    Beiträge:
    31
    Erhaltene Danke:
    4
    Registriert seit:
    24.02.2009
    Das könnte daran liegen das kein telnetd oder sshd gestertet sind auf dem G1.
    Wenn du es genau nach der Anleitung auf android.com machst, läuft es auch auf dem MacBook. Tuts jedenfalls bei mir ;)
     
  11. Lucas de Vil, 19.03.2009 #11
    Lucas de Vil

    Lucas de Vil Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    59
    Erhaltene Danke:
    2
    Registriert seit:
    09.03.2009
    Dabei steht es doch schon in der Signatur...
    Und über andere Hardware schweigt sich Android.com leider aus. ;)
     
  12. Lucas de Vil, 19.03.2009 #12
    Lucas de Vil

    Lucas de Vil Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    59
    Erhaltene Danke:
    2
    Registriert seit:
    09.03.2009
    Kleines Update: den Cross-Compiler gibt es jetzt!
    Demnächst* wird also vielleicht auch QuantumSTEP auf dem G1 laufen. :)

    * Blizzards 'demnächst' oder auch Debians 'demnächst': it's done when it's done.
     
  13. Chargeback, 29.05.2009 #13
    Chargeback

    Chargeback Android-Hilfe.de Mitglied

    Beiträge:
    56
    Erhaltene Danke:
    0
    Registriert seit:
    17.05.2009
    Also ich hab da einfach mal flott unter OS-X 10.5.x im Adressbuch unter Einstellungen /allgemein das Häkchen für mit Google Syncen gesetzt und die Daten waren fast umgehend auf das G1 gesynct.
     

Diese Seite empfehlen

Besucher kamen mit folgenden Begriffen auf unsere Seite:

  1. androit mit mac os x syncroniesiren