Search code examples
c#iosxamarinabaddressbookaddressbookui

Crash when picking a contact from address book in Xamarin iOS 8


I have been experiencing a crash in my app when I select a contact from the address book in the simulator. I’m getting a similar crash when I use the QuickContacts sample. These are the steps after starting the QuickContacts app in the simulator:

  1. Select Display Picker
  2. Select John Appleseed
  3. Select the first mobile number

The app crashes with the stack trace below. Has anyone else experienced a similar problem? Is there a workaround? Any help would be much appreciated.

This is my Xamarin setup:

  • Xamarin Studio Version 5.9.3 (build 1)
  • Runtime:
    • Mono 4.0.1 ((detached/ed1d3ec)
    • GTK+ 2.24.23 (Raleigh theme)

Apple Developer Tools

  • Xcode 6.3.2 (7718)
  • Build 6D2105

Xamarin.iOS

  • Version: 8.10.1.64 (Indie Edition)
  • Hash: e6ebd18
  • Branch: master
  • Build date: 2015-05-21 21:55:09-0400

Stack Trace:

2015-06-04 13:30:50.664 QuickContacts[1322:44259] critical: Stacktrace:

2015-06-04 13:30:50.664 QuickContacts[1322:44259] critical:   at <unknown> <0xffffffff>
2015-06-04 13:30:50.664 QuickContacts[1322:44259] critical:   at (wrapper managed-to-native) AddressBook.ABRecord.ABRecordCopyValue (intptr,int) <IL 0x0002e, 0xffffffff>
2015-06-04 13:30:50.686 QuickContacts[1322:44259] critical:   at AddressBook.ABRecord.CopyValue (int) [0x00000] in /Users/builder/data/lanes/1503/e6ebd18b/source/maccore/src/AddressBook/ABRecord.cs:190
2015-06-04 13:30:50.687 QuickContacts[1322:44259] critical:   at AddressBook.ABRecord.PropertyToString (int) [0x00000] in /Users/builder/data/lanes/1503/e6ebd18b/source/maccore/src/AddressBook/ABRecord.cs:214
2015-06-04 13:30:50.687 QuickContacts[1322:44259] critical:   at AddressBook.ABPerson.get_FirstName () [0x00000] in /Users/builder/data/lanes/1503/e6ebd18b/source/maccore/src/AddressBook/ABPerson.cs:709
2015-06-04 13:30:50.687 QuickContacts[1322:44259] critical:   at QuickContacts.QuickContactsViewController.HandlePerformAction2 (object,AddressBookUI.ABPeoplePickerPerformAction2EventArgs) [0x00007] in /Users/MChipeta/Downloads/QuickContacts/QuickContacts/QuickContactsViewController.cs:220
2015-06-04 13:30:50.688 QuickContacts[1322:44259] critical:   at AddressBookUI.ABPeoplePickerNavigationController.OnPerformAction2 (AddressBookUI.ABPeoplePickerPerformAction2EventArgs) [0x00012] in /Users/builder/data/lanes/1503/e6ebd18b/source/maccore/src/AddressBookUI/ABPeoplePickerNavigationController.cs:232
2015-06-04 13:30:50.688 QuickContacts[1322:44259] critical:   at AddressBookUI.InternalABPeoplePickerNavigationControllerDelegate.DidSelectPerson (AddressBookUI.ABPeoplePickerNavigationController,AddressBook.ABPerson,int,int) [0x0002e] in /Users/builder/data/lanes/1503/e6ebd18b/source/maccore/src/AddressBookUI/ABPeoplePickerNavigationController.cs:128
2015-06-04 13:30:50.688 QuickContacts[1322:44259] critical:   at (wrapper runtime-invoke) <Module>.runtime_invoke_void__this___object_object_int_int (object,intptr,intptr,intptr) <IL 0x00082, 0xffffffff>
2015-06-04 13:30:50.688 QuickContacts[1322:44259] critical:   at <unknown> <0xffffffff>
2015-06-04 13:30:50.689 QuickContacts[1322:44259] critical:   at (wrapper managed-to-native) UIKit.UIApplication.UIApplicationMain (int,string[],intptr,intptr) <IL 0x000ae, 0xffffffff>
2015-06-04 13:30:50.690 QuickContacts[1322:44259] critical:   at UIKit.UIApplication.Main (string[],intptr,intptr) [0x00005] in /Users/builder/data/lanes/1503/e6ebd18b/source/maccore/src/UIKit/UIApplication.cs:63
2015-06-04 13:30:50.690 QuickContacts[1322:44259] critical:   at UIKit.UIApplication.Main (string[],string,string) [0x00038] in /Users/builder/data/lanes/1503/e6ebd18b/source/maccore/src/UIKit/UIApplication.cs:47
2015-06-04 13:30:50.690 QuickContacts[1322:44259] critical:   at QuickContacts.Application.Main (string[]) [0x00008] in /Users/MChipeta/Downloads/QuickContacts/QuickContacts/Main.cs:17
2015-06-04 13:30:50.690 QuickContacts[1322:44259] critical:   at (wrapper runtime-invoke) <Module>.runtime_invoke_void_object (object,intptr,intptr,intptr) <IL 0x00060, 0xffffffff>
2015-06-04 13:30:50.691 QuickContacts[1322:44259] critical: 
Native stacktrace:

2015-06-04 13:30:50.691 QuickContacts[1322:44259] critical: 
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.

Solution

  • This is a known bug

    Workaround: add '--registrar:static' to the additional mtouch arguments.