详细信息: - 我想从我的Android应用程序同步上传三个文件到三个不同的谷歌驱动器帐户。我目前的实现是只在一个(最后登录)帐户上传所有三个文件。所以我想知道是否从技术上讲是否可以这样做?
1>现在,我有三个不同的类用于三个云计算帐户。我正在使用Drive API和GooglePlay服务gms:play-services:11.4.2。 用于初始化mGoogleApiClient的代码段: -
public void init(Activity context, final ICDCallback<String> cb) {
if (this.mGoogleApiClient == null) {
this.mGoogleApiClient = new Builder(context).addOnConnectionFailedListener(new OnConnectionFailedListener() {
public void onConnectionFailed(@NonNull ConnectionResult connectionResult) {
cb.failure(connectionResult.getErrorMessage());
}
}).addConnectionCallbacks(new ConnectionCallbacks() {
public void onConnected(@Nullable Bundle bundle) {
cb.success("");
}
public void onConnectionSuspended(int i) {
cb.progress(0);
}
}).addApi(Drive.API).addApi(Auth.GOOGLE_SIGN_IN_API, new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN).requestScopes(new Scope("https://www.googleapis.com/auth/drive.file"), new Scope[0]).requestEmail().build()).build();
}
if (this.mGoogleApiClient != null && this.mGoogleApiClient.isConnected())
{
cb.success("");
} else {
connect();
}
}
2 - ;结果: - 每次用户登录和文件上载时都会调用此方法。但是mGoogleApiClient一直是最后登录的谷歌驱动器帐户,因为我认为文件是在最后登录的帐户而不是三个不同的帐户上传的。
3&gt;所以在这种情况下我该怎么办? i)是否可以在当前实现中将用户帐户信息保存在相应的类中,并在上传时使用它?或者还有其他更好的方法吗? ii)如果我尝试在相应的驱动器类中保存任何特定于用户的帐户信息,Google OAuth2.0库可以提供帮助吗?
请建议继续使用。