Java Google驱动器文件列表返回空项
我正在进行谷歌驱动器集成。我已经使用谷歌控制台获取了api访问密钥,还使用了oauth2身份验证。我已经使用了谷歌日历集成,其工作正常,但当我集成驱动器时,想要检索文件列表,其返回值为空。我不知道是怎么回事。以下是我的代码。谢谢先进的Java Google驱动器文件列表返回空项,java,android,google-drive-api,Java,Android,Google Drive Api,我正在进行谷歌驱动器集成。我已经使用谷歌控制台获取了api访问密钥,还使用了oauth2身份验证。我已经使用了谷歌日历集成,其工作正常,但当我集成驱动器时,想要检索文件列表,其返回值为空。我不知道是怎么回事。以下是我的代码。谢谢先进的 public class RetriveFromDrive extends AsyncTask<Void,Void,Void> { List<File> result=new ArrayList<File&g
public class RetriveFromDrive extends AsyncTask<Void,Void,Void>
{
List<File> result=new ArrayList<File>();
Files.List request;
@Override
protected Void doInBackground(Void... params) {
try{
// TODO Auto-generated method stub
Log.d("Msg", "Do in Background");
request=gDrive.files().list();
Log.d("Msg", request.toString());
FileList file =request.execute();
result.addAll(file.getItems());
names=new ArrayList<String>();
for (File file1 :result) {
names.add(file1.getTitle());
Log.d("Names", names.toString());
}
}catch(Exception e)
{
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(Void params) {
// TODO Auto-generated method stub
super.onPostExecute(params);
Log.d("Msg","onPostExecute");
Log.d("Names",names.toString());
}`
公共类从驱动器检索扩展异步任务
{
列表结果=新建ArrayList();
文件列表请求;
@凌驾
受保护的Void doInBackground(Void…参数){
试一试{
//TODO自动生成的方法存根
Log.d(“Msg”,“Do in Background”);
request=gDrive.files().list();
Log.d(“Msg”,request.toString());
FileList file=request.execute();
addAll(file.getItems());
名称=新的ArrayList();
对于(文件file1:result){
name.add(file1.getTitle());
Log.d(“Names”,Names.toString());
}
}捕获(例外e)
{
e、 printStackTrace();
}
返回null;
}
@凌驾
受保护的void onPostExecute(void参数){
//TODO自动生成的方法存根
super.onPostExecute(params);
Log.d(“Msg”、“onPostExecute”);
Log.d(“Names”,Names.toString());
}`
您使用的是应用程序拥有的帐户,与普通帐户类似,但属于应用程序而不是用户
应用程序拥有的帐户没有特殊权限,并且作为普通帐户,只能访问其拥有的或与之共享的文档。因此,如果您的普通帐户拥有这些文件,则服务帐户将无法列出它们
您可以使用域范围的委派来允许您的应用程序代表Google应用程序域中的其他用户访问文件:
要允许服务帐户访问我自己的Google Drive中的文件,我必须授予服务帐户电子邮件地址的权限。权限设置正确后,列表中会填充允许服务帐户访问的文件。是的,但我不明白什么是应用程序拥有的帐户。请帮助再多给我一点。