Forum Xamarin.iOS

Could not initialize an instance of the type 'ExternalAccessory.EASession'

FrankMarkovich.6785FrankMarkovich.6785 USUniversity ✭✭

Looking through our error logs I see this occurring very randomly over the last few years for a small number of users of our bluetooth product. Recently it seems to occur more frequently, across no discernible pattern of iPhone models or versions on iOS. What could cause this? I've never been able to reproduce it nor have i had it happen to me when debugging. Our internal users who have had this happen have had bluetooth turned on, and have successfully connected to our bluetooth device in the past and since.

Could not initialize an instance of the type 'ExternalAccessory.EASession': the native 'initWithAccessory:forProtocol:' method returned nil.

at Foundation.NSObject.InitializeHandle (System.IntPtr handle, System.String initSelector) <0x100a3d310 + 0x00190> in <e0596b82250c450abdf075bc558add28#e9794da315df75d9946267762dd36112>
at ExternalAccessory.EASession..ctor (ExternalAccessory.EAAccessory accessory, System.String protocol) <0x100a5da40 + 0x0007f> in <e0596b82250c450abdf075bc558add28#e9794da315df75d9946267762dd36112>


  • DR_nathouDR_nathou BEMember ✭✭

    I just came accross this issue... did you find a solution?

  • FrankMarkovich.6785FrankMarkovich.6785 USUniversity ✭✭

    No, never heard back from anyone. I just looked in our production error logging and it is still occurring. Over the past 30 days it's happened 40 times to 38 people (we have several hundred thousand users total) across all iPhones. I still haven't had it happen and when I've seen the error in non-production settings (meaning internal people are using it) and asked them what happened they don't even realize it's happened. We have automated testing that connects through bluetooth and it hasn't occurred there either.

  • DR_nathouDR_nathou BEMember ✭✭
    edited July 2019

    I guess making the app live with it would not be ideal but I would go with it until then. Maybe with a invisible or visible 3 to 5 times try/attempt to connect cancelable loop. Since this issue is playing hide n seek and is really hard to track down.

  • Shrinivas_MahamuniShrinivas_Mahamuni USMember ✭✭
    edited October 2019
    Check with your current accessory has a protocol string? If nil or empty use manager to get accessory with protocol string (must have protocol string in it, that you have configured in info plist) . And then try to establish easession. If you found accessory with empty protocol string seems to me those are ghost accessory, which seems connected but actually they are not.
Sign In or Register to comment.