我一直关注此tutorial以在我的应用中集成谷歌硬盘。但运行应用程序时会发生错误。
错误:
The following error occured: 400 Bad Request
{
"code":400,
"errors":[{
"domain":"global",
"location":"fiels",
"locationType":"parameter",
"message": "Invalid field selection items",
"reason":"invalidParameter"
}],
"message":"Invalid field selection items"
}
当我调试这段代码时,我发现代码没有超出:
private List<String> getDataFromApi() throws IOException {
// Get a list of up to 10 files.
List<String> fileInfo = new ArrayList<String>();
FileList result = mService.files().list()
.setPageSize(10)
.setFields("nextPageToken, items(id, name)")
.execute();
以下是我使用的代码的下一步:
List<com.google.api.services.drive.model.File> files = result.getFiles();
if (files != null) {
for (com.google.api.services.drive.model.File file : files) {
fileInfo.add(String.format("%s (%s)\n",
file.getName(),file.getId() ));
}
}
return fileInfo;
}
在我定义的清单中:
<uses-permission android:name="android.permission.GET_ACCOUNTS"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
和清单中的内部应用程序:
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
<meta-data
android:name="com.google.android.gms.games.APP_ID"
android:value="99102****479" />
<meta-data
android:name="com.google.android.gms.appstate.APP_ID"
android:value="99102****479" />
我不知道问题是什么。请帮忙。谢谢。
答案 0 :(得分:1)
我几天前做了同样的教程并遇到了同样的问题,有些人如何在这一行中没有更新他们的教程:
.setFields("nextPageToken, items(id, name)")
必须更改为
.setFields("nextPageToken, files(id, name)")
正如他们在搜索文件section中所解释的那样。
希望这有帮助!