Beiträge von Marco Feltmann

    Stelle gerade mit Erschrecken fest, dass das Signieren offenbar echt nicht geht…
    Also nicht mit dem Standardprogramm und nicht mit Google Mail.


    Eigentlich™ müsste das Ganze doch über die KeyChain abgewickelt werden.


    Mal gucken, ob R2Mail2 was taugt. Angeblich kann es ja auch Exchange.
    Dann finde ich gegebenenfalls auch raus, wie das mit den Zertifikaten geht. ;)

    Kurze Antwort (im Radio Eriwan Stil): Im Prinzip nein, aber…


    Lange Antwort:
    Da Java ja cross-platform kompiliert wird, ist es eigentlich egal. Sämtliche Eigenheiten, die die beiden Prozessorsysteme unterscheiden, werden durch die jeweilige Java Virtual Machine entsprechend angepasst.


    AFAIR fängt es sogar die Unterschiede der Byteorder in x86 und PPC ab.


    Wichtig wird das Ganze nur, wenn Du auch das NDK unterstützt, also auf C/C++ Ebene entwickelst.
    Dann musst Du peinlichst genau darauf achten, dass Deine Android.mk auch für alle Prozessoren baut, auf denen Dein Programm laufen soll.
    (Und Eclipse muss es auch entsprechend ins .apk zusammenpacken, was gern mal schief geht…)


    Zum Glück bekommt der NDK Compiler das relativ zuverlässig hin, man muss halt nur daran denken es ihm entsprechend mitzuteilen.


    PS:
    Kurze Antworten gibt es eigentlich selten.
    Es ist zwar häufig so, dass Menschen auf komplexe Fragestellungen simple Antworten erwarten, das lässt sich im Allgemeinen aber nicht umsetzen.

    Also mit der Standard Mail App ging das.
    Die warnte lediglich einmalig, dass sie den CA nicht kannte und ob ich dem wirklich vertrauen wollte.


    Oder meinst Du ein Client Zertifikat als Loginmöglichkeit?
    Das geht meines Wissens mit der Standard Mail App nicht.


    Bietet R2Mail2 denn keine Möglichkeit für den Zertifikateimport?

    Das müsste schon gehen, doch da Du die MainActivity neu instanziierst, dürfte das keine/falsche/unerwartete Ergebnisse liefern.


    Du könntest alternativ schauen, ob Du die Funktionalität über die Callback-Funktionen des SurfaceView implementiert bekommst.
    Alternativ könntest Du vom SurfaceView ableiten und dem eine Membervariable gegen, auf die Du dann Deine MainActivity setzt.

    Du hast keine Berechtigung einen Socket zu öffnen.


    Wenn Deine App android.permission.INTERNET bekommen hat, dann fehlt wohl noch android.permission.ACCESS_NETWORK_STATE
    (In Deiner Manifest hast Du nur ACCESS_NETWORK_STATE eingetragen, nicht aber INTERNET.)

    Ein Polygon bedeutet ja, dass das Ding viele (polys=viele) Punkte (gonia=Ecken) hat.
    Und im Allgemeinen erwartet das Polygon, dass es am Ende geschlossen wird. Die offene Variante heißt Polyline. (Zumindest in der Google Maps API)


    Da eine Funktionsdarstellung meines Wissens an Hand der errechneten Werte eine Kurve darstellen soll, an Hand derer sich auch alle nicht berechneten Werte ablesen können lassen sollen, halte ich ein Polygon sowie eine Polyline für gänzlich ungeeignet.


    Du könntest einen Path verwenden.
    Allerdings kann das scheinbar keine Bezierpfade und das Zeichnen wird damit aufwendig.


    Eventuell hilft Dir eine fertige Library, wenn Du nicht alles selbst bauen möchtest.
    Beispielsweise AndroidPlot.

    Huch, hier ging es ja noch weiter. ^^


    Zelezeba
    Ich weiß, dass mein Ansatz höchst verwirrend ist.
    Deshalb habe ich zunächst Deine Frage zu beantworten versucht und dann mit Tipps und Links um mich geworfen.


    Die Interaktion von Android zwischen den Daten auf dem Telefon und der Anzeige auf dem Display ist allerdings sehr abstrakt und nicht so einfach zu realisieren. Insofern habe ich mir flink ein Design überlegt, das einerseits sinnvoll zu bedienen ist und Dich andererseits an Spezialitäten von Android heranführt.


    Es wird Dir leider nicht allzu viel helfen, Dir über alle möglichen Hilfen im Internet etwas zusammen zu basteln, weil Dir dann Hintergrundwissen fehlt.


    Um beim PC reparieren zu bleiben: wenn Du immer gemäß Anleitung RAM in den PC steckst wunderst Du Dich plötzlich, warum Windows XP nur von 3,5GB spricht obwohl Du doch 8GB reingesteckt hast. Du zweifelst an Dir, schaust was schief gegangen sein könnte und wunderst Dich um so mehr.
    Wenn Du ein bisschen was von der Interaktion zwischen Betriebssystem und RAM verstehst, dann fällt Dir kurz darauf ein, woran das liegt und Du rüstest auf ein weniger verschwenderisches Maß herunter.


    Leviathan
    Nein nein, ich bastle da nichts.
    Sofern es sich nicht um ein auf das Problem zugeschnittenes Videotutorial bzw. Coachingevent handelt, halte ich von vorgefertigten Dingen nicht allzu viel.
    Die 20 bis 40 Stunden waren auf Anfänger gemünzt, die bei jedem Punkt recherchieren müssen und auch mal ein bisschen herumprobieren wollen.
    Ich komme regelmäßig auf solche Zeiten. Das liegt bei mir daran, dass ich das Ganze erst einmal funktional zusammenklöppel (gemessen an dem, was ich mir da vorgenommen habe und unter Berücksichtigung der Dinge, die mich immer wieder Zeit kosten weil ich sie immer wieder falsch mache, sollten das so 4 bis 5 Stunden sein) und anschließend dann überarbeite und überarbeite und überarbeite. Im Vorfeld gehen schon mal 2 bis 3 Stunden für Planung und Storyboards drauf. Naja, und am Ende dann noch mal 3 bis 5 Stunden für Strukturanpassungen und Dokumentation.


    Es geht mir nicht darum, fertig zu werden. Es geht mir darum, meine Sache gut zu machen.
    Vermutlich bin ich zu lange im Geschäft und habe zu wenig Zeit, um eine App schnell fertig zu stellen.
    (Gerade erstelle ich eine Bibliothek komplett neu, die ich vor ungefähr zwei Jahren schnell fertig gestellt habe – das macht kein Spaß!)


    Ein Professor meinte mal, ein 'Hallo Welt' ließe sich in zwei Minuten erstellen – oder mit entsprechender Projektplanung, Qualitätssicherung, Tests, Design, Verpackung, Marketing und Dokumentation auch in zwei Monaten.


    --


    PS: Man sagt aber nicht 'der Mensch', sondern 'die Person' ;)
    Davon abgesehen ist "Mensch" nur grammatisch maskulin, da er als abstrakte Bezeichnung keinem konkreten Geschlecht zuzuordnen ist.
    Der Mensch Zelezeba ist dennoch biologisch feminin. Rausreden nützt da auch nix.


    Ich habe mir angewöhnt, Personen direkt mit 'Du' anzusprechen, beziehungsweise in der dritten Person über den Nicknamen, um die Personalpronomen zu vermeiden.
    Im Gegensatz zum gefühlten Großteil der Entwickler bin ich froh um jede Frau wie Zelezeba, die sich in die Programmierung vorwagt.
    Gerade deshalb gebe ich mir Mühe, in Einsteigern die Lust am Forschen und Probieren zu wecken und sie von der Idee des schnell zu erreichenden Ziels abzubringen.


    Beispielsweise weiß jeder, dass Thomas Alva Edison sich unter Anderem um die Glühlampe verdient gemacht hat.
    Kaum einer weiß, dass er ungefähr 500 Schrottlampen entwickelt hat. Noch weniger wissen, dass er Aufsehen erregende Installationen aus eigener Tasche hat erstellen lassen, um die Werbetrommel für seine Erfindung zu rühren. Schnell kann man das wahrlich nicht nennen. ;)


    Wie dem auch sei, statt eines flapsigen '"Der Mensch" ist aber maskulin' wäre eine Entschuldigung angebracht.
    Ein 'Oops, entschuldige bitte. Das wusste ich nicht, da Du in Deinem Profil kein Geschlecht angegeben hast.' tut niemandem weh. :P

    Also um Deine Frage zu beantworten: Du kannst eine Activity starten und ihr einen Intent übergeben. Dieser Intent kann dann die jeweils notwendigen Daten beinhalten und entsprechend auf der nächsten Activity darstellen.


    Allerdings sind Activities schon ziemlich Gingerbread. Damit will ich sagen, dass es seit Honeycomb auf dem Tablet und seit Ice Cream Sandwich auf dem Smartphone das sehr mächtige Werkzeug der Fragmente gibt.


    Es wäre daher sinnvoller, Dein UI so zu gestalten, dass Du einen Pager hast. (Ähnlich dem Play Store mit den 'Neueste', 'Beliebteste', 'Bestseller' etc.pp.)
    Ganz links wäre dann beispielsweise 'Alle', in der Mitte 'On' und rechts 'Off' und mit einem Swipe oder Antippen würde dann dynamisch gefiltert werden.


    Das ist ein ideales Übungsprojekt und Du solltest dafür ungefähr 20 bis 40 Stunden einplanen. :)


    • Du benötigst neben einem ListView auch einen entsprechenden ListView Adapter, der Dein ListView entsprechend füllt.
      Perfekterweise hast Du für jeden dieser Pager ein eigenes ListView mit eigenem Adapter. Macht zunächst etwas mehr Aufwand, da man die geringen Unterschiede einfach mit If-Abfragen erschlagen könnte. Ist aber später einfacher zu erweitern.
      ListViews im Allgemeinen sind mit ihrem ViewHolder Pattern im Speziellen schon ein Bereich, an dem man sich ziemlich lange aufhalten kann.


    • Deine Items müssen für die Nutzung standardisiert werden, Du brauchst also ein eigenes Objekt für die 'Listenitem'.
      Auf jeden Fall sollten die Properties 'name' als String und 'selected' als Bool enthalten sein. Vielleicht willst Du sie auch um Details erweitern oder ein Bild ran hängen können oder sonstwas. Dann ist pro Eintragstyp ein Objekt sinnvoll.


    • Natürlich sollten Deine Items irgendwo gespeichert werden. Shared Preferences sind dafür ungeeignet, also musst Du den Umweg über eine SQLite Datenbank gehen.


    • Es ist eine gute Idee, die Arbeiten in dieser SQLite Datenbank über einen Content Provider zu realisieren, den Du natürlich auch selbst erstellen musst. So kannst Du gewährleisten, dass bei einer Änderung an Deiner Datenbank nur ein Objekt (der Content Provider) angepasst werden muss. Ansonsten suchst Du Dich im Code dumm und dusselig.


    • Wenn Du so richtig angeben willst, schreibst Du zu jedem wichtigen Teil wie Deinen ListItem Objekten und Deinem Content Provider auch noch Unit Tests. Damit kannst Du Probleme bei Änderungen bereits vor dem Ausführen auf dem Gerät erkennen.


    Mit diesen Informationen und http://www.vogella.de als Ressource solltest Du eigentlich in der Lage sein, Dir was Passendes zusammenzustellen. :)
    (Und wenn Du ganz viel Lust zum Spielen hast, aber befürchtest, etwas kaputt zu machen: Nutze ein Source Code Management System wie Git!)

    Ich meine schon Pokémon in seiner Gesamtheit.
    Zeichentrick, Spiele, Sammelkarten… Alles, was irgendwie mit Pikachu, Fluffeluff und Konsorten zu tun hat.


    Dass sie immer noch aktuell sind ist schön, allerdings werde ich auf den Zug nicht aufspringen. :)
    (Hey, lieber in einem Vorstellungsthread sich über Persönliches austauschen als das gar nix im Forum passiert.)