Announcement

Collapse
No announcement yet.

ImageView

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • ImageView

    Hallo

    ich habe ein kleines Programm, welches auf die Kamera zugreift, und dann das Bild in einem ImageView anzeigen soll.
    Bis zur Kamera und Bild aufnehmen klappt das auch mitterweile.

    Aber ich bekomme das Bild nicht in das ImageView (also gar kein Bild auch kein Defaultbild was ich dem ImageView vorher zuweise).

    Ich programmiere im Android Studio 4.0 vom 20.Mai.

    Ich würde euch mal den Code mit hier rein packen..

    wäre toll wenn mir einer erklären könnte was ich falsch mache.

    Thx Kaladial

    MainActivity.java:
    Code:
    package com.example_kaladial82.sharedpref;  import androidx.annotation.Nullable; import androidx.appcompat.app.AppCompatActivity; import androidx.core.app.ActivityCompat; import androidx.core.content.ContextCompat; import androidx.core.content.FileProvider;  import android.Manifest; import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.net.Uri; import android.os.Bundle; import android.content.SharedPreferences; import android.os.Environment; import android.provider.MediaStore; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.ImageView; import android.widget.Toast;  import java.io.File;  public class MainActivity extends AppCompatActivity {     String kfz = ""; Button btnKam; ImageView ivBild1; Intent bildIntent; Context context;  File dir = new File(Environment.getExternalStorageDirectory(), "Fotoapp"); File bild = new File(dir, "0.png"); Uri bilduri = FileProvider.getUriForFile(MainActivity.this, BuildConfig.APPLICATION_ID + ".provider", bild);     int Kameracode = 11; Bitmap bm1;     private EditText etKFZ1;     int i=0;  @Override protected void onCreate(Bundle savedInstanceState)     {         super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);  etKFZ1 = (EditText) findViewById(R.id.etKFZ); btnKam = (Button)  findViewById(R.id.btnCam); ivBild1 = (ImageView) findViewById(R.id.ivBild);  /*if(bild.exists())         {             bm1 = BitmapFactory.decodeFile(bild.getAbsolutePath());             ivBild1.setImageBitmap(bm1);         }*/  btnKam.setOnClickListener(new View.OnClickListener() {                                       @Override public void onClick(View view) {                                           try {                                               kfz = etKFZ1.getText().toString();  bildIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); bildIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); bildIntent.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION);  bildIntent.putExtra(MediaStore.EXTRA_OUTPUT, bilduri);  startActivityForResult(bildIntent, Kameracode); }catch(Exception ex) {                                               ex.printStackTrace(); Toast.makeText(getApplicationContext(), "Kamera unterstützt das nicht..." + ex.getMessage(), Toast.LENGTH_SHORT).show(); }                                       }                                   }         );  //SharedPreferences mySPR = getSharedPreferences("MySPFILE",0);         //etKFZ1.setText(mySPR.getString("myKey1", "AP-AA 582")); }      @Override protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data)     {         if(resultCode == RESULT_OK)         {             if(requestCode == Kameracode)             {                 if (ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED)                 {                     if (!ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.WRITE_EXTERNAL_STORAGE))                     {                         ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, 1234); }                 }                 else {                     dateierstellen(); }             }         }         else {             Toast.makeText(getApplicationContext(), "resultCode: "+resultCode  ,Toast.LENGTH_SHORT).show(); }          super.onActivityResult(requestCode, resultCode, data); }      @Override public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults)     {         super.onRequestPermissionsResult(requestCode, permissions, grantResults);         if (requestCode == 1234)         {             if (grantResults[0] == PackageManager.PERMISSION_GRANTED)             {                 Log.i("resultcode", "dateierstellen  " + requestCode); dateierstellen(); }             else {                 Toast.makeText(getApplicationContext(), "Permission Denied", Toast.LENGTH_SHORT).show(); }         }     }      private void dateierstellen()     {         Toast.makeText(getApplicationContext(), "Bild gespeichert unter: " + bild.getAbsolutePath()  ,Toast.LENGTH_SHORT).show();  bm1 = BitmapFactory.decodeFile(bild.getAbsolutePath()); ivBild1.setImageBitmap(bm1);  i++; bild = new File(dir, i + ".png"); Toast.makeText(getApplicationContext(), "Neues Bild: " + bild.getAbsolutePath()  ,Toast.LENGTH_SHORT).show(); }      @Override protected void onStop()     {         super.onStop(); SharedPreferences mySPR = getSharedPreferences("MySPFILE",0); SharedPreferences.Editor editor = mySPR.edit();  editor.putString ("myKey1", etKFZ1.getText().toString());  editor.commit(); } }
    main_activity.xml:
    Code:
    <?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity">      <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/constraintLayout" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" tools:layout_editor_absoluteX="-58dp" tools:layout_editor_absoluteY="219dp">          <TextView android:id="@+id/textView3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="TestApp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintHorizontal_bias="0.498" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintVertical_bias="0.035" />          <EditText android:id="@+id/etKFZ" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="92dp" android:layout_marginTop="136dp" android:layout_marginEnd="109dp" android:layout_marginBottom="24dp" android:ems="10" android:inputType="textPersonName" android:text="AP-AA 582" app:layout_constraintBottom_toTopOf="@+id/btnCam" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.5" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" />          <Button android:id="@+id/btnCam" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="161dp" android:layout_marginTop="24dp" android:layout_marginEnd="162dp" android:layout_marginBottom="478dp" android:text="Kamera" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.5" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/etKFZ" />          <ImageView android:id="@+id/ivBild" android:layout_width="229dp" android:layout_height="234dp" android:layout_marginBottom="192dp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.495" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="@+id/etKFZ" app:layout_constraintVertical_bias="1.0" tools:srcCompat="@tools:sample/backgrounds/scenic" />      </androidx.constraintlayout.widget.ConstraintLayout>  </androidx.constraintlayout.widget.ConstraintLayout>





    AndroidManifest.xml:


    <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example_kaladial82.sharedpref"> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <provider android:name="androidx.core.content.FileProvider" android:authorities="${applicationId}.provider" android:exported="false" android:grantUriPermissions="true"> <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/provider_paths"/> </provider> </application> </manifest>
    omg ist die formatierung hier grottig sorry

  • #2
    AndroidManifest.xml:

    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.example_kaladial82.sharedpref">
    
        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
        <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
    
        <application
            android:allowBackup="true"
            android:icon="@mipmap/ic_launcher"
            android:label="@string/app_name"
            android:roundIcon="@mipmap/ic_launcher_round"
            android:supportsRtl="true"
            android:theme="@style/AppTheme">
            <activity android:name=".MainActivity">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
    
            <provider
                android:name="androidx.core.content.FileProvider"
                android:authorities="${applicationId}.provider"
                android:exported="false"
                android:grantUriPermissions="true">
                <meta-data
                    android:name="android.support.FILE_PROVIDER_PATHS"
                    android:resource="@xml/provider_paths"/>
            </provider>
        </application>
    
    
    </manifest>

    Comment


    • #3
      MainActivity.java:

      Code:
      package com.example_kaladial82.sharedpref;
      
      import androidx.annotation.Nullable;
      import androidx.appcompat.app.AppCompatActivity;
      import androidx.core.app.ActivityCompat;
      import androidx.core.content.ContextCompat;
      import androidx.core.content.FileProvider;
      
      import android.Manifest;
      import android.content.Context;
      import android.content.Intent;
      import android.content.pm.PackageManager;
      import android.graphics.Bitmap;
      import android.graphics.BitmapFactory;
      import android.net.Uri;
      import android.os.Bundle;
      import android.content.SharedPreferences;
      import android.os.Environment;
      import android.provider.MediaStore;
      import android.util.Log;
      import android.view.View;
      import android.widget.Button;
      import android.widget.EditText;
      import android.widget.ImageView;
      import android.widget.Toast;
      
      import java.io.File;
      
      public class MainActivity extends AppCompatActivity
      {
          String kfz = "";
          Button btnKam;
          ImageView ivBild1;
          Intent bildIntent;
          Context context;
      
          File dir = new File(Environment.getExternalStorageDirectory(), "Fotoapp");
          File bild = new File(dir, "0.png");
          Uri bilduri = FileProvider.getUriForFile(MainActivity.this, BuildConfig.APPLICATION_ID + ".provider", bild);
          int Kameracode = 11;
          Bitmap bm1;
          private EditText etKFZ1;
          int i=0;
      
          @Override
          protected void onCreate(Bundle savedInstanceState)
          {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
      
              etKFZ1 = (EditText) findViewById(R.id.etKFZ);
              btnKam = (Button)  findViewById(R.id.btnCam);
              ivBild1 = (ImageView) findViewById(R.id.ivBild);
      
              /*if(bild.exists())
              {
                  bm1 = BitmapFactory.decodeFile(bild.getAbsolutePath());
                  ivBild1.setImageBitmap(bm1);
              }*/
      
              btnKam.setOnClickListener(new View.OnClickListener() {
                                            @Override
                                            public void onClick(View view) {
                                                try {
                                                    kfz = etKFZ1.getText().toString();
      
                                                    bildIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
                                                    bildIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
                                                    bildIntent.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
      
                                                    bildIntent.putExtra(MediaStore.EXTRA_OUTPUT, bilduri);
      
                                                    startActivityForResult(bildIntent, Kameracode);
                                                }catch(Exception ex) {
                                                    ex.printStackTrace();
                                                    Toast.makeText(getApplicationContext(), "Kamera unterstützt das nicht..." + ex.getMessage(), Toast.LENGTH_SHORT).show();
                                                }
                                            }
                                        }
              );
      
              //SharedPreferences mySPR = getSharedPreferences("MySPFILE",0);
              //etKFZ1.setText(mySPR.getString("myKey1", "AP-AA 582"));
          }
      
          @Override
          protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data)
          {
              if(resultCode == RESULT_OK)
              {
                  if(requestCode == Kameracode)
                  {
                      if (ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED)
                      {
                          if (!ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.WRITE_EXTERNAL_STORAGE))
                          {
                              ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, 1234);
                          }
                      }
                      else
                      {
                          dateierstellen();
                      }
                  }
              }
              else
              {
                  Toast.makeText(getApplicationContext(), "resultCode: "+resultCode  ,Toast.LENGTH_SHORT).show();
              }
      
              super.onActivityResult(requestCode, resultCode, data);
          }
      
          @Override
          public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults)
          {
              super.onRequestPermissionsResult(requestCode, permissions, grantResults);
              if (requestCode == 1234)
              {
                  if (grantResults[0] == PackageManager.PERMISSION_GRANTED)
                  {
                      Log.i("resultcode", "dateierstellen  " + requestCode);
                      dateierstellen();
                  }
                  else
                  {
                      Toast.makeText(getApplicationContext(), "Permission Denied", Toast.LENGTH_SHORT).show();
                  }
              }
          }
      
          private void dateierstellen()
          {
              Toast.makeText(getApplicationContext(), "Bild gespeichert unter: " + bild.getAbsolutePath()  ,Toast.LENGTH_SHORT).show();
      
              bm1 = BitmapFactory.decodeFile(bild.getAbsolutePath());
              ivBild1.setImageBitmap(bm1);
      
              i++;
              bild = new File(dir, i + ".png");
              Toast.makeText(getApplicationContext(), "Neues Bild: " + bild.getAbsolutePath()  ,Toast.LENGTH_SHORT).show();
          }
      
          @Override
          protected void onStop()
          {
              super.onStop();
              SharedPreferences mySPR = getSharedPreferences("MySPFILE",0);
              SharedPreferences.Editor editor = mySPR.edit();
      
              editor.putString ("myKey1", etKFZ1.getText().toString());
      
              editor.commit();
          }
      }

      Comment


      • #4
        main_activity.xml:

        Code:
        <?xml version="1.0" encoding="utf-8"?>
        <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:app="http://schemas.android.com/apk/res-auto"
            xmlns:tools="http://schemas.android.com/tools"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            tools:context=".MainActivity">
        
            <androidx.constraintlayout.widget.ConstraintLayout
                android:id="@+id/constraintLayout"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                tools:context=".MainActivity"
                tools:layout_editor_absoluteX="-58dp"
                tools:layout_editor_absoluteY="219dp">
        
                <TextView
                    android:id="@+id/textView3"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="TestApp"
                    app:layout_constraintBottom_toBottomOf="parent"
                    app:layout_constraintHorizontal_bias="0.498"
                    app:layout_constraintLeft_toLeftOf="parent"
                    app:layout_constraintRight_toRightOf="parent"
                    app:layout_constraintTop_toTopOf="parent"
                    app:layout_constraintVertical_bias="0.035" />
        
                <EditText
                    android:id="@+id/etKFZ"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginStart="92dp"
                    android:layout_marginTop="136dp"
                    android:layout_marginEnd="109dp"
                    android:layout_marginBottom="24dp"
                    android:ems="10"
                    android:inputType="textPersonName"
                    android:text="AP-AA 582"
                    app:layout_constraintBottom_toTopOf="@+id/btnCam"
                    app:layout_constraintEnd_toEndOf="parent"
                    app:layout_constraintHorizontal_bias="0.5"
                    app:layout_constraintStart_toStartOf="parent"
                    app:layout_constraintTop_toTopOf="parent" />
        
                <Button
                    android:id="@+id/btnCam"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginStart="161dp"
                    android:layout_marginTop="24dp"
                    android:layout_marginEnd="162dp"
                    android:layout_marginBottom="478dp"
                    android:text="Kamera"
                    app:layout_constraintBottom_toBottomOf="parent"
                    app:layout_constraintEnd_toEndOf="parent"
                    app:layout_constraintHorizontal_bias="0.5"
                    app:layout_constraintStart_toStartOf="parent"
                    app:layout_constraintTop_toBottomOf="@+id/etKFZ" />
        
                <ImageView
                    android:id="@+id/ivBild"
                    android:layout_width="229dp"
                    android:layout_height="234dp"
                    android:layout_marginBottom="192dp"
                    app:layout_constraintBottom_toBottomOf="parent"
                    app:layout_constraintEnd_toEndOf="parent"
                    app:layout_constraintHorizontal_bias="0.495"
                    app:layout_constraintStart_toStartOf="parent"
                    app:layout_constraintTop_toTopOf="@+id/etKFZ"
                    app:layout_constraintVertical_bias="1.0"
                    tools:srcCompat="@tools:sample/backgrounds/scenic" />
        
            </androidx.constraintlayout.widget.ConstraintLayout>
        
        </androidx.constraintlayout.widget.ConstraintLayout>

        Comment


        • #5
          Debugge hier an den Stellen, ob der Pfad stimmt und ob bm1 überhaupt einen Inhalt hat

          ivBild1.setImageBitmap(bm1);
          bm1 = BitmapFactory.decodeFile(bild.getAbsolutePath());

          Christian

          Comment


          • #6
            Ich hab die funktion jetzt so umgeschrieben:
            Code:
                private void dateierstellen()
                {
                    Toast.makeText(getApplicationContext(), "Bild gespeichert unter: " + bild.getAbsolutePath()  ,Toast.LENGTH_LONG).show();
            
                    try {
                        Toast.makeText(getApplicationContext(), "verzeichnis:" + dir.toString()  ,Toast.LENGTH_SHORT).show();
                        if (dir.listFiles() != null) {
                            if (dir.listFiles().length > 0) {
                                bm1 = BitmapFactory.decodeFile(bild.getAbsolutePath());
                                ivBild1.setImageBitmap(bm1);
            
                            } else {
                                Toast.makeText(getApplicationContext(), "1:Keine Dateien im Ordner", Toast.LENGTH_SHORT).show();
                            }
                        } else {
                            Toast.makeText(getApplicationContext(), "2:Keine Dateien im Ordner", Toast.LENGTH_SHORT).show();
                        }
                    }catch(Exception ex)
                    {
                        Toast.makeText(getApplicationContext(), "Fehler: "+ ex.getMessage(), Toast.LENGTH_LONG).show();
                    }
            
                    //bm1 = BitmapFactory.decodeFile(bild.getAbsolutePath());
                    //ivBild1.setImageBitmap(bm1);
            
                    i++;
                    name = "Bild_" + System.currentTimeMillis() + ".png";
                    bild = new File(dir, /*name*/i + ".png");
                    Toast.makeText(getApplicationContext(), "Neues Bild: " + bild.getAbsolutePath()  ,Toast.LENGTH_SHORT).show();
                }
            Er sagt mir imemr das der Ordner leer sei, bzw das if (dir.listFiles() != null) { <- das dir null ist.
            Wieso ist das so ?
            Ich dachte wenn ich dem Camra - Intent den Bildpfad mit gebe und dort das Bild mit dem Haken bestätige das die Datei erzeugt wird.

            Comment


            • #7
              Ahja in meiner OnCreate hab ich noch den Order erstellt
              Code:
                  protected void onCreate(Bundle savedInstanceState)
                  {
                      super.onCreate(savedInstanceState);
                      setContentView(R.layout.activity_main);
              
                      etKFZ1 = (EditText) findViewById(R.id.etKFZ);
                      btnKam = (Button)  findViewById(R.id.btnCam);
                      ivBild1 = (ImageView) findViewById(R.id.ivBild);
              
                      if(!dir.exists())
                      {
                          dir.mkdirs();
                      }
              .
              .
              .

              Comment


              • #8
                Ich hab jetzt mal im Create einfach eine Datei in dem Ordner zu erzeigen
                Da bekomm ich : no such file or directory

                Code:
                    @Override
                    protected void onCreate(Bundle savedInstanceState)
                    {
                        super.onCreate(savedInstanceState);
                        setContentView(R.layout.activity_main);
                
                        etKFZ1 = (EditText) findViewById(R.id.etKFZ);
                        btnKam = (Button)  findViewById(R.id.btnCam);
                        ivBild1 = (ImageView) findViewById(R.id.ivBild);
                
                        if(!dir.exists())
                        {
                            dir.mkdirs();
                        }
                
                        ivBild1.setImageResource(R.drawable.ic_launcher_foreground);
                
                        /*if(bild.exists())
                        {
                            bm1 = BitmapFactory.decodeFile(bild.getAbsolutePath());
                            ivBild1.setImageBitmap(bm1);
                        }*/
                
                        btnKam.setOnClickListener(new View.OnClickListener() {
                                                      @Override
                                                      public void onClick(View view) {
                                                          try {
                                                              kfz = etKFZ1.getText().toString();
                
                                                              try {
                                                                  bild.createNewFile();
                                                              }
                                                              catch (IOException e)
                                                              {
                                                                  Toast.makeText(getApplicationContext(), "Bild konnte nicht erstellt werden: " + e.getMessage(), Toast.LENGTH_LONG).show();
                                                              }
                
                                                              bildIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
                                                              bildIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
                                                              bildIntent.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
                
                                                              bildIntent.putExtra(MediaStore.EXTRA_OUTPUT, bilduri);
                
                                                              startActivityForResult(bildIntent, Kameracode);
                
                                                          }catch(Exception ex) {
                                                              ex.printStackTrace();
                                                              Toast.makeText(getApplicationContext(), "Kamera unterstützt das nicht..." + ex.getMessage(), Toast.LENGTH_SHORT).show();
                                                          }
                                                      }
                                                  }
                        );
                
                        //SharedPreferences mySPR = getSharedPreferences("MySPFILE",0);
                        //etKFZ1.setText(mySPR.getString("myKey1", "AP-AA 582"));
                    }

                Comment


                • #9
                  Was soll ich sagen....Der Rechner hat in den allermeisten Fällen recht. Es wird dann das Directory nicht geben.
                  mkdirs gibt auch einen Wert zurück, ob das ganze erfolgreich war. Diesen könnte man prüfen
                  Christian

                  Comment


                  • #10
                    das sieht so aus als ob das recht zum verzeichnis erstellen fehlt
                    aber welches ist das ?

                    Comment


                    • #11
                      Code:
                      <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
                      <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
                      die hat der doch ... was hindert denn nun das programm am erstellen von verzeichnissen ?

                      Comment


                      • #12
                        https://www.google.com/search?client...eate+directory
                        Christian

                        Comment


                        • #13
                          Hmmm ok ich hab nen Android 11 bei mir laufen ...
                          da scheint das komplizierter geworden zu sein ...

                          aber wie genau muss ich das denn dann nun ändern ? bzw welche rechte brauch ich denn nun zum erstellen und zum speichern von dateien ?
                          muss ich das dann genauso einbauen wie ich das hier oben in der onClicklistener gemacht hab ?

                          Comment


                          • #14
                            bzw das hier:
                            Code:
                                @Override
                                protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data)
                                {
                                    if(resultCode == RESULT_OK)
                                    {
                                        if(requestCode == Kameracode)
                                        {
                                            if (ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED)
                                            {
                                                if (!ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.WRITE_EXTERNAL_STORAGE))
                                                {
                                                    ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, 1234);
                                                }
                                            }
                                            else
                                            {
                                                dateierstellen();
                                            }
                                        }
                                    }
                                    else
                                    {
                                        Toast.makeText(getApplicationContext(), "resultCode: "+resultCode  ,Toast.LENGTH_SHORT).show();
                                    }
                            
                                    super.onActivityResult(requestCode, resultCode, data);
                                }
                            Wie muss ich das dann nun machen um auch verzeichnisse erstellen zu dürfen ?

                            Comment


                            • #15
                              Ich weiß das nicht...programmiere nicht Android, aber der Link zeigt auch Ergebnisse für Android 11. Ggf. könnte man die Suche verfeinern....
                              Christian

                              Comment

                              Working...
                              X