Beiträge von Marco Feltmann

    Ich würde ebenfalls die Datenbank nutzen.
    Da ich allerdings MySQL verseucht bin und keine Ahnung habe, wie die Zugriffszeiten auf dem Device aussehen, würde ich von einem BLOB absehen und statt dessen die File URL ablegen. So hätte man natürlich einen weiteren Zugriff auf den Speicher, dafür aber eine schlankere und damit im Allgemeinen flinkere Datenbank.


    Herunterrechnen der Bilder ist natürlich Pflicht, sonst knallt es ziemlich schnell mal auf einigen Geräten.

    Nun, in einem Punkt hast du recht: du bist wirklich weit gekommen. Chapeau!


    Nur: dein Problem liegt (in dem mir vorliegenden Code) gar nicht an der Datenbankarbeit. Bis dahin kommt der Code nämlich gar nicht.
    Du hast zwar eine Methode erstellt, die genau so heißt, wie die Instanzvariable. Doch diese Methode greift auf die leere Instanzvariable zu und führt zum Absturz bevor überhaupt irgendetwas an der Datenbank gemacht werden konnte.


    Bitte schau dir grundlegende Tutorials an. Vor Allem beim Verdrahten von UI und Code scheint es bei dir noch viele Probleme zu geben.


    Gern würde ich dich bei deinem Projekt unterstützen, das käme auch meiner Schwiegermutter zu Gute.
    Nur fehlt mir dafür definitiv die Zeit. :-/

    Hatte denn schon jemand die Zeit gefunden sich mein App-Projekt anzuschauen?


    Ich habe mal kurz darüber geschaut und fühle mich in meinem Verdacht bestätigt.


    Du solltest dich wirklich einmal hinsetzen und das Getting Started Tutorial von Google durcharbeiten. Damit baust du dir zwar nicht 'deine' App, doch wenn du dich da durchgebissen hast, dann hat dir das ein gewisses Maß an Wissen für deine App gebracht.


    Also wirklich:
    Dein Programm komplett bei Seite packen und außer Acht lassen, nur nach diesem Tutorial vorgehen und nach jedem Schritt reflektieren: "Was habe ich gerade getan?", "Warum habe ich das gerade getan?", "Was würde passieren, wenn ich das anders getan hätte?".


    Lesen, zu Verstehen glauben, zurückspringen und einbauen funktioniert einfach nicht.
    Das sieht man leider in vielen Belangen schon an deiner App.


    Die Idee mit der Begrüßung ist super. Um 12:30 noch mit 'Guten Morgen' begrüßt zu werden finde ich allerdings befremdlich.
    Du gibst den Tipp die Uhrzeit auf 15 Minuten genau einzugeben. Im Dialog kann ich es aber minütlich eintragen.
    Und das Beste: der Speichern-Button führt sofort zu einem Absturz, weil die Instanzvariable für den Button einfach nicht gesetzt ist.


    Für welche Plattform wolltest du das Ganze entwickeln? Also welches API Level?
    (Hab da eine Menge von deprecated Methoden gefunden, deshalb frag ich.)

    Hallo Matelong,


    du bist ganz neu in Eclipse?
    Dann solltest du erst einmal ein paar Anleitungen durchgehen.


    Ich empfehle die von Google erstellten Anleitungen:
    http://developer.android.com/training/index.html


    Du solltest bei 'Getting Started' beginnen. So bekommst du ein Gefühl für Eclipse und Java.


    >>.rar ist ein Dateiformat, das ich nur ungern nutzen mag...


    kannst du das bitte begründen ?
    Ich sehe auf Anhieb keinen Grund.


    Ich bin ein Unix Kommandozeilenfreund und ein unrar Tool gehört nicht zum Lieferumfang meiner Distribution. Erschwerend hinzu kommt, dass nachinstallierte unrar ein gravierendes Softwareupdate meist nicht überleben. Dementsprechend habe ich keinerlei Motivation, für ein bis fünf Dateien im Jahr das unrar Tool immer und immer wieder installieren zu müssen.


    Würde ich fertige Entpacker wie 7z oder so etwas nutzen, sähe ich die Sache auch anders.
    Meine Lieblinge bleiben aber die gepackten Teerklumpen. Einfach weil es keinerlei Lizenzprobleme gibt und gab[1] und sie sich seit mehr als 35 Jahren bewährt haben[2].


    1) Gemäß Wikipedia gab es von 09/2001 bis 07/2010 keine Möglichkeit, Formatversion 3 ohne die kostenpflichtige WinRAR zu entpacken. Sprich: Windows-Benutzer mussten zahlen und alle Anderen konnten mit dem Format überhaupt nichts anfangen. Das ist nicht das, was ich unter einem komprimierten Austauschformat verstehe – weil es das Austauschen einfach unmöglich macht.
    http://de.wikipedia.org/wiki/RAR_(Dateiformat)#Verbreitung
    (Die Verbreitung spricht nicht über die aktuelle Version des RAR-Formats in WinRAR 5, mutmaßlich lässt die sich so gar nicht entpacken...)


    2) RAR 0.1 (03/1993) vs. TAR (für mich nicht mehr feststellbar und im Zweifelsfall mit der Einführung von UNIX schon fertig gewesen. Auf alle Fälle wird erwähnt, dass es Versionen von tar bereits vor Einreichung des POSIX.1-1988 Standards gab – und der wurde wie der Name schon sagt 1988 festgelegt)
    http://de.wikipedia.org/wiki/RAR_(Dateiformat)#Geschichte
    http://en.wikipedia.org/wiki/Tar_(computing)#File_header
    http://en.wikipedia.org/wiki/POSIX#Name


    Insofern ist das RAR-Format meiner Meinung nach einfach nicht transparent, konsistent und gepflegt genug für ein komprimiertes Austauschformat.
    Naja, und das Zip-Format, welches 1989 als PKZIP/PKUNZIP veröffentlicht wurde und die Teerklumpen zusammenschnürt, ist halt ein wunderbares Format für Windows-User, die nichts von Teerklumpen halten.

    Oh, by the way...
    (This part will be in English because it is easier for you to understand. The topic is way too complex to discuss it in a simple German.)


    I'm quite unsure AppInventor is the right tool for this.
    All you have to do is to drag'n'drop some existing components which looks like an easy way to create your app on the first sight.
    But as soon as you'll doing some special tasks no component exists for, the AppInventor can't help you any further.


    Especially for the Google API you have to use the plain Java language and the corresponding IDEs (AndroidStudio, IntelliJ IDEA, Eclipse, NetBeans...) in order to create the application you want.

    // Sind Verbesserungsvorschläge zum Deutsch erwünscht?


    Die Fusion Tabelle ist nicht einfach. Du musst die Google Fusion API[1] nutzen.
    Besser ist in SQLite zu speichern. Dann ist die Tabelle nicht zentral. Änderungen werden schwieriger für Dich.


    Idee:
    Erst einmal lokal in SQLite speichern.
    Dann in die Google Fusion API[1] einarbeiten.
    Anschließend die SQLite aktualisieren.


    Problem:
    In beiden Fällen wird es kompliziert. Entweder der Zugriff oder das Abgleichen wird schwierig.


    1) https://developers.google.com/fusiontables/docs/sample_code

    Da API Level 10 noch eine Verbreitung von fast 40% hat halte ich die Nutzung der Support Library für sinnvoll.


    Also generell halte ich nach wie vor nix davon diese alten Leichen mitzuschleppen. Leider sind aber die Hardwarehersteller der Meinung, wenn die Kunden eine aktuelle Version des Betriebssystems haben wollen, sollen sie halt ein aktuelles Endgerät kaufen.


    Ich finde, dass man die Engstirnigkeit der Hersteller nicht zu Lasten der Kunden legen sollte.
    Zumal das Einbinden der Support Library relativ simpel ist und kaum Mehraufwand darstellt.

    Eventuell fehlt dir noch eine Permission zum Empfangen der Maps.


    Ich glaube, das war der hier:
    <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />


    Aber mit dem Emulator wirst du so oder so Probleme bekommen, da die Dinger nur funktionieren, wenn die aktuellen Google Play Services auch auf dem Gerät installiert sind – und auf dem Emulator sind sie es mangels eines Stores eben nicht. ;)

    Auch wenn meine Meinung eine Andere ist:
    zu einem Spiel gehören Musik und Soundeffekte.


    Musik und Soundeffekte sind von ebenso tragender Rolle wie Grafik, Partikel und andere optische Effekte.
    Spiele wie Silent Hill oder Resident Evil wären ohne Musik und Soundeffekte gnadenlos geflopt.


    Wenn du es also wirklich ernst meinst und dir die Spieler nicht vergrätzen willst, warte, bis der Sound fertig ist.
    Auf keinen Fall vorschnell in den Store werfen.


    Ich für meinen Teil spiele immer in der Bahn und höre über meinen MP3 Player Musik. Dementsprechend ist der Sound aus, denn warum sollten die Mitfahrer von dem Gedudel belästigt werden.
    (Ja, der Satzbau deutet auf eine Frage hin. Da es sich um eine rhetorische Frage handelt setze ich kein Fragezeichen. Sonst antwortet womöglich noch jemand...)


    Wenn ich denn aber mal zu Hause auf dem Sofa liegend ne Runde zocken will (kommt eh selten genug vor) und es gibt dann keinen Sound, dann kann ich das Produkt nicht ernst nehmen.


    tl;dr
    Der Spieler will selbst entscheiden, ob er die Musik hören kann oder nicht. Deshalb ist Sound ein Must-Have für jedes Spiel.