Android 如何获取授权码?

Android 如何获取授权码?,android,google-plus,accountmanager,Android,Google Plus,Accountmanager,对于我的服务器部件应用程序,需要身份验证令牌(用于身份验证)和“授权代码”来获取一些信息。 我在我的Android应用程序上获得身份验证令牌并将其发送到服务器 private void requestToken() { Account userAccount = null; String user = Settings.getUser(getActivity()); for (Account account : accountManager.get

对于我的服务器部件应用程序,需要身份验证令牌(用于身份验证)和“授权代码”来获取一些信息。 我在我的Android应用程序上获得身份验证令牌并将其发送到服务器

private void requestToken() {
        Account userAccount = null;
        String user = Settings.getUser(getActivity());
        for (Account account : accountManager.getAccountsByType("com.google")) {
            if (account.name.equals(user)) {
                userAccount = account;
                break;
            }
        }
        accountManager.getAuthToken(userAccount, "oauth2:https://www.googleapis.com/auth/plus.login",
                null, getActivity(),
                new OnTokenAcquired(), null);
    }

private class OnTokenAcquired implements AccountManagerCallback<Bundle> {
        @Override
        public void run(AccountManagerFuture<Bundle> result) {
            try {
                Bundle bundle = result.getResult();
                Intent launch = (Intent) bundle.get(AccountManager.KEY_INTENT);
                dumpIntent(launch);
                if (launch != null) {
                    startActivityForResult(launch, AUTHORIZATION_CODE);
                } else {
                    String token = bundle
                            .getString(AccountManager.KEY_AUTHTOKEN);
                    Settings.setToken(getActivity(), token);
                    doCoolAuthenticatedStuff();
                }
            } catch (Exception e) {
                Toast.makeText(getActivity(), R.string.error_check_connection, Toast.LENGTH_SHORT).show();
                //throw new RuntimeException(e);
            }
        }
    }
private void requestToken(){
Account userAccount=null;
字符串user=Settings.getUser(getActivity());
对于(帐户:accountManager.getAccountsByType(“com.google”)){
if(account.name.equals(user)){
用户帐户=帐户;
打破
}
}
accountManager.getAuthToken(userAccount,“oauth2:https://www.googleapis.com/auth/plus.login",
null,getActivity(),
新的OnTokenAcquired(),null);
}
私有类实现AccountManagerCallback{
@凌驾
公共作废运行(AccountManagerFuture结果){
试一试{
Bundle Bundle=result.getResult();
Intent启动=(Intent)bundle.get(AccountManager.KEY\u Intent);
目的(发射);
如果(启动!=null){
startActivityForResult(发布、授权代码);
}否则{
字符串标记=bundle
.getString(AccountManager.KEY\u AUTHTOKEN);
setings.setToken(getActivity(),token);
doCoolAuthenticatedStuff();
}
}捕获(例外e){
Toast.makeText(getActivity(),R.string.error\u check\u connection,Toast.LENGTH\u SHORT).show();
//抛出新的运行时异常(e);
}
}
}
如何使用此代码或其他代码解决获取授权代码的任务