2014-02-06 42 views
1
盒API V2当前用户的usersinfo

请帮我在获得用户的详细信息在BoxApi V2当前用户为Android我想要检索的Android

的代码,我现在用的是用户的详细信息如下:

protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
     super.onActivityResult(requestCode, resultCode, data); 
     BoxAndroidClient client = null; 
     if (Activity.RESULT_OK != AUTH_REQUEST) { 
      Toast.makeText(this, "fail", Toast.LENGTH_LONG).show(); 
     } else { 
      BoxAndroidOAuthData oauth = data 
        .getParcelableExtra(OAuthActivity.BOX_CLIENT_OAUTH); 

      BoxAndroidOAuthData moath = data 
        .getParcelableExtra(OAuthActivity.USER_SERVICE); 
      client = new BoxAndroidClient(HelloWorldApplication.CLIENT_ID, 
        HelloWorldApplication.CLIENT_SECRET, null, null); 
      client.authenticate(oauth); 

      accestoken = oauth.getAccessToken().toString(); 
      System.out.println("AUTHDATA" + oauth.getAccessToken().toString());// client.getUsersManager().getCurrentUser(requestObj).toString() 
      // + oauth.getAccessToken().toString()); 
      BoxUser user = new BoxUser(); 
      System.out.println("ID" + user.getId()); 
      if (client == null) { 
       Toast.makeText(this, "fail", Toast.LENGTH_LONG).show(); 
      } else { 
       ((HelloWorldApplication) getApplication()).setClient(client); 
       Toast.makeText(this, "authenticated", Toast.LENGTH_LONG).show(); 

      } 
     } 

     BoxDefaultRequestObject requestObject = null; 
     List<BoxUser> userList = null; 
     try { 
      userList = client.getUsersManager().getAllEnterpriseUser(
        requestObject, null); 
     } catch (BoxRestException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } catch (BoxServerException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } catch (AuthFatalFailureException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
     for (BoxUser usr : userList) { 
      System.out.println("Addr: " + usr.getAddress()); 
      System.out.println("Name : " + usr.getName()); 
      System.out.println("Login : " + usr.getLogin()); 
     } 

    } 

我收到异常,因为networkonmainthreadexception ...
任何人可以帮我吗?

回答

1

获取当前用户信息在原始API与调用做GET /用户/我

不知道是什么样子了Java,但可能更多的东西一样:

user = client.getUsersManager().getCurrentUser 
+0

我已经尝试,但IAM没有得到解决方案.............. – user2530663

+0

可以任何身体plz帮助我.............. – user2530663

0

确保您的访问令牌是最新的。另外,在看你的代码,你为什么要设置

BoxDefaultRequestObject requestObject = null; 

而是做:

BoxDefaultRequestObject requestObject = new BoxDefaultRequestObject() 

否则盒库会得到一个空指针异常。它从请求对象获取JSON解析器。

让我知道这是否工作。