2011-08-09 17 views
2

これについては、ドキュメントと多くのフォーラム投稿を読んでいますが、Sharekitを使用している間は、許可されたユーザーのユーザー名は取得できません。私はoAuthを使用しています。Sharekitを使用してTwitterユーザー名を取得する方法

ユーザーは認証を受け、状態の更新をTwitterに投稿できます。 Sharekitのためのドキュメントは、ユーザー名の取得についてはこれを言う:

アクセスストアドログイン

Webサービスは、基本認証を使用している場合

が、あなたはおそらく共有アイテムと一緒にユーザー名とパスワードを送信する必要があります。ユーザーが認証されると、資格情報が保存され、簡単にアクセスできます。

// To retrieve a stored value: 
// self = your service class 
// In this example, let's retrieve the username and password: 
NSString *username = [self getAuthValueForKey:@"username"]; 
NSString *password = [self getAuthValueForKey:@"password"]; 

//The keys used to retrieve the data are the same keys you used 
// when defining your login form: 
- (NSArray *)authorizationFormFields 
{ 
    return [NSArray arrayWithObjects: 
      [SHKFormFieldSettings label:@"Username" 
              key:@"username" <--- 
              type:SHKFormFieldTypeText 
              start:nil], 
      [SHKFormFieldSettings label:@"Password" 
              key:@"password" <--- 
              type:SHKFormFieldTypePassword 
              start:nil],   
      nil]; 
} 

私は、ユーザー名を返す

NSString *username = [SHK getAuthValueForKey:@"username"]; 

NSString *username = [SHKTwitter getAuthValueForKey:@"username"]; 

を使用してみましませんが、どちらもいます。

誰でもこの情報を取得できましたか?どんな助けも大歓迎です。

答えて

1

あなたはtwitterが基本認証を使用していないと言っています。それはoauthを使用しています。あなたのアプリは決して認証からユーザー名やパスワードを取得することはありません、それはoauthトークンのみを取得するので、ユーザー名はログインデータベースに保存されません。

ユーザー名が必要な場合は、適切なAPI呼び出しを使用してユーザー名を照会する必要があります。

あなたはこの問題はreborn ShareKitに解決され、ユーザーの名前や他のもの

+0

返信いただきありがとうございます。私は、上記のコードを使用して認証が行われたときから、Sharekitによってユーザー名を取得できると思ったのですか?どのようにこれが動作するかわからない。 – Peetz

+0

ありがとうございます。私はこのAPIを使用して他の資格情報と共にTwitterユーザー名を得ました –

0

Twitter OAuthはユーザー名を返しますが、ShareKitでは自動的に保存されません。 SHKOAuthSharer.mに

- (void)tokenAccessTicket:(OAServiceTicket *)ticket didFinishWithData:(NSData *)data 

とユーザー名、またはあなたがresponseDictionaryオブジェクトから必要な他のデータを取得して保存します。それを自分で見つけるには、にアクセスしてください。 たとえば、ユーザ名は[responseDictionary objectForKey:@"screen_name"]で取得できます。その後、NSUserDefaultsまたは後で取得できる他のオブジェクトに保存します。もちろん、これは次回ShareKitを使用してTwitterにログインするときにのみ発生します。 乾杯!

関連する問題