9

So there is a major unresolved issue with iOS8 UIWebView, which basically means Cordova apps using the Select element are extremely prone to crash. This is a major unresolved issue and has been open for several months

The bug can be reproduced by create a phonegap sample project and putting one HTML select element in it and clicking on it repeatedly on an iPad 3/4 on iOS8. The app crashes with one of several exceptions.

https://issues.apache.org/jira/browse/CB-7728

I have applied one solution as mentioned at https://issues.apache.org/jira/browse/CB-7694 but the App still crashes with one of several other exceptions.

The most common exception is:

2015-01-12 14:41:37.971 HelloWorld[912:832062] Application tried to represent an active popover presentation <UIWebSelectTableViewController: 0x17d169d0> from <MainViewController: 0x17e84ba0>.
2015-01-12 14:41:57.048 HelloWorld[912:832062] *** Terminating app due to uncaught exception 'NSRangeException', reason: '-[UITableView _contentOffsetForScrollingToRowAtIndexPath:atScrollPosition:]: row (4) beyond bounds (0) for section (0).'
libc++abi.dylib: terminating with uncaught exception of type NSException\

It seems to be some sort of race condition with when the select element is pressed, but I have no idea where to start fixing it as it is inside complied libraries.

It is definitely some sort of race condition.

Will
  • 1,622
  • 4
  • 25
  • 39
  • I'm also getting this warning whenever I open a select menu in the webview: `Presenting view controllers on detached view controllers is discouraged – Benjamin Oman Jul 30 '15 at 22:53
  • See http://stackoverflow.com/questions/25908729/ios8-ipad-uiwebview-crashes-while-displaying-popover-when-user-taps-drop-down-li top answers for the workaround. – Borys Verebskyi Sep 25 '15 at 12:12

1 Answers1

-1

By what I understand is that the UITableview is out of bound, this can happen if the array that holds the data is not ready or the data has not been loaded in the array or there is some problem with the array. Clearly the app is trying to load row(4) but the array has 0. This might be the problem.

GouravR
  • 184
  • 1
  • 9