Beiträge von matthias

    Hoi,


    ich weiß jetzt nicht, ob man dafür das Handy rooten muss, aber es gibt da eine Variante eine Stock ROM neu auf zu spielen:


    1. Handy an PC anstecken und im FASTBOOT-Modus starten
    2. Am PC HTC Sync installieren (für irgendwelche Treiber)
    3. Am PC mit folgenden Befehlen die Versionen auslesen, die man braucht:

    Code
    fastboot getvar version-main


    und

    Code
    fastboot oem readcid


    4. Sich auf die Suche nach einem RUU (Rom Update Utility) begeben, das zu der Version passt, die man hat.
    5. Dein Bootloader ist bereits locked, da musst nichts mehr tun
    6. RUU.exe doppelklicken (falls du Windows hast)


    Falls man das Handy dazu rooten muss, greift wohl die Anleitung, die Kogoro gepostet hat ^^



    Um eine ROM direkt vom Handy aus von der SD-Karte heraus zu entpacken braucht man wohl Clockworkmod recovery .... sorry



    Gruß,
    matze


    PS: Was der Typ von dem Smartphone Reparatur Laden gesagt hat ... anhand seiner Aussagen würde ich dem mein Handy nicht zur Reparatur überlassen. Ich wär vermutlich laut lachend geflüchtet.

    Hoi,


    so ganz spontan fällt mir das Arnova 9G2 ein, das hier liegt. Gäbe es Finless Bob nicht, wär da kein Play Store drauf ... es gibt durchaus ein paar Exoten, die kein supported Device sind. Find leider keine Tabelle mit aufgelisteten unsupported Devices, nur supported Devices gibt es hier


    Bin aber auch eigentlich erst über den Emulator drauf gekommen, da dort auch kein Play Store installiert ist ... Habe mir dort allerdings com.google.android.gms.apk und com.android.vending.apk gezogen und via adb -e install ... drauf gezogen.


    Was mir gerade auffällt ist, dass offenbar hauptsächlich Tablets gern mal unsupported sind .... hmm. Irgendwie doof, dass selbst in dem Punkt nichts einheitliches herrscht. Wieso bringen Hersteller Geräte für eine Plattform raus, die aber überhaupt nicht unterstütz werden ... sind da Lizenzkosten zu beachten, die so hoch sind, dass Billigheimer wie Arnova sich das nicht leisten wollen?



    Gruß,
    matze

    Hoi,


    hab da noch ne kleine Frage dazu:


    Mit der v2 benutzt man ja die Google Play Services, sind die nicht da, startet man ein entsprechendes Intent, das den Play Store bewegt sie nach zu installieren. Nun, es gibt Geräte, die keinen Play Store haben. Kann ich das ab fangen oder wie handle ich sowas? Haben die pech gehabt?



    Gruß,
    matze

    Hoi,


    hab bisher nur mit 2 Geräten Erfahrung, was ROMs aufspielen an geht, allerdings will ichs trotzdem mal versuchen.


    Du kommst ja in den Recovery Mode, was hast du dort schon alles versucht? Normal müsste man "Whipe User Data" wählen können. Das bewirkt, dass er alle deine Apps und Daten löscht und quasi den Werkszustand herstellt. Wenn er dann wieder hoch kommt, hat er sich an irgendeiner App verschluckt.


    Wenn er sich trotz Whipe nicht fängt, müsste es eigentlich auch einen Punkt geben, wo man ein .zip File lädt. Hier müssten die stock ROMs sein, also die originalen. Da mal das richtige raus suchen, jetzt weiß ich nicht auswendig ob der das auch über USB ziehen kann oder du ne SD-Karte hast wo du die dann rein wirfst. Laden und drüber bügeln.


    Viel Glück ;)



    Gruß,
    matze

    Hoi,


    kein Problem, ich helf gern.


    Ich muss immer wieder selbst feststellen wie nervig es ist, Android-Apps ausreichend umfassend zu testen.
    Meistens scheitert es an genügend unterschiedlichen, physikalisch vorhandenen Geräten ^^ Da ist man froh, wenn man etwas LogCat Output von anderen Geräten in die Finger bekommt ;)



    Gruß,
    matze

    Hoi,


    hab ein Samsung Galaxy Nexus mit 4.2.2. Ich versuch grad das noch mal nach zu stellen ... klappt nicht immer. Wenn ich in der ersten Liste "Aktuelle Kritiken" bin, fahr ich ganz runter und sofort wieder ganz rauf, dann bleibt er manchmal kleben. Vll. versuch ich zuhause mal ein Video zu machen ...


    Wegen der ruckelnden Liste, das passiert evtl. deshalb, weil gelegentlich eine Exception fliegt beim scrollen:



    Gruß,
    matze


    EDIT:
    evtl ist er auch überfordert, da beim Scrollen doch recht viel LogCat Output raus geschrieben wird:

    Hoi,


    warum Apps auf einer Plattform gut ankommen, auf der anderen nicht, ist oft nicht so ganz ersichtlich. Was mir persönlich sofort aufgefallen ist, ist dass die Liste gleich zu Anfang ziemlich stockt. Auch wenn ich jetzt ein wenig nach unten scrolle und "mit schwung" wieder hoch, bleibt die Liste etwas seltsam hängen ...
    Screenshot:
    [Blockierte Grafik: https://dl.dropboxusercontent.com/u/88052678/2013-06-18%2013.14.43.png]
    Soll das so sein?


    Zum Anderen ist natürlich der Schreibstil recht gewöhnungsbedürftig. Wer das so mag, der findet die App natürlich geil, ich persönlich kann nicht viel damit anfangen. Eigentlich hats mir schon gereicht als ich den 3. Satz gelesen habe, dem irgendwie ein paar Satzglieder fehlten ...


    Aber so an sich, Liste mit den Bildern, Aufteilung etc. ist schon ganz ansehnlich. Mit dem Background-Image, das macht durchaus einen coolen Eindruck ;)



    Gruß,
    matze

    Hmm, danke für deine Meinung. Da denken wir wohl recht ähnlich. Ich finds nur zunehmend lästig darauf zu achten, da alle meine neueren Projekte deshalb tiefer gehenden Optimierungsaufwand erfordern. Bestes Beispiel ImageViews und der zu kleine VM-Heap bei früheren Versionen ...

    Hab noch ne kleine Frage:


    Die Klassen MapFragment, Fragment und FragmentManager sind ja erst ab SDK Version 11 verfügbar, im android-support-v4.jar sind jedoch entsprechende Support-Packages vorhanden.


    Ist es jetzt eigentlich sonderlich sinnvoll, das Support-Package einzubinden um somit das minSDK um 1-2 Nummern nach unten drücken zu können? Bringt das Performance-Nachteile? Verringerter Funktionsumfang?


    Was ist da eigentlich Best Practice, ich mein als Entwickler selbst will man, dass möglichst viele User die App verwenden können. Auf der anderen Seite updaten User vll mal eher (falls möglich), wenn sie merken, dass quasi keine App mehr Unterstützung für ihre niedrige Version bietet. Das hat dann wieder den Vorteil, dass ich nicht den Umweg code sondern den direkten Weg gehen kann ...



    Gruß,
    matze

    Hmm,


    also ich geh mal alles Schritt für Schritt nochmal durch:


    1. Eclipse Rechtsklick Import > Existing Android Code Into Workspace
    2. <android.sdk.path>/extras/google/google_play_services/libproject > Öffnen > Finish
    3. Neues Android Projekt erzeugen
    3. Rechtsklick drauf > Properties > Android > Library Add ... > google-play-services_lib
    4. Manifest ergänzen


    5. SHA1 holen

    Code
    cd && keytool -list -v -alias androiddebugkey -keystore .android/debug.keystore -storepass android -keypass android


    6. https://code.google.com/apis/console an browsen > Services > Google Maps Android API v2 auf ON
    7. API Access > Create new Android Key > SHA1;my.package.name
    8. API Key kopieren und ins AndroidManifest eintragen (innerhalb von <application></application>

    HTML
    <meta-data
                android:name="com.google.android.maps.v2.API_KEY"
                android:value="my_api_key" />


    9. fragment meinem Layout hinzufügen

    HTML
    <fragment
            android:id="@+id/map"
            android:name="com.google.android.gms.maps.MapFragment"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_alignParentBottom="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentRight="true"
            android:layout_below="@+id/hello_world" />


    10. MainActivity anpassen


    11. LogCat Output
    Füge ich später hinzu, der knecht erkennt grad kein Handy mehr -.- adb kill-server && adb start-server hilft nix ... super *seufz*



    Gruß,
    matze


    EDIT:
    Ohman, jetzt gehts ... was zur Hölle


    (PS: die letzten 2 Edits wegen den switch-cases ... die waren echt unnötig)

    Hoi Lucas,


    die Permission hätt ich eigentlich schon eingefügt. Testen wollt ich das ganze auf meinem Galaxy Nexus ... vll. ist auch mein grundlegender Aufbau noch falsch.


    Ich glaub der Post hier war etwas zu voreilig ... ich fummel da noch bissl rum und meld mich dann nochmal ;)


    Gruß,
    matze

    Hoi,


    ich les mich grad bissl in Google Maps ein. Hab das google-play-services Library-Projekt importiert, meinem Layout ein Fragment für die Google Maps Ansicht hinzugefügt, ein keystroke file erzeugt und mir einen API Key erzeugt, den ich dem AndroidManifest hinzugefügt habe.


    Weiß jemand, wie ich in Eclipse mein Projekt via Run/Debug > Android Application bequem starten kann und mein keystroke file mit eingebunden wird, damit Google Maps dann nicht behauptet

    Zitat

    06-17 10:37:32.543: E/Google Maps Android API(17896): Failed to load map. Error contacting Google servers. This is probably an authentication issue (but could be due to network errors).


    Hab das jetzt so interpretiert, dass er beim generieren des .apk Files mein keystroke-file nicht mit nimmt und deshalb die Authentifizierung nicht passt. Bin ich da auf dem Holzweg oder liegt das schon daran? Hat jemand einen Tipp bzw. wie debuggt ihr bequem eure Apps?



    Gruß,
    matze


    EDIT:
    Glaub hab noch wo anders nen Wurm drin, ignoriert das hier mal bitte ^^

    Hoi,


    Hab "Nie, ich nehm' die Musik quasi nicht wahr." gewählt. Die allererste Handlung nach der Installation eines Spiels ist es, den Sound zu deaktivieren. Wenn ich die Musik an lasse werde ich so aggressiv, dass ich die App recht schnell vom Handy verbanne ^^


    Gruß,
    matze

    Hoi,


    was liefert dir denn dein file.delete? Vll. hat das delete nicht geklappt, überschreiben auch nicht, also nimmt er das Alte ...
    Das out.close() gehört eigentlich in ein finally. Da wo es jetzt steht macht es keinen Sinn. Vll. Kann er nicht löschen oder überschreiben, weil was schief geht und der OutputStream noch offen ist ...


    hast du eigentlich den DrawingCache aktiviert? In der API steht tut man das nicht, erzeugt er den Cache beim Aufruf von getDrawingCache erst ... vielleicht ist er dann beim 2. mal invalid und du musst mit einem buildDrawingCache(true) erzwingen, dass er ihn neu aufbaut.


    Zitat


    If you call buildDrawingCache() manually without calling setDrawingCacheEnabled(true), you should cleanup the cache by calling destroyDrawingCache() afterwards.


    Vielleicht trifft da bei dir eine etwas seltsame Kombination zusammen ^^



    Gruß,
    matze

    Hoi,


    da ich in meinem aktuellen Projekt nur eine einzige Activity verwende, bin ich etwas eingerostet, was das an geht. Trotzdem will ichs mal probieren ;)


    Also so wie ich das verstehe rufst du eine Activity auf und erwartest einen Return-Value o.ä. was so aber nicht gedacht ist. Du rufst eine Activity auf, diese wird geöffnet dann ist die aufrufende Activity geschlossen. Vielleicht wird sie noch im RAM gehalten aber sobald der knapp wird wird sie gnadenlos ab geschossen. Also eigentlich musst du deine Activity B aufrufen, die auf seine Button-Clicks reagiert. Je nachdem ruft diese dann mit einem neuen Intent wieder Activity A auf und gibt Daten mit wie booleans, mithilfe dieser du dann deine Activity A handeln kannst.


    Also ich würde die jeweiligen Activitys ganz normal mit sowas hier aufrufen


    Java
    Intent i = new Intent(this, MyActivityB.class);
    i.putExtra("iComeFromA", true);
    startActivity(i);


    und in den jeweiligen onCreate Methoden dann je nachdem was wie wo gesetzt ist aktionen ausführen

    Java
    Bundle extras = getIntent().getExtras(); 
    
    
    if (extras != null && extras. getBooleanExtra("iComeFromA", false)) {
    // do something
    }


    Ich hoff, das hilft dir irgendwie weiter ;)



    Gruß,
    matze

    Hoi,


    eine recht minimalistische App, tut jedoch auch das, was sie soll ;) Diktier-Funktion hab ich nicht getestet aber so an sich scheinen auch keine Fehler enthalten zu sein, läuft stabil.
    Weiß nich genau was du vor hast, so wie die App aus sieht, ist sie entweder nur so zur Übung gebaut oder noch nicht ganz fertig. Kein App Icon, Impressum, Hilfe ...


    Für was genau ist die Berechtigung "Voller Netzwerkzugriff"? Schaut so aus, als würde die nicht benötigt werden.



    Gruß,
    matze

    Hoi,


    schön, dass es jetzt funktioniert ;)
    Mir fällt ehrlich gesagt grad nichts ein, wie man es anders machen könnte ... irgendwie kams mir seltsam vor aber vermutlich hätt ichs auch so gemacht ^^



    Gruß,
    matze