2010-06-15 14 views
8

Jak utworzyć link, który automatycznie spowoduje, że użytkownik śledzi użytkownika z Twittera, jeśli jest zalogowany lub wysyła go na Twittera, aby się najpierw zalogować, jeśli nie jest? Znalazłem, jak to zrobić około miesiąca lub 2 temu, ale nie mogę go znaleźć ponownie. Myślę, że to było coś podstawowego, jak link lub formularz do czegoś takiego jak twitter.com/[user]/follow.Twitter Śledź link

Sprawdziłem interfejs API, ale potrzebuję użytkownika do uwierzytelnienia się w mojej witrynie i nie chcę tego robić. Chcę tylko, aby uwierzytelniali się bezpośrednio na Twitterze i nie martwili się o to. Sposób, w jaki znalazłem, był miły i po prostu chciałbym go znaleźć.

+3

Sprawdź kilka prawidłowych odpowiedzi na poprzednie pytania, a następnie porozmawiajmy: P – meo

Odpowiedz

0

how to use twitter api in my android application to implement follow button only

Androida

http://code.google.com/p/android-hackathon-in-fukuoka/source/browse/trunk/sodefuri/src/jp/jagfukuoka/sodefuri/TimeLineActivity.java?spec=svn167&r=167

kod Snip: (I przekształca ciąg grzbietów do standardowego angielskim)

public class TimeLineActivity extends ListActivity { 
     private TwitterPreferenceManager tpm = new TwitterPreferenceManager(this); 

     private static final int FOLLOW = 1; 
     private static final CharSequence FOLLOW_LABEL = "Follow"; 

     @Override 
     protected void onCreate(Bundle savedInstanceState) { 
       super.onCreate(savedInstanceState); 

       // timeline Obtaining process 
       String screenName = getIntent().getStringExtra("screen_name"); 
       List<String> list = this.getTimeLine(screenName); 

       setListAdapter(new ArrayAdapter<String>(this, R.layout.timeline_item,list)); 
     } 

     @Override 
     public boolean onCreateOptionsMenu(Menu menu) { 
       menu.add(0, FOLLOW, 0, FOLLOW_LABEL); 
       return super.onCreateOptionsMenu(menu); 
     } 

     @Override 
     public boolean onOptionsItemSelected(MenuItem item) { 
       switch (item.getItemId()) { 
       case FOLLOW: 
         ConfigurationBuilder builder = new ConfigurationBuilder(); 
         Configuration conf = builder.setOAuthAccessToken(tpm.getAccessToken()) 
         .setOAuthAccessTokenSecret(tpm.getAccessTokenSercret()) 
         .setOAuthConsumerKey(TwitterPreferenceManager.CONSUMER_KEY) 
         .setOAuthConsumerSecret(TwitterPreferenceManager.CONSUMER_SERCRET) 
         .setDebugEnabled(true) 
         .build(); 
         Twitter twitter = new TwitterFactory(conf).getInstance(); 
         try { 
           String screen_name = getIntent().getStringExtra("screen_name"); 
           twitter.createFriendship(screen_name); 
           Toast.makeText(getApplicationContext(), "Was to follow.", Toast.LENGTH_LONG).show(); 
         } catch (TwitterException e) { 
           Toast.makeText(getApplicationContext(), e.getMessage(), Toast.LENGTH_LONG).show(); 
           e.printStackTrace(); 
         } 
         break; 

       default: 
         break; 
       } 
       return super.onOptionsItemSelected(item); 
     } 

     /** 
     * Get the time line for the specified user 
     * 
     * @param screenName 
     * @return 
     */ 
     private List<String> getTimeLine(String screenName) { 
       List<String> result = new ArrayList<String>(); 

       Twitter twitter = new TwitterFactory().getInstance(); 
       ResponseList<Status> userTimeline; 
       try { 
         userTimeline = twitter.getUserTimeline(screenName); 
         for (Status status : userTimeline) { 
           result.add(status.getText()); 
         } 
       } catch (TwitterException e) { 
         // TODO Auto-generated catch block 
         e.printStackTrace(); 
       } 
       return result; 
     } 
} 

iPhone

http://www.chrismaddern.com/twitter-follow-button-for-ios-iphone-code/

Oto sposób, jak todo

FollowMeButton mogą być tworzone w konstruktorze Interface dodając UIButton i zmieniając to klasa FollowMeButton lub w kodzie za pomocą niestandardowego inicjalizatora:

[self.view addSubview:[[FollowMeButton alloc] initWithTwitterAccount:@"chrismaddern" atOrigin:CGPointMake(205, 248) isSmallButton:YES]]; 

Dostępne są tryby z dwoma rozmiarami poprzez ustawienie isSmallButton w inicjatorze lub późniejszą zmianę właściwości isSmall obiektu.