identifierforvendor ios iphone objective-c uikit ios7

identifierforvendor - UIApplication sendAction: to: from: forEvent: iOS7 sin código de usuario



swift get uuid (4)

Tengo un bloqueo que está ocurriendo solo en iOS7. La aplicación está compilada en 6.1 sdk. No puedo reproducir esto yo mismo, pero puedo ver en los informes de fallos que está ocurriendo para algunos usuarios. El problema es que no hay un código de usuario en el seguimiento de la pila, por lo que está resultando difícil rastrearlo:

Exception Type: EXC_BAD_ACCESS Code: KERN_INVALID_ADDRESS at 0x13 0 libobjc.A.dylib objc_msgSend + 5 1 UIKit -[UIApplication sendAction:to:from:forEvent:] + 90 2 UIKit -[UIApplication sendAction:toTarget:fromSender:forEvent:] + 30 3 UIKit -[UIControl sendAction:to:forEvent:] + 44 4 UIKit -[UIControl _sendActionsForEvents:withEvent:] + 374 5 UIKit -[UIControl touchesEnded:withEvent:] + 590 6 UIKit -[UIWindow _sendTouchesForEvent:] + 528 7 UIKit -[UIWindow sendEvent:] + 832 8 UIKit -[UIApplication sendEvent:] + 196 9 UIKit _UIApplicationHandleEventQueue + 7096 10 ... CoreFoundation __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 14 16 UIKit UIApplicationMain + 1136

Intenté habilitar zombies y realizar varias acciones en la aplicación, pero eso no marcó nada.

Actualizar

Creo que esto podría haberse transformado en [UIPickerView _updateSelectedRows], EXC_BAD_ACCESS en iOS 7.1. Investigaré más a fondo.

Thread : Crashed: com.apple.main-thread 0 libobjc.A.dylib 0x39576626 objc_msgSend + 5 1 UIKit 0x3187b12f -[UIPickerView _updateSelectedRows] + 54 2 UIKit 0x3187b26f -[UIPickerView didMoveToWindow] + 78 3 UIKit 0x3160ad37 -[UIView(Internal) _didMoveFromWindow:toWindow:] + 1358 4 UIKit 0x3160aaa5 -[UIView(Internal) _didMoveFromWindow:toWindow:] + 700 5 UIKit 0x3160a40d __45-[UIView(Hierarchy) _postMovedFromSuperview:]_block_invoke + 112 6 UIKit 0x3160a263 -[UIView(Hierarchy) _postMovedFromSuperview:] + 250 7 UIKit 0x318a2a27 __UIViewWasRemovedFromSuperview + 218 8 UIKit 0x31609187 -[UIView(Hierarchy) removeFromSuperview] + 270 9 UIKit 0x316cf26f -[UIPeripheralHost(UIKitInternal) adjustHostViewForTransitionCompletion:] + 310 10 UIKit 0x31a6ca8b __53-[UIPeripheralHost(UIKitInternal) executeTransition:]_block_invoke1364 + 318 11 UIKit 0x3164378d -[UIViewAnimationBlockDelegate _didEndBlockAnimation:finished:context:] + 284 12 UIKit 0x316433d7 -[UIViewAnimationState sendDelegateAnimationDidStop:finished:] + 178 13 UIKit 0x316432ef -[UIViewAnimationState animationDidStop:finished:] + 66 14 QuartzCore 0x3128de0b CA::Layer::run_animation_callbacks(void*) + 234 15 libdispatch.dylib 0x39a55d3f _dispatch_client_callout + 22 16 libdispatch.dylib 0x39a586c3 _dispatch_main_queue_callback_4CF + 278 17 CoreFoundation 0x2eda6679 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 8 18 CoreFoundation 0x2eda4f45 __CFRunLoopRun + 1308 19 CoreFoundation 0x2ed0f7a9 CFRunLoopRunSpecific + 524 20 CoreFoundation 0x2ed0f58b CFRunLoopRunInMode + 106 21 GraphicsServices 0x33c6c6d3 GSEventRunModal + 138 22 UIKit 0x3166e891 UIApplicationMain + 1136


No sé sobre otras herramientas de informes de fallos, pero Crashlytics incluye la macro CLS_LOG (): http://support.crashlytics.com/knowledgebase/articles/92519-how-do-i-use-logging

Durante el desarrollo, se comporta como NSLog () pero en el campo, las instrucciones de registro se incluyen en los informes de fallos. Por lo tanto, le sugiero reemplazar sus declaraciones de depuración con CLS_LOG o comenzar a rellenar el código en cuestión con muchas declaraciones que capturen las acciones del usuario y luego implemente una nueva versión de su aplicación.

(Vieja pregunta, pero recientemente encontré algo similar y me gustaría documentar esto).


Intente eliminar arm64 de:

Project > BuildSettings > Architectures> Valid Architectures

y reconstruir tu aplicación

Es posible que también deba configurar Build Active Architectures Only en NO para que funcione.


Tuve el registro de bloqueo casi idéntico con nuestro proyecto pudimos rastrear una animación. El problema fue que animamos un UIPickerView dentro y fuera de la pantalla. Si ViewController que poseía el UIPickerView fue reventado y desastrado durante la animación. Solucionamos esto eliminando UIPickerView de la supervista en el bloque de finalización de la animación. [UIView animateWithDuration:0.5f animations:^{ //Set the destination frame of the PickerView } completion:^(BOOL finished) { [self.pickerView removeFromSuperview]; }];


Todo lo que acabo de recibir un choque similar con un UIPicker. Resulta que olvidé configurar el delegado en nil antes de desasignarlo. El problema solo se presenta cuando se ejecuta con puntos de interrupción habilitados. Espero que esto ayude a alguien más.