我正在获取文件夹中的文件列表。响应会包含每个返回文件的iconLink
,该图标为16x16像素。
是否有人知道检索视网膜图片的方法?或者另一种检索更大图标图像的方法?
https://developers.google.com/drive/v2/reference/files
顶部:Google Drive 用户界面
底部:Google Drive API 集成
我正在获取文件夹中的文件列表。响应会包含每个返回文件的iconLink
,该图标为16x16像素。
是否有人知道检索视网膜图片的方法?或者另一种检索更大图标图像的方法?
https://developers.google.com/drive/v2/reference/files
顶部:Google Drive 用户界面
底部:Google Drive API 集成
function getIcons($file_type)
{
$icons = [
'pdf' => [
'icon' => 'icon_12_pdf_list.png',
'retina' => 'icon_3_pdf_x32.png'
],
'document' => [
'icon' => 'icon_1_document_x16.png',
'retina' => 'icon_1_document_x32.png'
],
'image' => [
'icon' => 'con_1_image_x16.png',
'retina' => 'icon_1_image_x32.png'
],
'word' => [
'icon' => 'icon_1_word_x16.png',
'retina' => 'icon_1_word_x32.png'
],
'text' => [
'icon' => 'icon_1_text_x16.png',
'retina' => 'icon_1_text_x32.png'
],
'spreadsheet' => [
'icon' => 'icon_1_spreadsheet_x16.png',
'retina' => 'icon_1_spreadsheet_x32.png'
],
'form' => [
'icon' => 'icon_2_form_x16.png',
'retina' => 'icon_2_form_x32.png'
],
'audio' => [
'icon' => 'icon_1_audio_x16.png',
'retina' => 'icon_1_audio_x32.png'
]
];
return isset($icons[$file_type]) ? $icons[$file_type] : $icons['text'];
}
我之所以说它能够运行一段时间,是因为我假设文件名中例如pdf图标文件名中的_3_
是版本号。因此,如果Google在未来再次更新其图标,则此解决方案可能会失效。
我正在使用Drive REST API,观察到iconLink
属性具有明确的模式。
"https://drive-thirdparty.googleusercontent.com/" + size + mimetype
默认大小为16。因此,在将您的图标添加到图像之前,请使用此代码:
String iconLink = (String) jsonObject.get("iconLink");
iconLink=iconLink.replace("16","128");
请查看以下两个链接: https://drive-thirdparty.googleusercontent.com/128/type/application/pdf https://drive-thirdparty.googleusercontent.com/16/type/application/pdf
这些链接引用的是PDF文件。