Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/205.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google Drive Android SDK在文件上传时不断崩溃_Android_Google Drive Api - Fatal编程技术网

Google Drive Android SDK在文件上传时不断崩溃

Google Drive Android SDK在文件上传时不断崩溃,android,google-drive-api,Android,Google Drive Api,我正在做一个项目,我正在做一个测试,以实现谷歌驱动器SDK,但我有一个问题时,试图上传到SD卡上的文件 当上传完成时,我得到一个错误 02-23 23:38:54.960: E/AndroidRuntime(9160): FATAL EXCEPTION: Thread-2652 02-23 23:38:54.960: E/AndroidRuntime(9160): java.lang.NullPointerException 02-23 23:38:54.960: E/AndroidRuntim

我正在做一个项目,我正在做一个测试,以实现谷歌驱动器SDK,但我有一个问题时,试图上传到SD卡上的文件

当上传完成时,我得到一个错误

02-23 23:38:54.960: E/AndroidRuntime(9160): FATAL EXCEPTION: Thread-2652
02-23 23:38:54.960: E/AndroidRuntime(9160): java.lang.NullPointerException
02-23 23:38:54.960: E/AndroidRuntime(9160):     at java.net.URI.parseURI(URI.java:353)
02-23 23:38:54.960: E/AndroidRuntime(9160):     at java.net.URI.<init>(URI.java:204)
02-23 23:38:54.960: E/AndroidRuntime(9160):     at com.google.api.client.http.GenericUrl.<init>(GenericUrl.java:100)
02-23 23:38:54.960: E/AndroidRuntime(9160):     at com.google.api.client.googleapis.media.MediaHttpUploader.upload(MediaHttpUploader.java:269)
02-23 23:38:54.960: E/AndroidRuntime(9160):     at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:408)
02-23 23:38:54.960: E/AndroidRuntime(9160):     at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:328)
02-23 23:38:54.960: E/AndroidRuntime(9160):     at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.execute(AbstractGoogleClientRequest.java:449)
02-23 23:38:54.960: E/AndroidRuntime(9160):     at com.BoardiesITSolutions.googledrivetest.MainActivity$3.run(MainActivity.java:127)
02-23 23:38:54.960: E/AndroidRuntime(9160):     at java.lang.Thread.run(Thread.java:856)
我相信事故发生在以下方面:

com.google.api.services.drive.model.File file = service.files().insert(body, mediaContent).execute();
我不明白为什么会发生这种情况,错误也没有太大用处。我不是空的,因为
fileContent
mediaContent
fileUri
都不是空的

它成功地询问我想使用哪个帐户,并询问我是否想授予上传权限,这样我就看不出有什么问题

谢谢你能提供的帮助


仅供参考,我使用了

中的教程,不确定我是否能提供帮助,但似乎是API内部的授权失败问题,而不是您的代码


在API控制台中检查您的凭据、包名和SHA1指纹,确保它们是正确的。您使用的是最新版本的客户端库吗?

我已经找到了问题所在,但Edward van Raak确实提供了帮助

正如所建议的,问题的一部分与我使用的不同的开发PC有关,我忘记了向API控制台添加不同的客户端SHA1指纹。但是,这并没有解决问题,因为引发了相同的异常

然后,我删除了GooglePlayServicesJAR文件,并删除了GoogleDriveAPI(请注意,现在您将看到构建错误)


然后我重新添加了GooglePlayServicesJAR文件,并使用GoogleAPI Eclipse插件重新添加了GoogleDriveAPI,重新构建了项目,现在我可以再次成功上传一个文件

你使用的是可恢复上传吗?@EdwardvanRaak,对不起,我不知道那是什么,我怎么能找到呢谢谢,我使用的是最新版本的库。我确实在一台PC上启动了这个项目,它似乎可以正常工作,现在我把这个项目复制到另一台开发PC上,我现在发现了这个问题。这有关系吗?可能是的。也许可以尝试在另一台开发人员PC上重新安装Eclipse4.2,并更新GooglePlay服务。
com.google.api.services.drive.model.File file = service.files().insert(body, mediaContent).execute();