나는 내 자신의 수표를 만들었고 작동합니다. 2 차적인 실제 SD 카드가 있는지 확인합니다. Samsung Galaxy s5 neo, Alcatel 원터치 5020x 및 HTC One X에서 테스트했습니다. 코드는 앱 기본 디렉토리를 사용하여 확인하므로 KITKAT 장치에서 작동해야합니다.
기본 저장소에 기본 app 경로 저장소 문자열을 만듭니다. 그런 다음 "기본"을 "보조"로 변경 한 다음 폴더를 만들고 존재 여부를 확인하십시오.
을 Heres 코드 :
String primaryStorage = Environment.getExternalStorageDirectory().getAbsolutePath();
String secondaryStorage = System.getenv("SECONDARY_STORAGE");
Boolean hasSecondary = false;
String internalSD = getExternalFilesDir(null) + "/test";
String externalSD = internalSD.replace(primaryStorage, secondaryStorage);
try{
File dir = new File(externalSD);
dir.mkdirs();
if (dir.isDirectory()) {
dir.delete();
hasSecondary = true;
}
} catch (Exception e) {
}
anyother 솔루션? – Farhan
해결책이 있어야합니다. 내 장치 설정과 SD 카드 옵션으로 갈 때 실제 sd 카드와 내부 저장소를 확실히 구분할 수 있기 때문입니다. 그래서, 그것을 찾을 수있는 방법이 있어야한다는 것을 의미합니다 .. 어떤 도움? – Farhan
나는 해결책이 없다고 말하지 않았다. 단지이를위한 공개 API가 없다. 앞서 말했듯이,'/ proc/mounts'를 분석하여 현재 어떤 장치가 마운트되어 있는지 확인합니다. –