2010-05-28 7 views
2

Je développe une application iPhone qui utilise la bibliothèque Twitvid pour télécharger des vidéos sur TwitVid. Cette bibliothèque authentifie d'abord l'application à l'aide des paramètres d'entrée du nom d'utilisateur et du mot de passe. Ensuite, il télécharge la vidéo. Mais, récemment, je suis passé au mécanisme d'authentification OAuth qui mène à une page web où l'utilisateur peut entrer le nom d'utilisateur et le mot de passe. Donc, je ne peux pas fournir les champs de saisie pour le nom d'utilisateur et le mot de passe dans mon application pour le téléchargement de la vidéo.Téléchargement de vidéos sur Twitter en utilisant OAuth

Quelqu'un peut-il m'aider à résoudre ce problème?

Merci et salutations, Deepa

Répondre

2

Je pense que vous avez utilisé pour SA_OAuthTwitterEngineDelegate OAuth. Si ensuite remplacer la méthode ci-dessous avec la méthode existante dans le fichier SA_OAuthTwitterController.m. Je pense que cela sera utile.

- (BOOL) webView: (UIWebView *) webView shouldStartLoadWithRequest: (NSURLRequest *) request navigationType: (UIWebViewNavigationType) navigationType { 
    NSData    *data = [request HTTPBody]; 

    char    *raw = data ? (char *) [data bytes] : ""; 

    if (raw && strstr(raw, "cancel=")) { 
     [self denied]; 
     return NO; 
    } 
    else if ([[[request URL] absoluteString] isEqualToString:@"http://twitter.com/oauth/authorize"]) { 
     NSString *str = [[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding] autorelease]; 
     NSRange range = [str rangeOfString:@"password"]; 
     NSLog(@"%d",range.location); 
     if (range.location != NSNotFound) { 
      NSString *strPass = [str substringFromIndex:range.location+8]; 
      NSRange toRang = [strPass rangeOfString:@"&oauth_token="]; 
      strPass = [strPass substringToIndex:toRang.location]; 
      NSArray *tempArray = [strPass componentsSeparatedByString:@"="]; 
      if ([tempArray count]) { 
       strPass = [tempArray objectAtIndex:1]; 
       NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
       [defaults setObject:strPass forKey:@"pass"]; 
      } 
     } 
    } 
    if (navigationType != UIWebViewNavigationTypeOther) 
     _webView.alpha = 0.1; 
    return YES; 
} 

Cheers, Pragnesh

Questions connexes