Beiträge von Marco Feltmann

    Ausgezeichnet, dann steht im im LogCat ja, welchen Fehler Du da erhalten hast. :P
    Müsste im Debug-Bereich ausgegeben werden, nicht im Error-Bereich von LogCat.


    Und dass er danach direkt in den finally-Block springt ist völlig klar.
    Ich kürze Deinen Code mal zusammen:

    Java
    try {
    }
    catch((FileNotFoundException e) {
    }
    try {
    }
    finally {
    }


    Das ist insofern quatsch als das Du weitere Exceptions im zweiten Try-Block überhaupt nicht abfängst.
    Was Du suchst ist:

    Java
    try {
    }
    catch(FileNotFoundException e) {
    }
    catch(IOException e) {
    }
    catch(Exception e) {
    }
    finally {
    }


    Frei nach 'Das Leben des Brian': "Jeder nur ein Try!" ;)

    Also ich weiß nicht so recht.
    Offenbar funktioniert die App erst einige Zeit nach der Installation zufriedenstellend.
    Also ein zusätzliches Logging meines Nutzungsverhaltens unter dem Deckmantel der Nützlichkeit.


    Mir jedenfalls ist sehr bewusst, dass die App, die gerade im Hintergrund läuft, ganz bestimmt nicht 'nie benutzt' wurde. ;)
    Auch die vorgeschlagenen Apps sagen mir so gar nicht zu.


    Allerdings habe ich ein gravierendes Problem damit, dass ein Menüpunkt 'Daten übertragen' existiert, der mir nicht sagt welche Daten er überträgt sondern nur die Wahl zwischen 'immer' und 'wenn im WLAN' lässt.


    In Verbindung mit dem (vermutlich bei dieser Sorte von Apps nicht ausbleibendem) permanenten Logging ist das für mich jedenfalls nichts.

    Und was sagt der Debugger auf anderen Geräten?
    Ohne Debugger auf dem Gerät wirst Du dieses Rätsel nicht lösen können.
    Insofern wäre es für Dich sinnvoll, es irgendwie hinzubekommen, dass sich der Debugger mit einem Deiner Geräte verbindet.


    Verlass Dich da nicht zu sehr auf Eclipse sondern frag den adb mal manuell, welche Geräte er findet.


    Da es auf dem Emulator läuft und auf den Smartphones nicht, liegt das Problem definitiv am adb.

    Ich hatte mit dem S2 damals auch nur Probleme und genau deshalb schüttel ich mich so lange ich will. :P


    Stock ROM oder gerootetes/geleaktes ROM?


    Jedenfalls wirst Du dafür wohl andere Quellen als mich nutzen müssen – keinen Plan von aktuellen Samsung Geräten.

    In dem Fall würde ich mit einer weiteren Spielsitzungstabelle arbeiten:
    SpielId, Player1Id, Player2Id


    Ggf. mehrere Spieler, je nachdem, mit wie vielen man spielen kann.
    SpielId, PlayerId (beides zusammen als unique definieren)


    Sobald der Nutzer die SpielActivity startet, kannst Du ihn in die entsprechende Spielsitzungstabelle eintragen.
    Sobald die SpielActivity beendet wird, trägst Du ihn aus der Spielsitzungstabelle aus.


    Wurde die SpielActivity erfolgreich beendet kannst Du den Highscore auswerten und weitergeben. Ansonsten (beispielsweise bei einem Anruf) kannst Du es als ''abgebrochen' markieren. Oder du baust einen Timer ein. Oder was auch immer. Da gibt es unzählige Möglichkeiten.


    Was die 'LogIn Dauer' des Spielers betrifft: nun, wenn er aktiv spielt muss er natürlich eingeloggt bleiben. Wenn er nicht aktiv spielt wäre es vermutlich ziemlich frech, ihn einfach auszuloggen. Am Besten wäre wohl, man lässt ihn so lange eingeloggt, bis er sich selbst ausloggt.

    Ohne den gesamten Code zu sehen wird das natürlich etwas schwierig.


    Da openFileOutput() die Wahl des Ordners automatisch regeln sollte, würde ich das als Problemquelle erst einmal ausschließen.
    Nur das Ausbleiben einer Exception (im LogCat) verwundert mich sehr.


    Wenn Du einen Breakpoint setzt, den Debugger startest und Dich Schritt für Schritt durchklickst, was passiert dann?


    Ich hab mal Deinen Code etwas lesbarer gestaltet. Das solltest Du in Zukunft auch tun.


    Ich empfehle Dir, erst einmal grundlegende Guides von Android selbst durchzugehen und Deine eigene App hinten an zu stellen.
    Denn das ist alles (mittlerweile) sehr gut dokumentiert und Verständnis des Ganzen brauchst Du am Meisten.


    Programmierung ist kein Lego-Baukasten, bei dem Du einfach die Bilder einer Anleitung nachbaust. Es ist eher ein Kasten mit ganz vielen Legosteinen und Du selbst musst wissen, wie Du damit bauen willst.


    Ob ein ImageLoader jetzt das Richtige ist weiß ich nicht.
    Für Bilder im Allgemeinen bietet sich aber der Content Provider android.provier.MediaStore.Images an.


    Wie dem auch sei, die Struktur Deiner bisherigen App lässt doch zu Wünschen übrig. ;)
    Was meinst Du passiert, wenn Deine App kurz in den Hintergrund geht, beispielsweise weil jemand anruft oder den Home-Button drückt?

    ich persönlich packe dort sämtliche auflösungsunabhängigen Graphiken hinein.
    Also die 9patch Images oder XML Drawables.


    Mein Lieblingsbeispiel dafür sind ImageButtons.
    Die image_button.xml kommt in den drawable Ordner.


    HTML
    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android" >
            <item android:state_pressed="true"
            android:drawable="@drawable/active" />
        <item android:drawable="@drawable/inactive" />
    </selector>


    Und abhängig von der Auflösung landen dann die active.png und inactive.png in den jeweiligen drawable-?dpi Unterordnern.
    Ansonsten ist der drawable Ordner die Wahl des Betriebssystems, wenn es die Auflösung des Gerätes nicht feststellen kann. Ist mir aber bis jetzt nur bei einem Gerät untergekommen.

    Bei dem ersten Erdmännchen sieht die Brille irgendwie mehr wie ein BH aus. ^^
    Ein Transparenzeffekt, vielleicht noch mit dem typischen Verzerrungseffekt von Vergrößerungsgläsern, wären hier eventuell hilfreich.

    Hallo. :)


    Also zunächst mal kann mittlerweile auch Windows einen HTTP Server zur Verfügung stellen, der die Verbindung zur Datenbank aufbaut.
    Die können tatsächlich auch PHP. Oder ASP.NET. Oder JSP.
    Der Weg über eine Ansteuerung via HTTP ist also nicht nur möglich sondern nach wie vor wünschenswert. ;)


    Wenn der Kunde Informationen seiner Produktionsdatenbank auf sein Android Gerät haben möchte, dann möchte er das sicherlich nicht nur in seinem eigenen Intranet. Er möchte sicherlich irgendwelchen Businesskollegen beim Meeting oder auf einer Messe sein Endgerät unter die Nase halten und sagen können 'Guck mal hier, seit wir hier sitzen und reden haben meine Leute wieder 200 Stück produziert!'
    Wenn er es noch nicht möchte, wird er das sicherlich möchten, sobald man ihm das vorschlägt. Oder er kommt in der Beta-Phase selbst drauf. Wenn es keine Beta-Phase gibt, kommt er spätestens drei Tage nach Release selbst drauf.
    Und da ist es nicht nur wesentlich sicherer, sondern auch wesentlich einfacher, einen vom Internet erreichbaren Webserver mit der im Intranet befindlichen Datenbank kommunizieren zu lassen.


    Ansonsten führt kein Weg an die MySQL Connectoren von Android vorbei. Am Besten lagerst Du die in einen Content Provider aus.(Das Schöne am Content Provider ist, dass wenn Du plötzlich doch statt mit MySQL mit einem Webbackend connecten willst, Du nur den Content Provider austauschen musst.)


    Fertige MySQL Connectoren gibt es meines Wissens für Android nicht. (Eben weil es nicht der Weg ist, auf dem man so etwas realisiert.)
    Du wirst also um eine Eigenimplementierung nicht herum kommen. Die meisten Java MySQL Connectoren dürften so ohne Weiteres nicht funktionieren, da Android nur einen gewissen Teil des JDK abbildet. Verlass Dich also ruhig darauf, dass für die Java MySQL Connectoren mindestens eine javainterne Klasse, die auf dem Desktop immer vorhanden ist, fehlen wird. ;)