簡體   English   中英

當我從經度和緯度創建位置字符串時,為什么我在iOS中收到此鏈接器錯誤?

[英]Why am I getting this linker error in iOS when I create location strings from longitude and latitude?

我有位置管理器的經度和緯度,現在我試圖反轉地理代碼,將該信息轉換為地址字符串。 我發現下面的代碼,據稱會這樣做,但我收到鏈接器錯誤。 我認為這意味着我錯過了一些框架或其他東西。 我無法找到答案。 有人可以幫忙嗎?

錯誤:

Apple Mach-O Linker Error
"_KABPersonAddressZIPKey", referenced from:

對於我想要生成的每個字符串等等。

 CLGeocoder *geocoder = [[CLGeocoder alloc] init];
 CLLocation *newLocation = [[CLLocation alloc]initWithLatitude:latitude
                                                        longitude:longitude];
            [geocoder reverseGeocodeLocation:newLocation completionHandler:^(NSArray *placemarks, NSError *error)

            {  
                       if (error) {
                           NSLog(@"Geocode failed with error: %@", error);
                           return;
                       }

                       if (placemarks && placemarks.count > 0)
                       {
                           CLPlacemark *placemark = placemarks[0];

                           NSDictionary *addressDictionary = placemark.addressDictionary;

                           NSString *address = [addressDictionary objectForKey:(NSString *)kABPersonAddressStreetKey];
                           NSString *city = [addressDictionary objectForKey:(NSString *)kABPersonAddressCityKey];
                           NSString *state = [addressDictionary objectForKey:(NSString *)kABPersonAddressStateKey];
                           NSString *zip = [addressDictionary  objectForKey:(NSString *)kABPersonAddressZIPKey];

                           NSLog(@"%@ %@ %@ %@", address,city, state, zip);

                       }
            }
    ];

在文檔中查找kABPersonAddressStreetKey:

http://developer.apple.com/library/ios/#documentation/AddressBook/Reference/ABPersonRef_iPhoneOS/Reference/reference.html

它說道,它位於AddressBook框架的頂層。 所以你需要鏈接到那個。

將以下框架添加到項目中,然后導入它。

AddressBook.framework
AddressBookUI.framework

在此輸入圖像描述

您發布的代碼使用了AddressBook框架中的一些常量。 您需要將AddressBook框架添加到項目目標。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM