2016-11-29 8 views
-1

私のアプリでは、1つのボタンをタップすると、whatsappのような電話の連絡先をすべて表示する必要があります...アドレスブックフレームワークでこれを達成するには?それとも私たちは、接触フレームワークを使用して連絡先を取得することができますiosのシステムフレームワークを使用してiPhoneの連絡先を表示

+0

[オンラインでたくさんの例があります](https://www.google.com.kw/sea​​rch?rlz=1C5CHFA_enKW556KW556&espv=2&q=import+contacts+programmatically+ios&oq=import+contacts+programmatically+ios&gs_l= serp.3 ... 8379.16207.0.16443.9.9.0.0.0.0.208.795.0j2j2.4.0 .... 0 ... 1c.1.64.serp.5.3.585 ... 0i22i30k1j0i7i30k1j0i7i5i30k1.1GZZr9YVwOo)あなたの前で検索してくださいここに投稿.. –

+0

うん、それは動作します!ありがとう – Sivagami

+0

@SivagamiSundari私の答えがあなたのために役立つなら、それは他のユーザーのために役立つので、それは正しい印を付けてください。 –

答えて

0

...すべてのデバイスの連絡先を表示するには、任意の他のフレームワークを使用することができます。工程 - >

  1. 以下contact.frameworkとcontactUI.frameworkを追加します。あなたのアプリのバンドルで。
  2. あなたの.hファイルに2つのファイルを追加します。流れるコード

    -(void)loadContactList 
    { 
    

    を追加

    連絡先のインポート/ Contacts.h

    輸入ContactsUI/ContactsUI.h

  3. を@try {

    CNAuthorizationStatus status = [CNContactStore authorizationStatusForEntityType:CNEntityTypeContacts]; 
    
    
    if(status == CNAuthorizationStatusDenied || status == CNAuthorizationStatusRestricted) 
    

    {

      NSLog(@"access denied"); 
    
         } 
         else 
         { 
          //Create repository objects contacts 
          CNContactStore *contactStore = [[CNContactStore alloc] init]; 
    
          //Select the contact you want to import the key attribute (https://developer.apple.com/library/watchos/documentation/Contacts/Reference/CNContact_Class/index.html#//apple_ref/doc/constant_group/Metadata_Keys) 
    
          NSArray *keys = [[NSArray alloc]initWithObjects:CNContactIdentifierKey, CNContactEmailAddressesKey, CNContactBirthdayKey, CNContactImageDataKey, CNContactPhoneNumbersKey,CNContactViewController.descriptorForRequiredKeys,nil]; 
    
          // Create a request object 
          CNContactFetchRequest *request = [[CNContactFetchRequest alloc] initWithKeysToFetch:keys]; 
          request.predicate = nil; 
    
          [contactStore enumerateContactsWithFetchRequest:request 
                     error:nil 
                   usingBlock:^(CNContact* __nonnull contact, BOOL* __nonnull stop) 
          { 
           // Contact one each function block is executed whenever you get 
           NSString *phoneNumber = @""; 
           if(contact.phoneNumbers) 
            phoneNumber = [[[contact.phoneNumbers firstObject] value] stringValue]; 
    
           NSLog(@"phoneNumber = %@", phoneNumber); 
           NSLog(@"givenName = %@", contact.givenName); 
           NSLog(@"familyName = %@", contact.familyName); 
           NSLog(@"email = %@", contact.emailAddresses); 
    
    
           [contactList addObject:contact]; 
          }]; 
         } 
    
    
        } @catch (NSException *exception) { 
         NSLog(@"Exception:%@",exception.reason); 
        } 
        } 
    

コール負荷またはビューが表示されなかったビューで、この方法。

関連する問題