Beiträge von nono124

    Ohne Entwickler Optionen frei geben und erlauben Install von unbekannten Quellen wird es nicht gehen.


    Support Libs würde ich auch nicht meht benutzen.


    Code
    sourceCompatibility JavaVersion.VERSION_11        targetCompatibility JavaVersion.VERSION_11

    muss das sein?



    compileOptions { sourceCompatibility JavaVersion.VERSION_1_8


    targetCompatibility JavaVersion.VERSION_1_8


    }

    reicht sicher auch.

    Hallo

    Interessant wäre welches Handy und Android Version (API) es ist.


    Du sagst Permission-Fehler hast du die überhaupt vom User zur Laufzeit geholt und hart der User da auch zugestimmt.


    Bedenke hierbei auch das bei neueren API-Versionen, bei einen ablehnen der Permission vom User, das System nicht erneut nachfragt, auch wenn du das in Code machst.

    Auch ab API 29 sollte es mit TelephonyManager und getImei( int sloiIndex) gehen . Permission vorausgesetzt

    getIDeviceId ist seit API 29 deprecated



    PS. was meinst du mit PIN-System?

    Zitat

    ps, die Permissien zur laufzeit stört mich nicht, is ja nur einmal ein klick.…


    Keiner hat gesagt ob es dich stört. Ich habe nur erwähnt das man es ab Api 23 benutzen muss also den Code dazu benutzen schreiben muss. Egal ob es dir oder den User gefällt . Google will es eben so. das war alles.



    Zitat

    nochwas, was ist dieses "SAF", ich sollte mir ja auch mal ein neues händy kaufen,


    Storage Access Framework (SAF)

    Open files using the Storage Access Framework  |  Android Developers


    Du kannst für Bilder auch den MediaProvider / MediaStore benutzen.

    MediaProvider-Modul  |  Android Open Source Project



    Zitat

    ich hab ne app root-explorer geladen und der zeigt für den pfad: "6631-3661" an.


    Wenn du denn Code aus post #8 Benutzen würdest hättest du auch den richtigen Path bekommen. Und zwar die ID der SD-Karte. Dies macht Google schon seit Android MM API 23 so.



    aber egal. so geht es..


    Dazu würde mich mal interessieren wie du auf die Datei zugreift mit deiner URI die du erstellt hast.

    Zeige das mal.

    Android 8.1 also API 27


    Und ab Api 23 benötigst du Permissien vom user zur Laufzeit bestätigt.


    Zweitens ab API 26 echte SD karte Zugriff nur noch mit SAF möglich.


    Scoped Storage


    Ps das Thema hatte wir doch vor 4 Jahren schon mal.



    Du willst von der echten Physikalischen SD-Karte lesen hast du überhaupt die Permission dazu ?



    PS: nur bis API 22

    emulated/0

    ist ja auch auf neueren Geräten richtig. Für die internen fest verbaute Sdkarte.

    Nochmal welche Android Version und welcher speicher Bereich?


    Um es auf einem alten 5.0 Tab zu testen muss ich erst den Akku laden.

    Hallo interessant wäre auch welche Android Version auf dem Tab ist.


    Path zur Camera etwa so


    Code
    String sdPath = Environment.getExternalStorageDirectory().getAbsolutePath();
    
    Uri uri = Uri.parse(sdPath + "/DCIM/Camera/...");

    Es macht keinen sinn wenn du beim Test von checkSelfPermission in den Else Zweig kommst, dort auf die Datei zugreifen zu wollen denn du hast sie ja noch nicht.

    Das erfährst du ja erst in der onRequestPermissionsResult.


    beachte auch dies.

    Request runtime permissions  |  Android Developers


    At the same time, your app should respect the user's decision to deny a permission. Starting in Android 11 (API level 30), if the user taps Deny for a specific permission more than once during your app's lifetime of installation on a device, the user doesn't see the system permissions dialog if your app requests that permission again. The user's action implies "don't ask again." On previous versions, users saw the system permissions dialog each time your app requested a permission, unless they had previously selected a "don't ask again" checkbox or option.

    If a user denies a permission request more than once, this is considered a permanant denial. It's very important to only prompt users for permissions when they need access to a specific feature, otherwise you might inadvertently lose the ability to re-request permissions.

    In certain situations, the permission might be denied automatically, without the user taking any action. (A permission might be granted automatically as well.) It's important to not assume anything about automatic behavior. Each time your app needs to access functionality that requires a permission, check that your app is still granted that permission.

    To provide the best user experience when asking for app permissions, also see App permissions best practices.

    Sorry das ist ja Adroino C/++ da wie in Java Stringvergleich mit "equels" nicht "=="

    hatte es nicht getestet nur im Editor geschrieben.


    du solltest nicht einfach auf den Mensch vertrauen das er die Button richtig bedient.

    Vor dem setzen des Ausgangs zb Hoch (otput2) solltest du prüfen das der Ausgang runter (output3) nicht aktiv ist also Low .


    Eine gegenseitige Verrieglung der Ausgänge.


    Dies kannst du natürlich auf der Webseite im HTML Code auch machen.

    Hallo hier mal ein einfaches Beispiel für einen Web Sever auf dem ESP 32.

    So wie du mittels einer HTML-Seite auf die GPIO der ESP zugreifen kannst.


    Ich hoffe du kannst ein wenig HTLM und auch C/ C++ um den Code zu verstehen.


    ESP32 Web Server - Arduino IDE | Random Nerd Tutorials
    In this project you’ll create a standalone web server with an ESP32 that can toggle two LEDs using the Arduino IDE programming environment.
    randomnerdtutorials.com

    WLAN mit ESP8266 und ESP32 • Wolles Elektronikkiste
    Ich zeige Schritt für Schritt, wie ihr eure ESP32 oder ESP8266 Boards per WLAN vernetzt, steuert und Daten zwischen ihnen austauscht.
    wolles-elektronikkiste.de

    Dann überlege doch mal was beim Drehen des Handys passiert. Die Activity oder auch das Fragment wird neu gestartet .

    Die onCreatd wird wieder aufgerufen und auch das Layout wird neu geladen.

    Auch wenn deine Views die gleiche ID haben sind es nach den drehen wider andere Instanzen.

    Auch Instanzvariablen werden zerstört. Somit auch deine „taskPicture“


    Nicht umsonst wird der onCreate das savedInstanceState mit gegeben.

    Schaue dir an wie du das für dich nutzen kannst.


    How to Implement OnSavedInstanceState in Android? - GeeksforGeeks
    A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and…
    www.geeksforgeeks.org




    Code

    How to Implement OnSavedInstanceState in Android? - GeeksforGeeks
    A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and…
    www.geeksforgeeks.org