我已使用Google Drive Android API为Drive root创建了一个文件。如何使用Google客户端库获取此文件ID以进行共享?
在ResultCallback<DriveFileResult>
回调中获取DriveFileResult会返回Null:
String fileId = result.getDriveFile().getDriveId().getResourceId();
答案 0 :(得分:3)
回调是在本地创建的文件。当文件同步到服务器时,DriveId将只有一个resourceId。在此之前,getResourceId将返回null。
https://developer.android.com/reference/com/google/android/gms/drive/DriveId.html#getResourceId()
使用CompletionEvents在与服务器同步时收到通知。然后调用getResourceId()应该提供你期望的结果。
答案 1 :(得分:0)
此代码可能有助于识别Google云端硬盘中存在的文件的ID。
public static void main(String[] args) throws IOException {
// Build a new authorized API client service.
Drive service = getDriveService();
// Print the names and IDs for up to 10 files.
FileList result = service.files().list()
.setMaxResults(10)
.execute();
List<File> files = result.getItems();
if (files == null || files.size() == 0) {
System.out.println("No files found.");
} else {
System.out.println("Files:");
for (File file : files) {
System.out.printf("%s (%s)\n", file.getTitle(), file.getId());
}
}
}