2014-10-14 3 views
0

도움말 내 obb 파일 문제를 해결해주세요, 내 프로젝트에 downloader_library를 추가하십시오. 응용 프로그램을 시작할 때 응용 프로그램이 나를 다운로드 할 때 obb 파일이 제대로 작동합니다. 외부 SD 카드에 파일을 저장해도 문제가 없지만 응용 프로그램이 작동하지만 SD 카드없이 전화를 걸면 응용 프로그램이 다운됩니다. 나는 obb 파일이 존재 하는지를 보는 방법을 본다. 그리고 그는 항상 SD 카드를 본다. 내부 메모리에 obb 파일을 어떻게 찾을 수 있는가?4.0 - 4.4 용 내부 메모리 안드로이드 obb 파일 위치

이 방법은 OBB 파일이 존재하는 경우 같습니다

static public boolean doesFileExist(Context c, String fileName, long fileSize, 
     boolean deleteFileOnMismatch) { 
    // the file may have been delivered by Market --- let's make sure 
    // it's the size we expect 
    File fileForNewFile = new File(Helpers.generateSaveFileName(c, fileName)); 
    if (fileForNewFile.exists()) { 
     if (fileForNewFile.length() == fileSize) { 
      return true; 
     } 
     if (deleteFileOnMismatch) { 
      // delete the file --- we won't be able to resume 
      // because we cannot confirm the integrity of the file 
      fileForNewFile.delete(); 
     } 
    } 
return false; 
} 

이 방법 - Helpers.generateSaveFileName는 Environment.getExternalStorageDirectory()를 사용; 4.0

fileForNewFile - /mnt/sdcard/Android/obb/com.example.app/main.1.com.example.app.obb fileForNewFile 4.4 - /저장/SDCARD/안드로이드/OBB/com.example.app/main.1.com.example.app.obb

내부 메모리를 이해하고 읽는 방법 obb는 /data/data/com.example.app의 어딘가에 있어야하지만 어떻게이 디렉토리를받을 수 있습니까? 실제 경로 : /data/data/com.example.app/obb/main.1.com.example.app.obb? /data/data/com.example.app/Android/obb/main.1.com.example.app.obb?

sd 카드 파일 관리자가없는 휴대 전화 (4.4.2)에서 다운로드 후 경로 표시 - /Android/obb/com.example.app/main.1.com.example.app.obb하지만 루트 및 i가없는 휴대 전화 이 안드로이드 폴더는 상위 디렉토리를 볼 수 없습니다.

완전히 혼란 스러워요.

답변

0

읽으려고하는 디렉토리 (데이터/데이터 인 디렉토리)는 getFilesDir()입니다. 여기에서 시도해 볼 수 있습니다 : 과 일반 액세스 권한이인가? obb 폴더가 이미 존재해야합니다 (적어도 에뮬레이터의 경우). 안드로이드 개발자 웹 사이트에서 제공하는 자습서를 사용하여 폴더에 액세스하려고하면 다른 경로가 이미 생성되어 있어야합니다.

또한 ADB를 통해 파일에 액세스하는 데 루트가 필요하지 않으며 기본 명령을 사용하여 ADB로도 밀어 넣을 수 있습니다.