0

我可以在Google雲端硬盤上創建文件,並在使用drive.google.com時自動爲我設置語言。使用Google DRIVE API設置Google文檔的默認語言

,但我有在創建通過我的應用程序中使用谷歌雲端硬盤API文件的問題。(谷歌API服務驅動-V2-rev192-1.20.0.jar)

文檔的默認語言是沒有設置。 這是導致語音輸入灰顯的問題。

Voice typing grayed out when the default language is not set

這是我在我的應用程序的CreateFile如何:

public static File createFile(Car car) { 
    System.out.println("CREATING FILE"); 
    try { 

     File body = new File(); 
     body.setTitle("Document for " + car.getCar_name() 
       + ".docx"); 

     body.setMimeType(GOOGLE_DOCOCUMENT_MIME_TYPE); 
     body.setEditable(true); 



     Permission ownership = getOwnerShipPermission(); 
     Permission unlockedFile = getUnlockedFilePermission(); 
     java.io.File fileContent = null; 
     fileContent = CarServiceReportTemplateFactory.createCarServiceReportTemplateFile(car); 

     FileContent mediaContent = new FileContent(MS_WORD_DOCUMENT_MIME_TYPE, fileContent); 
     File file = driveservice.files().insert(body, mediaContent).execute(); 
     String fildid = file.getId(); 
     driveservice.permissions().insert(fildid, unlockedFile).execute(); 
     fileContent.delete(); 
     return file; 

    } catch (IOException ex) { 
     ex.printStackTrace(); 
     return null; 
    } 
} 

我也看看the drive api file category,但是我無法找到相關的設置默認語言的任何東西。

有趣的是,當我執行"Try it" simulator時,生成的文件在默認情況下似乎具有語言設置。 但是,當我在我的應用程序中嘗試它時,語言不是默認設置的...因此語音輸入變灰。 這是我曾嘗試:

String timedTextLanguage = "English (United Kingdom)"; 

    File file = driveservice.files().insert(body, mediaContent).setTimedTextLanguage(timedTextLanguage).execute(); 

我將非常感激,如果你知道一個解決此問題。

謝謝。

+0

我注意到驅動器客戶端jar文件有一個較新的版本。 難道這是? –

+0

如果您檢查Google Drive API的v2版本。唯一可以更改文件語言的選項是使用[Files:insert](https://developers.google.com/drive/v2/reference/files/insert)方法,此方法具有可選參數'timedTextLanguage '設置文本的語言。如果它可以幫助你,試試這個參數。有關更多信息,請檢查此相關的[SO問題](http://stackoverflow.com/questions/12106138)。 – KENdi

+0

嗨Kendi,謝謝你的幫助。 我沒有運氣試過timedTextlanguage。我基本上可以通過「英語」作爲字符串參數嗎? –

回答

0

這是導致這些問題的Microsoft Word文檔。 但我仍然不知道爲什麼該語言未上傳到Google雲端硬盤時未設置。