2014-05-09 88 views
1

我正在開發一個應用程序,該應用程序可以使用socialauth庫在linkedin,facebook和twitter上共享內容。它可以在Facebook上正常工作,但不能與twitter和linkedin共享。我得到一個警告,「供應商不支持」的 是代碼我使用如何使用社交認證庫共享linkedin和twitter

socialauthadapter.authorize(this, Provider.TWITTER); 
...... 
private final class ResponseListener implements DialogListener { 
    public void onComplete(Bundle values) { 

     try { 
      socialauthadapter 
        .updateStory(
          headtv.getText().toString().trim(), 
          "Africa Progress Panel", 
          "Download APP .", 
          "This year's report calls on African leaders to tackle inequality and demands global community tackle. Let your voice be heard. Download APP", 
          "http://africaprogresspanel.org", 
          Global.SERVER_MAIN_URI 
          + "uploads/pictures/reports/subtopics/" 
          + subtopic_photo, 
          new MessageListener()); 
     } catch (UnsupportedEncodingException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
    } 

    @Override 
    public void onBack() { 
     // TODO Auto-generated method stub 

    } 

    @Override 
    public void onCancel() { 
     // TODO Auto-generated method stub 

    } 

    @Override 
    public void onError(SocialAuthError arg0) { 
     // TODO Auto-generated method stub 

    } 
} 

// To get status of message after authentication 
public class MessageListener implements SocialAuthListener<Integer> { 

    @Override 
    public void onError(SocialAuthError arg0) { 
     // TODO Auto-generated method stub 

    } 

    @Override 
    public void onExecute(String arg0, Integer t) { 

     Integer status = t; 
     if (status.intValue() == 200 || status.intValue() == 201 ||status.intValue() == 204) 
      Toast.makeText(ReportDetails.this, "Message posted",Toast.LENGTH_LONG).show(); 
    } 

} 

,並在logcat中這是我看到的

Provider Not Supported 

我怎麼能去這個

NOTE: 

- 所有密鑰都正確

+0

解決了嗎? – seema

回答

1

您可以試試我的圖書館進行社交認證和分享:https://github.com/antonkrasov/AndroidSocialNetworks

這真的很容易使用,只需建立片段與啓用的社交網絡,你需要:

mSocialNetworkManager = (SocialNetworkManager) getFragmentManager().findFragmentByTag(SOCIAL_NETWORK_TAG); 

if (mSocialNetworkManager == null) { 
    mSocialNetworkManager = SocialNetworkManager.Builder.from(getActivity()) 
      .twitter(<< TWITTER API TOKEN >>, << TWITTER API SECRET >>) 
      .linkedIn(<< LINKED_IN API TOKEN >>, << LINKED_IN API SECRET >>, "r_basicprofile+rw_nus+r_network+w_messages") 
      .facebook() 
      .googlePlus() 
      .build(); 
    getFragmentManager().beginTransaction().add(mSocialNetworkManager, SOCIAL_NETWORK_TAG).commit(); 
} 

現在你可以分享:

mSocialNetworkManager.getTwitterSocialNetwork().requestPostMessage(message, 
      new DemoOnPostingCompleteListener(message) 
    ); 

private class DemoOnPostingCompleteListener implements OnPostingCompleteListener { 
    private String mmMessage; 

    private DemoOnPostingCompleteListener(String message) { 
     mmMessage = message; 
    } 

    @Override 
    public void onPostSuccessfully(int socialNetworkID) { 
     hideProgress(); 

     handleSuccess("Success", "Message: '" + mmMessage + "' successfully posted."); 
    } 

    @Override 
    public void onError(int socialNetworkID, String requestID, String errorMessage, Object data) { 
     hideProgress(); 
     handleError(errorMessage); 
    } 
} 

請查看Github上回購更多信息,謝謝:)

相關問題