我試圖按照這個例子:http://code.google.com/p/google-api-java-client/source/browse/tasks-android-sample/src/main/java/com/google/api/services/samples/tasks/android/TasksSample.java?repo=samples。什麼是在我的Android應用中驗證Google帳戶的最佳工作流程?
我的代碼有點不好寫,但它在Google Code中發佈。我試圖建立工作流是在這裏:http://code.google.com/p/phone-to-desktop/source/browse/src/net/xisberto/phonetodesktop/PhoneToDesktopActivity.java?spec=svnd70158809aeb1ba00e26a33dc7110ade33b76427&name=google-tasks&r=d70158809aeb1ba00e26a33dc7110ade33b76427
在我最後一次嘗試,當應用程序進入到下面的方法:
private void chooseAccount() {
Log.i(getPackageName(), "Starting authenticate");
AccountManager manager = AccountManager.get(getApplicationContext());
manager.getAuthTokenByFeatures(
"google.com",
"Manage your tasks",
null, PhoneToDesktopActivity.this, null, null,
new AccountManagerCallback<Bundle>() {
@Override
public void run(AccountManagerFuture<Bundle> future) {
try {
Bundle bundle = future.getResult();
//So we save the account and token
setAccountName(bundle.getString(PREF_ACCOUNT_NAME));
setAuthToken(bundle.getString(PREF_AUTH_TOKEN));
Toast.makeText(getApplicationContext(),
"Account authenticated: " +
bundle.getString(PREF_ACCOUNT_NAME) + "\n" +
bundle.getString(PREF_AUTH_TOKEN),
Toast.LENGTH_SHORT).
show();
//Then we create the list we will use
createList();
} catch (OperationCanceledException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (AuthenticatorException e) {
Log.e(getApplicationInfo().packageName, e.getMessage(), e);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
},
null);
}
而且我得到的是沒有視覺的變化,並在DDMS這些消息:
04-18 00:59:53.187: E/net.xisberto.phonetodesktop(10488): bind failure
04-18 00:59:53.187: E/net.xisberto.phonetodesktop(10488): android.accounts.AuthenticatorException: bind failure
04-18 00:59:53.187: E/net.xisberto.phonetodesktop(10488): at android.accounts.AccountManager.convertErrorToException(AccountManager.java:1450)
04-18 00:59:53.187: E/net.xisberto.phonetodesktop(10488): at android.accounts.AccountManager.access$400(AccountManager.java:138)
04-18 00:59:53.187: E/net.xisberto.phonetodesktop(10488): at android.accounts.AccountManager$AmsTask$Response.onError(AccountManager.java:1296)
04-18 00:59:53.187: E/net.xisberto.phonetodesktop(10488): at android.accounts.IAccountManagerResponse$Stub.onTransact(IAccountManagerResponse.java:69)
04-18 00:59:53.187: E/net.xisberto.phonetodesktop(10488): at android.os.Binder.execTransact(Binder.java:339)
04-18 00:59:53.187: E/net.xisberto.phonetodesktop(10488): at dalvik.system.NativeStart.run(Native Method)
任何幫助/教程/代碼示例,可以幫助嗎?
在此先感謝。
我可以幫助你。請告訴我你是否想使用Gmail帳戶身份驗證? – 2012-04-18 05:10:37
我想訪問任務服務。 「Gmail帳戶身份驗證」是什麼意思? – Xisberto 2012-04-18 17:04:53