2013-11-15 64 views
1

任何人都可以帮助我使用LinkedIn API获取LinkedIn联系人或朋友或连接列表linkedin-j-android.jar.I能够获取所有当前用户配置文件信息,但不知道如何获取联系人或朋友列表。我在SO和Google上发现了很多,但仍然没有得到正确的解决方案。请有人帮我解决这个问题。为此我尝试了这个。如何在Android中获取LinkedIn联系人或好友列表?

ProgressDialog progressDialog = new ProgressDialog(this); 
    LinkedinDialog d = new LinkedinDialog(this, progressDialog); 
    d.show(); 

    // set call back listener to get oauth_verifier value 
    d.setVerifierListener(new OnVerifyListener() { 
     @Override 
     public void onVerify(String verifier) { 
      try { 
       accessToken = LinkedinDialog.oAuthService 
         .getOAuthAccessToken(LinkedinDialog.liToken, 
           verifier); 
       LinkedinDialog.factory.createLinkedInApiClient(accessToken); 
       client = factory.createLinkedInApiClient(accessToken); 
       // client.postNetworkUpdate("Testing by Mukesh!!! LinkedIn wall post from Android app"); 
       Loggger.i(TAG, "ln_access_token: " + accessToken.getToken()); 
       Loggger.i(TAG, 
         "ln_access_token: " + accessToken.getTokenSecret()); 
       com.google.code.linkedinapi.schema.Person profile = client 
         .getProfileForCurrentUser(EnumSet.of(
           ProfileField.ID, ProfileField.FIRST_NAME, 
           ProfileField.LAST_NAME, 
           ProfileField.CONNECTIONS)); 
       linkedInID = profile.getId(); 

       Loggger.i(TAG, "PersonID : " + linkedInID); 
       linkedInFirstName = profile.getFirstName(); 
       linkedInLastName = profile.getLastName(); 
       Connections = profile.getConnections(); 
       Log.e(TAG, "CONNECTION : " + Connections); 

       List<Contact> contactList; 
       contactList = (ArrayList<Contact>) getIntent() 
         .getSerializableExtra("contact"); 
       for (int i = 0; i < contactList.size(); i++) { 
        final Contact bean = contactList.get(i); 
        Log.d("Custom-UI", 
          "Display Name = " + bean.getDisplayName()); 
        Log.d("Custom-UI", 
          "First Name = " + bean.getFirstName()); 
        Log.d("Custom-UI", "Last Name = " + bean.getLastName()); 
        Log.d("Custom-UI", "Contact ID = " + bean.getId()); 
        Log.d("Custom-UI", 
          "Profile URL = " + bean.getProfileUrl()); 
        Log.d("Custom-UI", 
          "Profile Image URL = " 
            + bean.getProfileImageURL()); 
        Log.d("Custom-UI", "Email = " + bean.getEmail()); 
       } 

       Loggger.e(TAG, "connections : " + Connections); 
       Loggger.e(TAG, "linkedin firstname : " + linkedInFirstName); 
       Loggger.e(TAG, "linkedin lastname : " + linkedInLastName); 



      } catch (Exception e) { 
       e.printStackTrace(); 
      } 
     } 
    }); 

    // set progress dialog 
    progressDialog.setMessage("Loading..."); 
    progressDialog.setCancelable(true); 
    progressDialog.show(); 

回答

0

1.Refer这个链接:https://github.com/Hafiz-Waleed-Hussain/EasyLinkedInAndroid作为库

2.In主要的Java布局使用:

_EasyLinkedIn = EasyLinkedIn.getInstance(this, "api key", 
       "secret key", 
       "https://github.com/Hafiz-Waleed-Hussain/EasyLinkedInAndroid", 
       "", ""); 

    _EasyLinkedIn.authorize(MainActivity.this, new Callback() { 

     @Override 
     public void onSucess(Object data) { 

      String fields = "id,first-name,headline"; 

      _EasyLinkedIn.getUserInfo(this, this, fields); 

      String fields1 = "id"; 

      String url = "https://api.linkedin.com/v1/people/~/connections:(id=Gcn6gB9aCj)?format=json&oauth2_access_token=" 
        + EasyLinkedIn.getAccessToken(); 
      _EasyLinkedIn.getConnections(this, this, fields1); 

     } 

     @Override 
     public void onFailure() { 

     } 
    }); 

onDownloadingComplete()方法的使用日志来打印对象放慢参数

+0

你有链接以获得在简单的Java类的本机应用LinkedIn的访问令牌。记住没有活动课? –

相关问题