gpt4 book ai didi

android - 从 Google Drive Android API 获取帐户名/电子邮件

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:11:47 25 4
gpt4 key购买 nike

我正在使用新的 Google Drive Android API我可以连接并执行 all that it will allow me to do ,但为了使用 SpreadsheetService,我需要从登录用户中提取帐户名/电子邮件。

我该怎么做?

这是我连接 Google Drive API 的代码。它工作正常。

private void connect() {

if (isGooglePlayServicesAvailable()) {
if (mGoogleApiClient == null) {
mGoogleApiClient = new GoogleApiClient.Builder(this)
.addApi(Drive.API)
.addScope(Drive.SCOPE_FILE)
.addConnectionCallbacks(this)
.addOnConnectionFailedListener(this)
.build();
}
// And, connect!

if (!mGoogleApiClient.isConnecting() && !mGoogleApiClient.isConnected()) {
mGoogleApiClient.connect();
writeLog("Connecting...");
}

}
}

这里是我使用 SpreadsheetService API 的地方,但我需要帐户名才能获取 token

String accountName = "???"; // how do I get this From GoogleClientApi / mGoogleApiClient ?
String accessToken = GoogleAuthUtil.getTokenWithNotification(GDriveActivity.this, accountName, scope, null);
SpreadsheetService service = new SpreadsheetService("v1");

我试过添加这个:

String accountName = Plus.AccountApi.getAccountName(mGoogleApiClient);

... 在 onConnected 方法中,但它抛出一个 NullPointerException

此外,这是我的权限:

<uses-permission
android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission
android:name="android.permission.VIBRATE" />
<uses-permission
android:name="android.permission.INTERNET" />
<uses-permission
android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission
android:name="android.permission.GET_ACCOUNTS" />
<uses-permission
android:name="android.permission.NETWORK" />
<uses-permission
android:name="android.permission.USE_CREDENTIALS" />

最佳答案

你需要添加:

                    .addApi(Plus.API)

在构建客户端时。然后这将在 onConnected(Bundle) 中工作:

String accountName = Plus.AccountApi.getAccountName(mGoogleApiClient);

假设您已经拥有正确的许可(您已经拥有):

<uses-permission android:name="android.permission.GET_ACCOUNTS" />

关于android - 从 Google Drive Android API 获取帐户名/电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22865630/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com