Beiträge von Ben

    Ich sprach ja von den Rechenvorgängen im hintergrund. Das ist ein spezieller Fall der genau für dein Use-Case angepasst ist. Aber nicht viele Leute wollen genau diese Berechnungen und die Ergebnisse die du von einer Zeitmanagementapp verlangst. Ich meinte mit dein Fall ist speziell nicht, dass das Gleitzeitmodell speziell ist, sondern das was du von der App verlangst. Ich arbeite auch nach diesem Modell.


    Ich verstehe schon was du machen möchtest, aber z.b. Pause errechnen ist auch wieder nicht gut. Was ist denn mit den leuten die mal länger und mal kürzer pause machen. Theoretisch bräuchtest du für dein Gedankenmodell eine App, bei der du dynamisch Startzeit, Pausenzeit, Endzeit editieren kannst und alle anderen Werte werden dementsprechend berechnet.


    Beispiel:
    Du fängst 7:00 Uhr an und denkst dir so "ich mach heute nur 30min pause und möchte 8h arbeiten". Die App berechnet dir dann deine Endzeit. In deiner Pause fällt dir aber ein, dass du noch ein Paket von der Post holen musst und so weitet sich deine Pause auf 1,5h aus. Dann editierst du deine Pausenzeit und die Endzeit wird berechnet.


    Aber du könntest am Anfang auch sagen "ich darf heute nicht länger als bis 15:30 arbeiten" und die App berechnet dir dann, dass du nur 30min Pause machen darfst.


    Es kann auch der Fall eintreten dass du keine Pause machst, oder Überstunden absetzt und nur 6h arbeitest. Daher bedarf es an dieser Stelle einem sehr dynamischen System. Ich mag aber immernoch nicht glauben das es sowas noch nicht gibt in der Android Welt. Im Playstore gibt es einfach so viele Apps, da muss doch was brauchbares dabei sein :P

    wie umständlich?! Trag doch einfach beginn und ende der arbeitszeit ein + länge der pause und lass dir deine wöchentliche arbeitszeit anzeigen, dann weißt du doch sofort wieviel du die woche länger gearbeitet hast. Was du konkret möchtest, ist ein sehr spezieller spezialfall der eine spezielle app erfordert. Ich glaube nicht das der Threadersteller darauf aus war eine solche app zu programmieren :P

    Ich muss Marco da widersprechen, solang die Minifizierung nicht aktiviert ist, wird nicht nur das gepackt was gebraucht wird, sondern die komplette Dependency. Zuminidest ist mir keine Quelle bekannt, die das Gegenteil schreibt. Du kannst ja einfach mal testen ob Das Bauen mit Proguard nun funktioniert oder nicht.

    Hier kann man seine Projekte vorstellen, aber das ist nicht wirklich als werbung gedacht. Da das eine Entwicklercommunity ist, wäre eine entwicklungslastige Vorstellung sehr toll :)

    Sieht aber unspannend und auch viel zu kompliziert aus. Je mehr man eintippen/auswählen muss, desto mehr Fehler können passieren. Bei einer Arbeitszeiterfassung soll genau das aber vermieden werden. Vor Allem kann es eigentlich nicht Sinn der Sache sein, dass man 5 Minuten Arbeitszeit für die Erfassung aufwendet. ^^

    Also start, endzeit und pause eintragen erachte ich nun nicht gerade als "zuviel eintippen". Das muss man halt auch irgendwie eingeben, sonst würde das tool ja keine daten bekommen. Kompliziert sieht es mMn auch nicht aus. Die Zeiteingabe ist genauso wie wenn man seinen Wecker stellt, das sollte jeder hinbekommen.

    Das stimmt so nicht. Da die Containerklasse von einem Layout erbt, kannst du dem Layout mit "this.addView" auch weitere Views hinzufügen. Was ich jetzt spontan beim überfliegen des codes sehe, das keine parameter zu der containerklasse angegeben werden, bevor sie zum mainlayout hinzugefügt wird. Vielleicht musst du einfach noch die width und height für deinen container angeben.

    Also im Prinzip hast du zwei Problemchen.
    1. Du verwendest die allgemeine Lib für die PlayServices. Da ist natürlich alles drin von Fitnnesskram über Maps, bis hin zur Cloud. Du solltest die spezielle PlayServices Lib raussuchen die du benötigst und diese verwenden statt dem monsterpack wo alles drin ist.


    2. Anschließend kannst du dein APK minifizieren. Das erledigt ProGuard. Das ist ein Tool zur Nachbearbeitung von Android Projekten und ist im Buildsystem schon enthalten.


    Auf der Seite ist das nochmal ausführlich beschrieben: https://developer.android.com/studio/build/shrink-code.html
    Die minifizierung wird mit diesem Befehl im Gradlefile aktiviert:

    Code
    android {
        buildTypes {
            release {
                minifyEnabled true
                proguardFiles getDefaultProguardFile(‘proguard-android.txt'),
                        'proguard-rules.pro'
            }
        }
    }

    In android gibt es sharedpreferences die du für sowas auch verwenden kannst, oder die SQLite Datenbank die jeder App beiwohnt. Soll es jedoch explizit eine textdatei sein, musst du unterscheiden wo du diese schreibst. Wenn du sie auf die SD-Karte schreibst, dann brauchst du die Permission die du gesetzt hast. Zum lesen einer externen Datei benötigst du die Permission READ_EXTERNAL_STORAGE']READ_EXTERNAL_STORAGE.


    Zunächst würde ich erstmal ein Java-File anlegen, also:

    Java
    File file = new File("samplefile.txt");



    Anschließend prüfen ob es bereits existiert, wenn nicht muss es erstellt werden:

    Java
    if (!file.exists()) {
        try {
            file.createNewFile();
        } catch (IOException e) {
             e.printStackTrace();
        }
    }


    Wenn das erledigt ist, kannst du der Datei Inhalt hinzufügen:

    Java
    try {
        String text = new String("Hello Android");
        BufferedWriter buf = new BufferedWriter(new FileWriter(file, true)); 
        buf.append(text);
        buf.newLine();
        buf.close();
    } catch (IOException e) {
          e.printStackTrace();
    }


    Einfach mit einem BufferedWriter appenden ist auch performancetechnisch etwas besser. :)

    Hallo und Willkommen bei uns!


    gibt es tiefere Gründe warum der Fokus gerade auf das Thema Android gefallen ist, oder einfach nur aus Spaß :)?

    Willkommen bei uns und schön das es auch mal Frauen zu uns verschlägt :)!
    das ist leider relativ selten, allgemein in der Software-Branche.

    Kommt drauf an welches Menü du meinst. Definierst du als Menü eine MainActivity von der aus du zu X anderen Activites kommst, oder definierst du Menü als diese drei punkte in einer Action/Toolbar wo man menuitems hinzufügen kann?


    Wobei, die antwort wird wohl die selbe sein. Wenn du eine Activity verlassen möchtest, klickst du einfach auf den zurückbutton.

    leider habe ich keine zeit im moment um den aufbau nachzubauen und selbst mal zu testen. Das klingt aber aufjedenfall nach einem problem in android selbst. Was passiert denn wenn du die mobilen Datenverbindung deaktiviert hast und WLAN an hast in dem einen Szenario was nicht funktioniert?

    du startest ja immerwieder eine neue activity wenn du auf einen button klickst, ohne die gerade vorhandene zu löschen. Da ist es kein wunder dass sich da der stack füllt. Wenn du von deiner zweiten activity zurück zur main möchtest, musst du nur auf den back button klicken. von dort aus kannst du dann erneut eine second activity aufrufen.