Beiträge von matthias

    Hi,


    sorry, dass ich erst jetzt antworte, war etwas stressig in letzter Zeit ....

    HTML
    <a href="http://www.google.com/maps?q=Silvrettapl+1++6561+Ischgl&hl=de&ie=UTF8&sll=47.11954,10.213415&sspn=0.530786,1.229095&doflg=ptk&hnear=Silvrettaplatz+1,+6561+Ischgl,+Landeck,+Tirol,+%C3%96sterreich&t=m&z=16">
    Karte »
    </a>


    4 von diesen Links stehen in meinem lokalen HTML, nur der erste geht auf meinem Tablet und auf einem S2. Auf meinem Galaxy Nexus gehen alle.
    Hätte da einen Bug gefunden, der meiner Meinung nach drauf passt ->
    Issue 2887


    Will mir grad noch anschauen, ob ich das irgendwie mit addJavascriptInterface gebacken kriege, soll wohl ein funktionierender Workaround sein


    Gruß,
    matze

    Hi,


    würd sagen ist der GarbageCollector. Der springt regelmäßig an. Bei dir vll. vermehrt, wenn das was du machst etwas arg viel RAM frisst und/oder CPU Leistung. Oder aber der Verschleis an Objekten recht hoch ist und du andauernd neue erzeugst und wieder verwirfst. Deswegen schaut der Garbage Collector nach, ob er alte Elemente, die nicht mehr gebraucht werden, entfernen kann. Muss rein Theoretisch nichtmal an deiner eigenen App liegen. Also an sich nix tragisches.


    Gruß,
    matze

    Hi M3doXX,


    also ich denke an einem eigenen Adapter kommst du so schnell nicht vorbei. Meine Vorgehensweise ist eigentlich immer, dass ich mir eine Bean baue, die alle relevanten Daten für eine Zeile hält. Also nur eine Klasse, die getter und setter Methoden enthält, keinerlei Logik. In deinem Fall wohl


    Dann erstellst du einen Klasse, ich taufe sie einfach mal LiveTickerAdapter. Sie bekommt ein ArrayList<LiveTicker> und evtl den context (brauch ich meistens).



    Dieser Holder ist ein Zwischenschritt, den es nicht unbedingt braucht. Die Values sind eigentlich ziemlich gleich, nur dass es gleich TextViews sind, die dann so wie sie sind ausgegeben werden. Hab den Zwischenschritt als Trennung zwischen reinen Daten und Anzeige bis jetzt so immer gemacht .... Baue meistens eine innere Klasse



    Dann kommen wir mal zur Zeile

    Java
    convertView = inflator.inflate(R.layout.listitem, parent, false);


    Da holt er sich das Layout listitem. Schaut irgendwie so aus


    Ist jetzt einfach mal alles so aus einem meiner Projekte zusammen kopiert und zum besseren Verständnis an deine Namen angepasst. Falls irgendwo noch Variablen stehen, die sonst nirgends vorkommen, hab ich die übersehen ;)


    Aber im großen und ganzen wars das eigentlich auch schon. Du gibst deiner ListView einen Adapter mit Daten. Du könntest dort auch deine beiden ArrayLists übergeben, dann musst du in der getView halt das ganze auslesen. Du brauchst auch keinen Holder, du kannst das da auch direkt machen, die Trennung finde ich persönlich nur schöner. Und durch den LayoutInflator weiß er, wie die Elemente dann angeordnet werden müssen.


    Ich hoffe ich konnte dir helfen :)


    Gruß,
    matze

    Hi,


    Dinge wie Netzwerkabfragen darf man in Android nicht von dem Haupt Thread aus machen, das muss man in einen eigenen Thread auslagern. Würde sonst diverse Nebeneffekte haben, wie dass die Oberfläche einfriert usw. da deine Netzwerkabfrage andauernd 2 Sekunden schlafen will. Bau einfach eine eigene Java Klasse, die von Thread erbt und wirf das Teil in deiner Main dann an.


    Gruß,
    matze


    EDIT: ahja, wer lesen kann :D hättest du eh versucht. Vielleicht liegts an der inneren Klasse? mach da mal ne eigene bitte. Vielleicht auch mal die Kombination mit extends Thread anstatt implements Runnable, da kriegt man das ein oder andere geschenkt ....

    Hi,


    bist du dir sicher, dass dein LinearLayout llMain die komplette Fläche umfasst? Setze mal im XML für dein LinearLayout

    HTML
    android:background="@android:color/white"


    Welche width und height sind eingestellt? Probier mal

    HTML
    android:layout_width="fill_parent"
        android:layout_height="fill_parent"


    Du könntest auch dort dein Bild gleich setzen, allerdings würde es dann gestreckt werden, was du mit deiner Faktor-Berechnung vermeidest.


    Du könntest auch zum besseren Verständnis einen Screenshot anhängen, falls ich dich falsch verstanden habe.


    Gruß,
    matze

    Hi,


    irre ich mich, oder ist das ganze überhaupt erst relevant, wenn man über 25.000 Anfragen von einer IP aus kommt? Man kann das ganze ja auch ohne jegliche Angabe eines eigenen Keys in seine Anwendungen einbinden. Wenn dann von einer IP aus mehr als 25.000 Kartenladevorgänge kommen, weigert sich der Dienst Daten auszuliefern.
    Ich weiß nicht ob wir in unserer Java Application den "offiziellen" Weg gehen, aber in der URL steht ja nirgends eine eindeutige Identifizierung unserer Anwendung, womit das Anwendungsgebunden und nicht IP-gebunden wäre.


    Klärt mich bitte auf, falls ich mist erzähle :D


    Gruß,
    matze

    Hi khh,


    am Handy unter Einstellungen -> Entwickleroptionen -> USB-Debugging aktivieren. Handy via USB an den PC anschließen. Dann erscheint dein Handy im adb. Wenn du jetzt unter eclipse(?) dein Projekt als Android Application startest, kannst du dein Handy auswählen. Debugging funktioniert genau so. In den Entwicklereinstellungen gibts auch einige nette Sachen die bei der Fehlersuche helfen, einfach mal durch schaun ;)
    Das ganze funktioniert wesentlich besser als so ein Emulator, die saufen bei mir immer ab. Ausserdem kann man sich (finde ich) nicht 100% sicher sein, dass die App auch auf realen Geräten läuft, und nicht nur im Emulator. Ich teste ausschließlich mit meinem Handy.


    Gruß,
    matze

    Hi,


    meines Wissens ist die shouldOverrideUrlLoading dafür genau die richtige Methode. Im JavaDoc der Methode steht noch
    "If WebViewClient is not provided, by default WebView will ask Activity Manager to choose the proper handler for the url."
    Aber da deine WebView ja bereits den WebViewClient provided ist das auch hinfällig ....


    Gruß,
    matze

    Hi Leute,


    mal wieder hab ich Probleme mit meiner WebView. Und zwar habe ich eine WebView die lokales HTML anzeigt. Darin befinden sich unter anderem 4

    HTML
    <a href="....">Link</a>

    Links. Diese Links leiten auf Google Maps Karten um (vielleicht liegts ja daran?) die mittels WebViewClient auch innerhalb meiner WebView dargestellt werden(sollen). Nun ist mein Problem, dass das ganze auf meinem Handy einwandfrei funktioniert, jedoch beim Kunden und auf einem (nicht direkt repräsentativen) Tablet nicht. Der LogCat sagt dazu nichts, kein Output wenn ich auf den Link drücke.
    Mein Handy ist das Samsung Galaxy Nexus mit JB. Das Tablet z.B. hat eine Custom Rom (deshalb nicht repräsentativ) mit ICS drauf.
    Das Tablet und das Samsung Galaxy S2 des Kunden haben dabei auch ein anderes Verhalten, während beim Tablet kein einziger Link funktioniert, geht beim Kunden der erste Link, die nächsten 3 gehen nicht.
    Mein erster Gedanke war W3C Fehler, doch nachdem ich alle ausgebessert habe tut sich immer noch nichts ....


    Hat jemand eine Idee? Einen Anhaltspunkt? Wilde spekulationen? Ich nehm alles was euch einfällt!


    Gruß,
    matze

    Hi,


    naja doof gesagt auf solche probleme stößt man nicht, wenn man sich an die ungeschriebenen konventionen zur ordnerbenennung hält :P
    spaß bei seite, wie wärs mit nem symbolischen link von deinem adv nach c:\\ ?


    Gruß,
    matze



    (PS: gibts unter windows eigentlich auch etwas vergleichbares wie $PATH unter linux-basierten systemen?)

    Hi,


    habs selbst in meiner App, dass verschiedene Activitys die View drehen. Allerdings mach ich das auch mit setRequestedOrientation. Das einzige was mir grad noch einfällt is vll. dass dein "this" das falsche Objekt ist ... ansonsten weiß ichs leider nicht, sorry :(


    Gruß,
    matze

    Hi,


    hab mir einfach mal bei Google Suche "PDF" das erste raus gesucht, das Großbuchstaben im Name hat. Mit meinem Code funktionierts. An den Cookies kanns nicht liegen, beim besten willen kann ich mir das nicht vorstellen, wieso sollte der einen Unterschied zwischen Groß und Kleinschreibung von Dateinamen machen ....


    Mach mal dein

    Java
    webView.getSettings().setLoadWithOverviewMode(true);


    weg, das gab bei mir nur Probleme.


    Mein Code sieht jetzt folgendermaßen aus (is sicherlich einiges überflüssig, aber erstmal egal) :



    Wie gesagt das PDF ist irgendeins von Google erste Seite ....


    Funktioniert bei mir einwandfrei ... zumindest mit dem PDF da, hab kein anderes getestet. Vielleicht liegts auch an dem PDF? Falscher MimeType in den ersten Paar Bytes oder irgend sowas ....


    Probiers mal aus, vielleicht bringts dich ja weiter ;)


    Gruß,
    matze

    Hi Leute,


    hätt da mal ne Frage die ich irgendwie nicht so richtig Google-tauglich formulieren kann ^^
    Und zwar erscheint bei Tablets rechts unten oft ein Symbol bei einigen Apps, wo man einstellen kann, ob die App gestreckt oder zentriert werden soll usw. weil nicht für Tablets optimiert ...
    Schaut so aus (rot markiert)
    [Blockierte Grafik: https://lh3.googleusercontent.com/-6pvJiWHEIZQ/UBaIlMIQ5MI/AAAAAAAABzc/RQv5tv7ieqI/s768/screen.jpg]


    Weiß jemand wie man sowas macht?


    Gruß,
    matze

    Hi,


    also ein Tutorial zum RelativeLayout gibts hier -> Relative Layout Tutorial
    Ich denke du verstehst das RelativeLayout ein bisschen anders, als es gedacht ist. Das RelativeLayout ermöglicht es dir ein Objekt A unterhalb/neben/oberhalb ... von Objekt B zu kleben, egal wo das Objekt B eigentlich ist. Wird im Tutorial gut beschrieben finde ich. Die Breiten und Höhen solltest du versuchen mit fill_parent, match_parent oder wrap_content in den Griff zu kriegen.



    Gruß,
    matze

    Hi Leute,


    hab meine App gerade mal auf einem Tablet ausprobiert und musste leider feststellen, dass die auf dem Kopf startet. Habe in meiner AndroidManifest die Zeile

    Code
    android:screenOrientation="portrait"


    stehen, mehr eigentlich nicht.
    Auf 4 Handys trat das bisher noch nie auf. Kann man da was tun? Das Tablet ist ein Arnova 9 G2, hat der Hersteller das Display falsch rum eingebaut oder wie muss ich mir das vorstellen .... kanns mir irgendwie nicht ganz erklären.


    Hatte jemand schonmal so ein Problem und/oder hat einen Rat für mich?


    Gruß,
    matze


    EDIT: scheint wohl tatsächlich am Tablet selbst zu liegen ... ziemlicher crap das teil ^^

    Hi,


    wenn du unter Einstellungen > Apps > Alle gehst, siehst du da deine App? Wenn ja, beende sie mal, lösche den cache, deinstalliere sie und spiele sie neu auf. Dann müsst die Verknüpfung wieder passen. Sowas hatte ich mal als ich mich mit den SDK Versions gespielt hab oder auch als ich ein paar Packages umbenannt hatte ....


    Gruß,
    matze

    Hi,


    hab ich selber noch nicht gemacht, also kann ich dir da leider nicht weiter helfen, sorry. Kurzes googeln führt auch zur ExpandableListView, aber wie genau und wie schön das funktioniert weiß ich nicht. Wäre cool wenn du uns deine Erfahrungen damit noch mitteilen könntest, wenn es fertig ist :)


    Gruß,
    matze