yandexmobile / yandexmapkit-ios

Yandex Map Kit for iOS
Other
173 stars 30 forks source link

Креши демо проекта из-за отсутствия API ключа #38

Open TRIMER opened 12 years ago

TRIMER commented 12 years ago

Тестирую демо проект (правда пока без ключа) - не отображаюся карты. Но это не главная проблема. Периодически приложение крешится, в активном режиме (не нашел закономерность), и при действии свернул/восстановил (как повторить описал дальше).

Лог:

Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x00000004
Crashed Thread:  0

Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0   YandexMapKitSample              0x0018a9c4 Startup::StartupController::fetchStartup() (basic_string.h:279)
1   YandexMapKitSample              0x0018a940 Startup::StartupController::onResumed() (StartupController.cpp:25)
2   YandexMapKitSample              0x001b192c non-virtual thunk to IosStartupData::onResumed() + 12
3   YandexMapKitSample              0x0015f300 NativeApplication::signalOnResumed() (NativeApplication.cpp:181)
4   YandexMapKitSample              0x0015f2d0 NativeApplication::onResume() (NativeApplication.cpp:120)
5   YandexMapKitSample              0x000e34a0 BaseApp::deliverEventToApplication(KDEvent const*) (BaseApp.cpp:202)
6   YandexMapKitSample              0x000e31c0 BaseApp::handleEvent(KDEvent const*) (BaseApp.cpp:213)
7   YandexMapKitSample              0x000e3198 BaseApp::mainCallback(KDEvent const*) (BaseApp.cpp:52)
8   YandexMapKitSample              0x000a2194 PALEventThreadList::pumpEventsLocked(PALEventCallbackSet*, void (*)(KDEvent const*)) (event_list.cpp:76)
9   YandexMapKitSample              0x000a3680 palDeliverEvents() (event_list.h:85)
10  YandexMapKitSample              0x000a7370 -[CoreApplication deliverEvents] (CoreApplication.mm:133)
11  CoreFoundation                  0x374341f4 -[NSObject performSelector:withObject:] + 36
12  Foundation                      0x37d4f740 __NSThreadPerformPerform + 344
13  CoreFoundation                  0x374a9acc __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 8
14  CoreFoundation                  0x374a9298 __CFRunLoopDoSources0 + 208
15  CoreFoundation                  0x374a803e __CFRunLoopRun + 646
16  CoreFoundation                  0x3742b49e CFRunLoopRunSpecific + 294
17  CoreFoundation                  0x3742b366 CFRunLoopRunInMode + 98
18  GraphicsServices                0x33bea432 GSEventRunModal + 130
19  UIKit                           0x311d7cce UIApplicationMain + 1074
20  YandexMapKitSample              0x000029aa main (main.m:17)
21  YandexMapKitSample              0x00002968 start + 32

Один из сценариев для повторения креша (iOS 5.1.1): 1 Запускаем демо приложение 2 Открываем первое демо (Аннотации на карте) 3 Сворачиваем приложение (по кнопке Home) 4 Разворачиваем приложение 5 Креш (у меня в 100% случаев)

Возможно у Вас есть какая-то информация по этой проблеме?

TRIMER commented 12 years ago

Крешится не только демо проект. Проблема наблюдается только на реальном устройстве

TRIMER commented 12 years ago

Проблема решена установкой ключа к апи. Пропишите это явно в документации. Иначе пока ключ ждешь и тестируешь без ключа создается впечатление, когда видиш креши, что библиотеку не стоит использовать

Пофиксите в библиотеке стабильные утечки памяти [NSString stringWithFormat:]

yariksmirnov commented 12 years ago

и не плохо было бы assert или исключение с описанием или хоть что-то в лог, так только по наитию нашёл решение проблемы

storoj commented 11 years ago

+1 за сообщение в лог