Beiträge von killphil75

    Natürlich geht das auch als Testgerät.
    Dennoch musst du Dir im klaren sein, das diese "billig" Geräte keine Geschwindigkeitsrekorde aufstellen werden. Das die Geräte 100-150Euro billiger sind als andere hat halt auch eine Ursache - weniger Speicher, langsamer Prozessor, preiswerte Verarbeitung, keine Kamera (oder nur 1), usw...


    Der Vorteil bei Nexusgeräten ist, wie bereits von Titus erwähnt, sie kommen mit dem puren Android OS und Google liefert dort die Updates ziemlich zeitnah aus. Zum Beispiel habe ich auf dem Nexus 4.2 seit ein paar Tagen laufen.
    Das ist natürlich für die Entwicklung ein Traum, wenn du stets "aktuell" bist.

    Caused by: java.lang.ClassCastException: android.view.AbsSavedState$1
    cannot be cast to android.widget.CompoundButton$SavedState


    Da liegt der Hase im Pfeffer.
    Musst halt mal schauen was du gerade probiert hast und mit


    try


    catch



    eingrenzen.




    könnte aber auch sein das hier das prob liegt


    at com.android.internal.policy.impl.PhoneWindow.restoreHierarchyState(PhoneWindow.java:1619)


    ->
    er versucht irgendetwas wieder herzustellen und kollidiert aber mit den berechtigungen

    Zitat

    Und ich verstehe einfach nicht, warum noch so unendlich viele 2.x unterwegs sind.


    Die SDK-Unterschiede zwischen 2.3 und 4.0 sind so dermaßen gravierend, dass ein Parallelbetrieb irgendwann unmöglich scheint.


    Aber klar, warum sollten HTC, Samsung und Co. ihre drei Jahre alten
    Geräte auf 4.0 aktualisieren? Sollen die Leute doch neue Geräte
    kaufen... +sigh+

    Also mein Handy ist nicht mal 3 Jahre alt und wird wohl kein ICS Update bekommen... danke Samsung.


    Wenn ich in meine App-Stats schaue (2700 aktive User) dann haben 53 % aller User 2.3 / 2.2. / 2.1 und nur
    44 % ICS und dann der Rest .


    Dieser Zustand wird sicherlich noch 1-2 Jahre anhalten und sollte von uns Entwicklern bei der App-Entwicklung berücksichtigt werden.


    Wie bereits oben geschrieben, um die SDK Lücke etwas zu schliessen bastelt ja Google ständigt an der Support-Library.
    So kannst du ja Fragmente und Co. schon unter Api 4+ (2.1) nutzen und mittlerweile ist die Liste der "kompatiblen" Sachen immer länger . Neustes Update ist sogar Nov2012

    Hmm dafür das die Funktionalität noch recht überschaubar ist, verstehe ich nicht warum die App erst ab Android 4 läuft.
    Hier bei mir wären 4 von 6 Geräten ausgeschlossen und somit würde ich eine solche App nicht nutzen.


    Versuch doch mal den minSDK Level auf Android 2.2 / 2.3 runter zu brechen, das dürfte Dir auch mehr User im Google Play Store bringen.



    Zitat

    Schön finde ich ja auch den Pfeil vor dem Logo. Gibt es da was Fertiges, um das den da hin zu bekommen? :)

    Das ist ein Standardfeature der Actionbar unter Android 4+, um Android4 Features unter Android2.1+ zu benutzen, gibt es den Compatibiltypack von Google. -> Actionbar wird durch ActionBarSherlock unterstüzt.

    Gute deutsche Videotutorials findest du bei Video2Brain -> Appz entwickeln mit Android4 bzw bei Galileo Press


    Das Zauberwort heisst Debugger bzw Debugmodus -> nicht das Playsymbol zum App starten nutzen, sondern den kleinen Käfer.
    Dann kannst du dein Programm "live" schrittweise debuggen, Eclipse schaltet dann auch in eine andere Ansicht um.

    Willkommen im Forum.


    irgendwo hier gibt es auch einen Bücherempfehlungsthread, falls du ein gutes Buch für den Einstieg suchst.
    Ich hab seit Jahren kein VBA mehr gesehen, weiss daher nicht ob die einen objektorientierten Ansatz haben oder alles nur prozedual lösen, das dürfte dann eventl. die größte Umstellung sein, da Java komplett Objekt/Klassenorientiert ist.


    Denoch finde ich die Einstiegshürde in Android ist relativ niedrig. Es gibt jede Menge Unterlagen, Tutorials im Netz für fast jedes Problem (zumindest die Grundlagen werden gut abgedeckt). Die Entwicklerwerkzeuge sind alle frei, was will man mehr.


    Ich wünsche Dir viel Spass beim programmieren.

    Wenn du lernwillig bist, dann noch ein kleiner Tipp.


    Jedes mal wenn du jetzt eine Berechnung ausführst, musst du dir die Views (Textfeld) ect holen.
    Bei 2 Feldern ist das auch noch nicht so performance relevant, aber wenn es mehr werden kann das schon bremsen.


    Deswegen hol dir doch die Views in deiner OnCreate Methode (das layout hat ja auch so lange Bestehen),
    packe es in eine Variable und benutze die... das spart dir ein paar Aufrufe von findView



    Das Deprecated sagt nur das diese Methode in Zukunft nicht mehr unterstüzt wird.
    Unter API 11 kann man PreferenceFragment und Co nutzen. da es die aber in früheren Versionen nicht gibt, hat man da keine Alternative.


    Die sauberste Variante ist die Unterscheidung der verschiedenen Build versionen und bei der neueren Api nutzt man dann halt die neuen Methoden.
    Um dem Versionswahnsinn ein wenig einhalt zu gebieten hat Google den Android Compatibility Pack rausgebracht. Der läuft ab API4
    und bringt einige Features auf "alte" Handys welche erst seit Honeycomb verfügbar waren.


    Fragmente,
    Cursorloader , usw.


    liest du hier


    http://developer.android.com/t…tras/support-library.html



    die PrefernceFragment Unterstützung fehlt aber noch in der SupportLibrary , soweit ich weis

    Lesestoff:


    http://www.androidpit.de/de/an…iew/Spieleentwicklung_101



    Hier im Forum hat letztens jemand auch eine eigene Tutorialvideoreihe gepostet "pan"... verdammt Namen vergessen, findest du aber hier irgendwo... da wird ein Spiel von A bis Z entwickelt.



    Zu deiner Idee.


    Das Prinzip bei übergrossen Maps funktioniert anders.
    Dein Spielfeld zeichnet immer nur den Teil der sichtbar ist. Die Logik sprich der Rest der Map ist zwar im Speicher, wird aber nur gezeichnet wenn er auch sichtbar ist.
    Du verschiebst also lediglich dein sichtbares "Fenster" auf der Map und je nachdem wie dein XY ist, bekommst du raus was du zeichnen musst und was nicht. Ebenso der Zoom , das ist dann nur noch Mathematik.
    Die Frage ist ob du Dir wirklich die Mühe machen willst eine eigene Gameengine zu entwickeln.


    Da draussen in der Androidwelt gibt es bereits diverse Engines, welche man nutzen kann. --> ANDEngine für 2D Spiele / Unity -> 3D

    Wenn du unter Eclipse ein aktuelles ADT installiert hast, dann legt er Dir automatisch ein Menü an.
    Müsste irgend etwas ala


    Java
    @Override
    	public boolean onCreateOptionsMenu(Menu menu) {
        	getMenuInflater().inflate(R.menu.activity_main, menu);
        	return true;
    	}


    und wenn du selber noch einen Listner einbaust, kannst du darauf reagieren




    Wobei zb. R.id.preferences die ID´s der Menüeinträge sind

    Ich hab dir mal heute einen Fehlerreport geschickt, beim auswählen der Farbe (Fach) bin ich abgerutscht, sprich Farbe wurde gewählt, Finger bewegt sich aber weitert, das führt sofort zum Absturz der App (Nexus 7).

    Also natürlich kann man alles in eine Klasse packen, das dürfte aber relativ schnell unübersichtlich werden und wenn du Sachen änderst, kämpfst du dich jedes Mal durch 1000 Zeilen Code.
    Sinn und Zweck der objektorientierten Programmierung ist es ja wieder verwendbare Elemente/Routinen sinnvoll zu kapseln und in Klassen auszulagern bzw. da wo die Logik es ermöglicht.


    Darunter würde zum Beispiel als erstes das Menü und das eigentliche Spiel fallen.
    Menü hat ja nix mit dem Spiel zu tun, also würde ich das schon mal seperat packen.


    -> Menü
    -> Spiel
    -> Einstellungen
    -> Highscoreliste
    -> Anleitung



    das sind ja alles seperate Bereiche und sollten auch am Besten in eigene Klassen/Activities gepackt werden.

    Zitat

    Sooo, habe leider die erste Meldung über einen Absturz beim erstellen
    des Stundenplans mit dem Samsung Galaxy S3. Leider liegen mir keinerlei
    nähere Informationen vor, was es sehr schwierig macht, den Fehler zu
    finden und somit zu beheben.


    Gibt es irgenteine Möglichkeit, Kontakt zu personen herzustellen die einen Kommentar im PlayStore hinterlassen haben?

    Du hast aber die Fehlerausgabe im GoogleDevAccount, da müsste der Absturzreport stehen und zumindest die Klasse/Activity wo der Fehler aufgetreten ist.
    Leider hat man keine Möglichkeit des direkten Feedbacks, da kann man immer nur an die User appelieren bei Fehlern dir direkt eine Email zu schreiben.


    Also so ca Emulatorsettings für das Galaxy III wären


    Google APIs - API Level 15
    Skin: Built-in WXGA720



    • Hardware Back/Home: yes
    • Abstracted LCD density: 320
    • Keyboard lid support: no
    • Max VM application heap size: 48
    • Device ram size: 1024

    Leider verstehe ich nur Bahnhof, da besagtes Run() nicht mal in deinem Codeschnipsel auftaucht und somit niemand wirklich erahnen kann was du willst.


    Ich versuchs mal mit der Glaskugel. Du hast ein Spiel und in diesem Spiel läuft ein Gameloop.
    Normalerweise löst man das über eine Schleife im Background.


    als isRunning = true


    while / do
    {
    blah blup
    }



    Wenn Running nicht mehr true ist, dann ist der Level vorbei und du musst halt mehrere Varianten abtesten.



    if (Levelfail==true){


    level bleibt gleich
    starte spiel erneut


    }
    else {
    // Level wurde geschafft


    gesamt punkte = gesamtppunkte + levelpunkte;
    level = level +1


    lade neuen Level
    starte Gameloop erneut
    }