0

私のアプリでは、ABRecordRef インスタンスを作成し、新しい連絡先を作成しています。だから私はソーシャルプロファイルiDを設定するためにこれらのコード行を試しました

ABMutableMultiValueRef fbvalue = ABMultiValueCreateMutable(kABMultiStringPropertyType);
ABMultiValueAddValueAndLabel(fbvalue, (__bridge CFTypeRef)[linedevidebydel objectAtIndex:linedevidebydel.count - 1], kABPersonSocialProfileServiceFacebook, NULL);
ABRecordSetValue(newPerson, kABPersonSocialProfileProperty, fbvalue,nil);
            CFRelease(fbvalue);

しかし、最後の行でエラーが発生します

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFString count]: unrecognized selector sent to instance 0x17631380'

誰でも私を助けてくれませんか...事前にありがとう

4

1 に答える 1

1

U は、ソーシャル プロファイル プロパティとしてプロパティを持つ辞書を使用する必要があります。このように使用します。

   ABMutableMultiValueRef multiSocial =  ABMultiValueCreateMutable(kABMultiDictionaryPropertyType);
   NSMutableDictionary *socialDictionary = [[NSMutableDictionary alloc]init]; //use this for other profile, twitter, linkedIn , etc 

  [socialDictionary setObject:@"happy.coding@ymail.com" forKey:(NSString *) kABPersonSocialProfileServiceFacebook];

  ABMultiValueAddValueAndLabel(multiSocial, socialDictionary, kABPersonSocialProfileServiceFacebook, NULL);
  ABRecordSetValue(newPerson, kABPersonAddressProperty, multiSocial,&error);


これがあなたを助けることを願っています

于 2013-09-06T10:59:49.600 に答える