Beiträge von nono124

    Hallo


    Die Id die du versuchst aus dem Cursor zu holen versuchst ist falsch. Ist nicht die Id des Datensatzes sondern positition der Spalte an der der Wert im Datensatz ist . Müsste bei dir 2 sein.


    Die ID des Datensatzes sollte bei deiner Tabelle der dritte Wert sein.



    id = cursor.getLong(2);
    id = cursor.getLong(cursor.getColumIndex(„_id“);


    Für die ID würde ich PRIMARY KEY AUTOINCREMENT benutze damit sie nicht doppelt vorkommt.



    Bei deiner Abfrage RawQuery bin ich mir nicht sicher ob du da auch an den richtigen gewünschten DatenSatz kommst. Sehe da überhaupt keine Frage Where Klausel. Also irgendetwas wonach du fragst. Somit bekommst du die gesamten Tabelle in den Cursor zurück.

    Hallo in etwa so .


    @Override
    public void onBackPressed() {
    super.onBackPressed();
    Intent intent = new Intent(this, splash_Activity.class);
    startActivity(intent);
    finish();
    }



    Oder du lässt in der ersten Activity das Finish weg, so kommst du beim Zurück Button zu der aufrufenden Activity.

    Hallo
    Zu deiner ersten Frage.
    Dazu solltest du dich mal mit dem Thema Datenbanken auseinandersetzen.
    Hier stellt sich erstmal die Frage ob du die Daten local oder sogar online Speichen willst.
    Für den Anfang würde ich sagen versuche es erst mal lokal mit der Sqlite DB die in Android verfügbar ist.


    Zu Frage zwei. Was willst du da?


    Sollen die gesammelten Daten, aus der DB in einer eigen Kalender ähnlichen Übersicht angezeigt werden?


    Oder wist du das irgendwie in dem Android oder sogar in den Google Kalender anzeigen.


    Bei dem Android Kalender solltest du dich mit dem Thema Content Provider beschäftigen. Denn nur über den Android Kalender Provider kannst du darauf zugreifen.


    Beim Google Kalender solltest du dir die Google API ansehen.

    Hallo ich würde das mal mit FCM probieren. Der Server könnte mit Hilfe von Google FCM eine Nachricht an die Handys schicken. Und darüber könntest du deine App starten. Dazu brauchst du keinen Service der ständig läuft. Das empfangen der FCM wird vom System unterstützt. Läuft sozusagen ständig.


    Einen Service der ständig läuft und alle 5 Sekunden den Server abfragt ist meiner Meinung keine gute Sache.


    Einen Service der Background läuft. Dazu solltest du dir mal das Prinzip eines Vordergrund Services mit Notification ansehen. Ohne einer Notification an den User wird dir das System immer den Service Killen.
    Ab Android 8 wüsste ich keine andere Möglichkeit einen Service am Leben zu halten. Auch die üblichen heartbeet Methoden bringen nicht mehr viel.


    Die beste und vor allem Akku sparenste Lösung ist FCM.

    Hallo weniger die Route sollte offline geladen sein.
    Du musst dir die Karte in dem die Route liegt vorher offline in google maps geladen haben. Ist die Route zu groß passt also nicht in eine Karte musst du mehrere Karten runter laden.

    Gut im download Ordner interner Speicher geht das. Nur einen vollen Zugriff auf die sdkarte intern oder sogar auf die echte externe wirst du so nicht hinbekommen.


    Der Download Ordner gehör zu dem internen Speicher obwohl er auf der emulieren sd Karte ist.
    Das komplette Inhaltsverzeichnis der Karte wirst du so nicht lesen können.

    Hallo dann zeige uns oder mir doch mal. Wie du das machst. Ich glaube nicht das dies so klappt. Bitte zeige wo und wie du das ausliest was in der Datei steh.
    Auch wie du es testet zb den toast.


    Lehesen der Textdatei könnte gehen. schreiben ohne SAF unter sdk 28 bestimmt nicht. Habe ich nicht geschaft.. Auch das Erstellen mit mkdir ging mit 28 bei mir nicht mehr. Der boolien den mkdir zurück gibt war immer false.




    Mit sdk 29 habe ich es noch nicht getestete.


    Deshalb würde ich gene den Code sehen.



    Interessant wäre hier auch welche compile und target sdk du im gradle benutzt.
    Sollte die auf 26 stehen glaube ich dir das es geht sonst nicht.

    Wo ist denn hier dein toast?


    Im ersten Code zeigt der toast nur den dadei namen den du selber gesetzt hast. Mehr nicht.


    Und wie ich dir sagte geht es mit den einfachen Java Datei Methoden nicht mehr.


    Was steht denn in der Variablen Inhalt.


    Wo ist da ein toast der das. Anzeigt.

    hallo du sagst du hasst alle permision im Manifest da reicht nicht mehr.


    Erstmal eine frage und der welcher sdk Version testest und schreibst du?
    An 28 funktioniert es nicht mehr mit den normalen File befehlen.



    Du sagst die Datei existiert wie kommst du darauf? Wie hast du die erstellt?
    Ein prüfen ob die Datei existiert ist nicht in deinem Code.


    Auch ist das bestimmt nicht der richtige path zur sd Karte.

    OK
    Dann versuche doch mal auch die Methode der Superklasse aufzurufen die du überschrieben hast.
    Oder gebe doch mal false zurück damit der original listner aufgerufen wird.



    https://developers.google.com/…Map.OnMarkerClickListener

    • true if the listener has consumed the event (i.e., the default behavior should not occur); false otherwise (i.e., the default behavior should occur). The default behavior is for the camera to move to the marker and an info window to appear.

    Wann Google das geändert hat das bei einem neuen Projekt automatisch das androidx benutzt wird kann ich nicht sagen. Ist schon länger so.


    Mich hatte erstmal interessiert was du nutzt support lib oder Androidx.


    Offt wird beides genutzt was zu solchen Problemen führen kann.
    Das ist bei dir scheinbar nicht der Fall.


    Interessant wäre auch die
    compileSdkVersion
    targetsdkversion
    minsdkverion
    gewesen.


    Weil auch bei sehr niedrigen minsdk solche Probleme auftreten.


    Wenn es sich mit so nicht beheben lässt. Ist meistens das komplette Projekt gestört. Oder auch irgend eine andere Layout Dadei.
    Da hilft meistens nur neu machen.


    In deinem Fall würde ich aber sagen das es an deiner Layout Struktur gliegt.
    Bestimmt etwas wirrwar bei deinen includes.


    Um da eine sinnvolle Aussage machen zu können. Wären die übergeordneten Layouts auch sinnvoll gewesen. Also das Layout wo der include ist.



    OK alles gut. Und gutes gelingen.

    Hallo ich arbeite eigentlich nicht mit der MapBox.
    Kann da auch nicht viel sagen.
    Für mich sieht es aber so aus als ob du den KlickListner auf die MapBox setzt und nicht auf den Marker.
    mapboxMap.setOnMarkerClickListener(….
    Das müsste eigentlich nach meinem Verständnis der Merker sein. Und nicht die ganze Box.
    Nur hast du für dem Merker gar keine Variable erstellt. Um dann den Listner zu setzen.

    Also dein Gradle File wäre schon wichtig gewesen.


    Um zu sehen wie dein Projekt aufgebaut ist, um zu sehen mit welchen libs du arbeitest .


    Es macht schon eine unterschied ob du mit den alten Support libs oder mit den neuen Abdroidx arbeitest.


    Richtig bei beiden brauchst du eigentlich nur zwei Anfasser für eine View.


    Wie du siehst geht es bei deinen alten Beispiel nicht.


    Da benutzt du noch Support Libszu mindestens im Layout. Ob du das auch im Projekt richtig machst wissen wir nicht. ob du da auch die richtigen Libs lädst. Denn da gibst es Abhängigkeiten.


    Was bei Androidx nicht mehr so zwingend ist.


    Wahrscheinlich hast du das Projekt angefangen als es noch nicht üblich war mit Androidx zu arbeiten.


    Deshalb die Frage nach dem Gradle File. Gradle Version …



    Zitat

    Es muss also etwas sein, was ich mache, aber üblicherweise so nicht gemacht wird.
    Und da denke ich an meine vielen Displays.

    Ich denke da an eine fehlende oder falsche Support Lib.
    Deshalb Gradle File



    Zitat

    Ich beantworte sinnlose Fragen grundsätzlich nicht.

    Ok wenn du nicht willst bitte sehr deine Sache.


    Zitat

    Und dabei ist mir eben aufgefallen, das ein und dieselbe Studio-Version zwei verschiedene Arten von Constraint-Layouts erzeugt.
    Einmal mit Android: und mit AndroidX:

    Das ist bei allen so. Ab irgendeiner AS Version ist das Standard und bei einen neuen Projekt wird das standardmäßig von AS so gemacht. Mit vielen oder wenig Views hat das nichts zu tun.
    Soviel zu sinnlosen Aussagen.


    Zitat

    Also bin nicht ich es, der jetzt plötzlich mit AndroidX arbeitet, sondern das Studio macht das gezwungenermaßen so.

    Sagte ich bereits neuer Standart.




    Zitat

    Ich weiss noch nicht mal, worum es da eigentlich geht.

    dann wird es wohl zeit sich mit den Support Libarys und dem Androidx zu beschäftigen.
    https://developer.android.com/…libraries/support-library
    https://developer.android.com/jetpack/androidx


    dies werden wohl meine letzten sinnlosen antworten hierzu gewesen sein.
    wünsche dir viel Glück.