2015-01-27 8 views
2

Я хочу сделать многоуровневый офлайн-поиск в моем приложении. Я следил за указаниями на официальной странице Skobbler, и только разница в том, что я не загрузил карту Франции, а вместо карты Вайоминга.SKmaps не удалось выполнить многоуровневый поиск

Оффлайн код пакета для этого USWY если я прав.

-(void)prepareForSearch{ 
[SKSearchService sharedInstance].searchServiceDelegate = self; 
[SKSearchService sharedInstance].searchResultsNumber = 500; 
_listLevel = SKCountryList; 

_searchSettings = [SKMultiStepSearchSettings multiStepSearchSettings]; 
_searchSettings.listLevel = _listLevel; 
_searchSettings.offlinePackageCode = @"USWY"; 
_searchSettings.parentIndex=-1; 
} 


- (IBAction)searchAction:(UIButton *)sender { 

_searchSettings.searchTerm = [NSString stringWithFormat:@"%@",_searchBar.text]; 
[[SKSearchService sharedInstance]startMultiStepSearchWithSettings:_searchSettings]; 

} 

-(void)searchService:(SKSearchService *)searchService didRetrieveMultiStepSearchResults:(NSArray *)searchResults 
{ 
if ([searchResults count] !=0 && _listLevel<SKInvalidListLevel){ 
    if (_listLevel == SKCountryList) { 
     _listLevel = SKCityList; 
    } 
    else{ 
     _listLevel++; 
    } 
    SKSearchResult *searchResult = searchResults[0]; 
    SKMultiStepSearchSettings* multiStepSearchObject = [SKMultiStepSearchSettings multiStepSearchSettings]; 
    multiStepSearchObject.listLevel = _listLevel++; 
    multiStepSearchObject.offlinePackageCode = _searchSettings.offlinePackageCode; 
    multiStepSearchObject.searchTerm = _searchBar.text; 
    multiStepSearchObject.parentIndex = searchResult.identifier; 
    [[SKSearchService sharedInstance]startMultiStepSearchWithSettings:multiStepSearchObject]; 
} 
} 


-(void)searchServiceDidFailToRetrieveMultiStepSearchResults:(SKSearchService *)searchService 
{ 
NSLog(@"Multi Level Search failed"); 
} 

Независимо от того, что я помещал в качестве поискового запроса, я получаю сообщение «MultiLevel Search Failed».

на этом скриншоте, вы можете видеть, что мой пакет карт для Вайоминга включен в мой SKMaps.bundle: (Также, если кто-нибудь может ответить мне на это: Versioning был другим в моем приложении и в папке симулятора в тесте приложение, откуда я скачал автономный пакет. Таким образом, для целей тестирования, я сделал две папки и положить пакет Вайоминга в обоих из них (20140807 и 20140910). Существуют ли какие-либо правила, касающиеся этого?)

enter image description here

В чем может быть проблема?

ответ

2

Хорошо, через несколько дней мне удалось найти источник проблемы.

Во-первых, я узнал, какую версию я использую, и это 20140910.

Во-вторых, почему-то вся папка, содержащая карты не была признана. Поэтому я взял весь SKMaps.bundle вместе с некоторыми предварительно собранными картами из демонстрационного приложения, предоставленными командой Skobbler, и поместил его в мой проект, и теперь все работает нормально.

 Смежные вопросы

  • Нет связанных вопросов^_^