簡體   English   中英

使用GDK檢索Google Glass中的帳戶

[英]Retrieving account in google glass using GDK

我的玻璃器皿需要用戶帳戶憑據,因此我使用來驗證用戶身份。 我已經成功地為此插入了用戶帳戶。 但是,當我取回帳戶時,我得到了這個

04-16 08:57:36.580: W/System.err(22726): android.accounts.OperationCanceledException
04-16 08:57:36.580: W/System.err(22726):    at android.accounts.AccountManager$AmsTask.internalGetResult(AccountManager.java:1503)
04-16 08:57:36.580: W/System.err(22726):    at android.accounts.AccountManager$AmsTask.getResult(AccountManager.java:1531)
04-16 08:57:36.580: W/System.err(22726):    at android.accounts.AccountManager$AmsTask.getResult(AccountManager.java:1452)
04-16 08:57:36.580: W/System.err(22726):    at info.genix.glass.MainActivity$1.run(MainActivity.java:108)
04-16 08:57:36.580: W/System.err(22726):    at android.accounts.AccountManager$11.run(AccountManager.java:1427)
04-16 08:57:36.580: W/System.err(22726):    at android.os.Handler.handleCallback(Handler.java:733)
04-16 08:57:36.580: W/System.err(22726):    at android.os.Handler.dispatchMessage(Handler.java:95)
04-16 08:57:36.580: W/System.err(22726):    at android.os.Looper.loop(Looper.java:149)
04-16 08:57:36.580: W/System.err(22726):    at android.app.ActivityThread.main(ActivityThread.java:5045)
04-16 08:57:36.580: W/System.err(22726):    at java.lang.reflect.Method.invokeNative(Native Method)
04-16 08:57:36.580: W/System.err(22726):    at java.lang.reflect.Method.invoke(Method.java:515)
04-16 08:57:36.580: W/System.err(22726):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
04-16 08:57:36.580: W/System.err(22726):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:602)
04-16 08:57:36.580: W/System.err(22726):    at dalvik.system.NativeStart.main(Native Method)

我已經做了同樣的解決方案從阿蘭來到這里 但是仍然出現相同的錯誤。

碼:

    AccountManager accountManager = AccountManager.get(this);
    // Use your Glassware's account type.
    Account[] accounts = accountManager.getAccountsByType(ACCOUNT_TYPE);//Already approved by google
    if (accounts != null && accounts.length > 0) {
        Log.d(TAG, "MainActivity Account");
        for (int i =0;i<accounts.length;i++)
        {     
            accountManager.getAuthToken(accounts[i], "randomType", null, this, new AccountManagerCallback<Bundle>() {
                public void run(AccountManagerFuture<Bundle> future) {
                     try {
                          Log.d(TAG, "MainActivity AccountManagerFuture");
                          String email  = future.getResult().getString("email");
                          String uname  = future.getResult().getString("uname");
                          Log.d(TAG, email+" "+dbname+" "+uname);
                          String token = future.getResult().getString(AccountManager.KEY_AUTHTOKEN);
                          Log.d("token","token :-"+ token);
                            // Use the token.
                          } catch (Exception e) {
                                // Handle exception.
                                e.printStackTrace();
                          }
                 }
            }, null);
        }
    }

抱歉耽擱了。 原因之一可能是,您提交APK進行審核時使用的證書與用於測試的證書不同。 您可以嘗試執行以下操作:

  1. 關閉MyGlass上的Glassware,然后等待Glass同步並從設備中刪除Glassware。
  2. 卸載仍在設備上的Glassware版本( adb uninstall <package name> )。
  3. 打開MyGlass上的玻璃器皿。 等待Glass同步並安裝它。
  4. 這應該已經可以了。 如果您有新版本,則仍然可以在本地部署,但是請確保使用相同的證書/密鑰。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM