为了开始使用Java中的Google驱动器,我必须
但是,诸如WhatsApp之类的应用程序可以直接将聊天备份上传到Google驱动器,而无需要求用户执行上述任何步骤。
在我的应用程序中,我要求用户提供他/她的电子邮件地址,并且我必须使用该电子邮件地址来访问该人的Google云端硬盘。
我该怎么做?
答案 0 :(得分:0)
是什么让您认为Whatsapp之类的应用程序没有做到这一点?使用Google api的唯一方法是在Google中注册您的应用程序,以便google知道哪些应用程序正在访问其api,如果您开始向其发送垃圾邮件,则可以将其关闭。因此,Whatsapp如果他们可以写到Google云端硬盘,则拥有Google客户端。
您无法再通过Google API使用客户端登录,该客户端登录已于2015年关闭,因此从您的用户那里请求电子邮件和密码将不会起作用。您需要使用Oauth2对它们进行授权。
Google开发者控制台中的项目将您的应用程序标识为google,如果没有它,您将无法使用google api。
客户端机密用于Oauth2的混合授权方法。不使用客户端机密的唯一方法是隐式登录,这是针对客户端语言(例如javascript)的。你不能避免。
Use that file in my project folder and do stuff
,您不会在项目中使用该文件来完成工作。您可以在项目中使用该文件来请求用户访问权限,并向Google标识您的应用程序。
您的用户授权您的应用程序使用Oauth2访问其Google云端硬盘帐户,仅允许您在您请求的用户授权的(范围)内使用该帐户。如果他们不授予您写访问权限,则无法写给他们的帐户。
答案 1 :(得分:0)
诸如WhatsApp之类的应用程序要求用户授予访问其Google云端硬盘的权限。未经用户许可,您无法访问用户的云端硬盘。
secrets.json文件只能在自己的应用程序[1]中使用。
在网络上,获得用户访问其驱动器权限的唯一方法是在JavaScript [2]中实现Google登录,这将提示同意屏幕,要求用户访问其驱动器权限(您可以设置只读范围)。对于手机,您还可以实施Google登录[3]。
[1] https://developers.google.com/api-client-library/dotnet/get_started#auth
[2] https://developers.google.com/identity/sign-in/web/sign-in