Najpierw informacje potrzebne do wygenerowania tej odpowiedzi zostały dostarczone przez @CommonsWareTo jest zamieszczone tutaj, aby inni mogli się nie uczyć, abym mógł zdobyć punkty. Problem polegał na tym, jak zarządzać lokalizacją przechowywania na tablecie SamsungNajważniejsze jest zrozumienie testowania, jeśli Karta SD jest zamontowana w emulatorze nie będzie działać Poniżej znajduje się mój bardzo dziwny kod do sprawdzenia, czy karta SD została zamontowana, czy nie. Następnie poprawiony kod, który pozwala zarządzać miejscem przechowywania
File fi = new File("storage/");
File[] lst = fi.listFiles();//
String top = String.valueOf(lst[1]);
String bot = String.valueOf(lst[0]);
if(bot.contains("-")){
STORAGE_LOCATION = 1;
}
if(top.contains("storage/enc_emulated")){
STORAGE_LOCATION = 0;
}
public String getThePath(){
File removable = ContextCompat.getExternalFilesDirs(this,null)
[STORAGE_LOCATION];
if(STORAGE_LOCATION == 1){
THE_PATH = String.valueOf(removable);
THE_PATH = THE_PATH + "/Documents/";
}
if(STORAGE_LOCATION == 0){
THE_PATH = String.valueOf(removable);
THE_PATH = THE_PATH + "/INTERNAL/";
Toast.makeText(getApplicationContext(),"NO SD CARD",
Toast.LENGTH_LONG).show();
}
return THE_PATH;
}