2016-07-02 1 views
0
mFileId = (DriveId) data.getParcelableExtra(
      OpenFileActivityBuilder.EXTRA_RESPONSE_DRIVE_ID); 
Log.e("file id", mFileId.getResourceId() + ""); 
DriveFile file = mFileId.asDriveFile(); 
try { 
    results = file.open(mGoogleApiClient, DriveFile.MODE_READ_ONLY, null).await();//this is to return a driveContent object 

DriveContents contents = results.getDriveContents(); 

이 해당 파일이 읽기 전용 모드로 열어야합니다 때주는 오류이지만, 파일이 이미 읽기 전용 모드에서 열려오류 동안

InputStream = contents.getInputStream();

+0

이 results.getParcelFileDescriptor를 사용해보십시오() 및 입력이 자신을 스트리밍 만들기. – Anatoli

답변

0

java.io.File.setReadOnly()을 사용하여 읽기 전용으로 설정하십시오. 또한 파일이 생성되었는지 또는 먼저 존재하는지 확인한 다음 읽기 전용 플래그를 설정하십시오.

File file = new File("C:/path/file.txt"); 
    if (file.exists()) { 
     file.setReadOnly(); 
    } else { 
     System.out.println("File does not exists."); 
    } 

확인이 관련 스레드 및 설명서에서이 example :

+0

드라이브에서 해당 ID를 얻었 기 때문에 파일이 종료되었음을 의미하므로이 문제는 해결되지 않습니다. –