gpt4 book ai didi

android - getAuthToken y Android 不调用任何回调

转载 作者:行者123 更新时间:2023-11-29 16:10:54 26 4
gpt4 key购买 nike

我在 Android 中有一个应用程序,我正在尝试使用 AccountManager 获取 AuthToken 并使用 Facebook 或 Twitter 进行操作。所以我得到了这个:

AccountManager am = AccountManager.get(this);
Account[] accounts = am.getAccountsByType("com.facebook.auth.login");
Bundle options = new Bundle();
Account myAccount=null;

for (int i=0;i<accounts.length;i++) {
if (accounts[i].type.equals("com.facebook.auth.login")) myAccount=accounts[i];
//options.putString("facebookUser", accounts[i].name);
}

am.getAuthToken(
myAccount, // Account retrieved using getAccountsByType()
"Manage your tasks", // Auth scope
options, // Authenticator-specific options
this, // Your activity
new OnTokenAcquired(), // Callback called when a token is successfully acquired
new Handler(new OnError()));

我的两个回调是 onTokenAcquired:

public class OnTokenAcquired implements AccountManagerCallback<Bundle> {

@Override
public void run(AccountManagerFuture<Bundle> result) {
try {
Bundle bundle = result.getResult();
Log.e("onTokenAcquired",bundle.getString(AccountManager.KEY_AUTHTOKEN));
} catch (OperationCanceledException e) {
Log.e("onTokenAcquired","operationcanceled");
} catch (AuthenticatorException e) {
Log.e("onTokenAcquired","authenticatorexception");
} catch (IOException e) {
Log.e("onTokenAcquired","IOException");
}
}
}

和 OnError:

public class OnError implements Callback {

@Override
public boolean handleMessage(Message msg) {
Log.e("onError","ERROR");
return false;
}

}

我正在遵循 Android 开发人员指南 (http://developer.android.com/intl/es/training/id-auth/authenticate.html)。所以,我有两个选项,错误或获取 token ,在每个选项中我都有一个 Log.e() 来读取一些东西,但没有被写入。

有人能帮帮我吗?如果我遇到错误或未获取 token ,至少我会有一些工作要做,但我只是不知道发生了什么。

最佳答案

从文档中看并不完全明显,但如果需要用户干预,您调用的 getAuthToken 变体将永远不会调用回调。这里有一些解决方法:

https://code.google.com/p/android/issues/detail?id=25473

我不知道这是否是您遇到的具体问题,但它可能没有帮助。

关于android - getAuthToken y Android 不调用任何回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13489546/

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