Beiträge von killphil75

    So einfach mal ein Android Projekt anlegen und einen button hinzufügen



    Wenn du einen speziellen Player haben möchtest musst du nur den Package namen rausbekommen und kannst dnan noch ff einbauen


    Java
    String Package="me.abitno.vplayer";
    
    
    
    
     i.setPackage(Package);

    Ein kleiner Hinweis, den Keystore mit Key den Eclipse da generiert ist nur der DebugKey, sprich wenn du wirklich eine App bauen willst, dann lege dir einen eigenen "richtigen" Key an.


    Der Debugkey gilt nur ein Jahr. Mir ist ist es auch schon passiert, das ich keine App mehr kompilieren konnte, weil der Key abgelaufen war.

    Hallo,


    bislang hatte ich mir nie wirklich Sorgen um die Größe meiner SQLite DB gemacht da ich ein Samsung Galaxy mi 8GB Speicher habe.
    Aber nun tauchen doch komische Force Closes auf und ich konnte Sie darauf zurückführen das die DB bzw der Cache zu gross ist und nicht mehr geöffnet werden kann.


    EIn Löschen der Daten (Einstellungen -> Anwendungen -> ect .. -> Daten löschen) behebt das Problem.


    So nun meine Frage,
    ich würde gerne die Anzahl der EInträge limitieren und überflüssige Löschen, per SQL Query sollte das kein Problem sein.
    Jetzt habe ich gelesen das dies alleine noch nicht hilft da die SQLiteDatenbank trotzdem wächst, jetzt bin ich noch über den VACUUM Befehl gestolpert, welcher die DB nach dem Delete auch wieder physikalisch klein machen soll.



    Hat jemand eventl schon damit gearbeitet bw. Erfahrungen ???

    Jedes View Element verbraucht Speicher, wenn man dann noch viele Sachen in das unperformante Linearlayout packt wird es richtig haarig, beim SDK ist ein Tool dabei was den Speicherbedar simuliert. Eventl musst du deine XML Layout mal überarbeiten.


    Man darf nicht vergessen, das wir immer noch auf einer mobilen Platform programmieren welche zwar schon lesitungsfähig ist, aber nicht die Performance einer Desktop-Workstation hat.

    - Bilder von einem Webserver auf das Smartphone downloaden (wenn der
    User die "refresh" funktion wählt und neue Bilder auf dem Server
    vorliegen)


    -< ganz normale HTTP GET operationen



    - Daten aus einer MySQL Datenbank mit dem Smartphone syncronisieren (ca. 7 Spalten, ~400 Datensätze)



    -< Wo werden die Daten im Handy gespeichert und wie ??? -> SQLITE
    -< Synchronisierung: Android kann nicht direkt auf MySQL Datenbanken zugreifen, eine Übliche Methode ist das Wrappen per PHP Skript, dann kannst du dir die Daten als JSOn oder XMl zurückliefern lassen



    - Einen QR Code lesen, welcher dem Smartphone einen z.B. numerischen Code sendet



    -> Kamerafunktionen und da gibt es auch schon Programmbibliotheken


    - Auf "Knopfdruck" einen String zu dem Webserver in eine Datenbank senden.


    -> HTTP GET / POST was immer du willst

    Na wenn die Firma eine Webseite für die Produkte hat, dann wird dort doch sicherlich eine Datenbank dahinter stehen, kein Mensch generiert Produktübersichten von Hand.


    Du brauchst jetzt lediglich Zugriff auf diese Datenbank, z.B. per einem PHP Hilfskript welche dir die Daten dann passend für deine App liefert.
    -> Stichwort webservice


    -> dann kannst du die Daten am besten per xml verarbeiten und gut ist.



    Parsen ist immer die schlechteste Lösung, sobald sich etwas auf der webseite ändert, müsste der parser (in der Mobilen App)) permanennt neu angepasst werden.

    Es gibt bestimmte Entwicklungsumgebungen für mobile Apps welche sich einer eigenen Sprache bedienen und am Ende für mehrere Plattformen kompilieren können (Win Mobile, Android, Ios) der Vorteil man muss sich nur in einer Sprache einarbeiten und kann mehrere Plattformen bedienen. (Das Konzept gibt es auch bei Desktopsoftware .> siehe RealBasic )



    Das Problem man ist auf die Fähigkeiten dieser Sprache angewiesen und der Module, welche durch die Entwickler zu Verfügung gestellt werden.
    Sprich LowLevel Apps welche zb auf spezielle Dinge zugreifen sind schwierig - aber alle Basics wie GyroSensor,Kamera, Video ect.pp sind natürlich oft implementiert.


    Wer es noch einfache haben will, kann auf die von Matze angesprochene Methode zurückgreifen: per hTML5 und Javascript kann man auch Apps programmieren --> ein bekanntes Framework dafür = phonegap

    Steht doch im Log


    04-29 19:58:29.821: E/AndroidRuntime(344):
    android.content.ActivityNotFoundException: Unable to find explicit
    activity class {com.notepad2/com.notepad2.NoteEdit}; have you declared
    this activity in your AndroidManifest.xml?






    Du greifst auf eine Klasse zu die nicht bekannt ist .
    Manifest geprüft ???

    Hier eine kleine Hilfsfunktion welche ich immer zum escapen nehme.


    Code
    function quote_smart($value) {
       if (get_magic_quotes_gpc()) {
       	$value = stripslashes($value);
       }
       if (!is_numeric($value) || $value[0] == '0') {
       	$value = "'" . mysql_real_escape_string($value) . "'";
       }
       return $value;
    }


    Zitat

    $sql=mysql_query("insert into GAME (HOMETEAM, GUESTTEAM, PLACE, REFEREE, DATE, TIME)values(".$_REQUEST['hometeam'].", ".$_REQUEST['guestteam'].", ".$_REQUEST['place'].", ".$_REQUEST['referee'].", ".$_REQUEST['date'].", ".$_REQUEST['time'].")");

    Warum nicht ?


    Code
    $hometeam = quote_smart($_REQUEST['hometeam']);
    $guestteam = quote_smart($_REQUEST['guestteam']);
     usw....
    
    
    $sql=mysql_query("insert into GAME (`HOMETEAM`, `GUESTTEAM`, `PLACE`, `REFEREE`, `DATE`, `TIME`) values ($hometeam, $guestteam, $place, $referee, ect....);")";

    Hast du Dir mal in deinem PHP-Skript per print_r die Inhalte deiner $_POST , $_REQUESTs ausgeben lassen ???
    Also einfach mal debuggen was ankommt und was nicht.


    In deinem PHP Skript würde ich trotzdem noch versuchen die Werte ordentlich zu validieren, so ist das Skript anfällig für SQL Injektions.


    Achso und als offensichtlicher Fehler - in MySQL werden die SQl Werte per Ticks ' escaped ( shift + # ) und nicht per doublequote.
    Und die Spaltenbezeichner am besten auch in Backticks ´.

    Also eine Activity wo die Fragen generiert werden reicht doch vollkommen.
    Du kannst doch den View dynamisch zusammenbauen. keine Ahnung wie deine Fragen/Antworten jetzt aussehen. aber zB. 4 Checkboxen einzubauen ist ja kein Problem.


    Ich hab das bei einer Umfrage auch so gekapselt und du baust dir halt vorher deine möglichen View Varianten in Routinen zusammen