Fixed
Status Update
Comments
[Deleted User] <[Deleted User]> #3
I think this console log would help:
Main Thread Checker: UI API called on a background thread: -[UIApplication applicationState]
PID: 31300, TID: 2413714, Thread name: com.google.Maps.LabelingBehavior, Queue name: com.apple.root.default-qos.overcommit, QoS: 21
Backtrace:
4 GooglePlacePickerDemos 0x00000001069bbef4 GMSIsApplicationInBackground + 53
5 GooglePlacePickerDemos 0x0000000106a5a5ea -[GMSForegroundDispatchQueue initWithName:targetQueue:] + 237
6 GooglePlacePickerDemos 0x0000000106a271a2 _ZN7gmscore6vector4text8GlyphSetC2ERKNS_4base10reffed_ptrINS0_16TextureAtlasPoolEEEPU28objcproto17OS_dispatch_queue8NSObjectPK8__CTFontff + 344
7 GooglePlacePickerDemos 0x0000000106a1967a _ZN7gmscore6vector4text10GlyphCache11GetGlyphSetEPK8__CTFontf + 214
8 GooglePlacePickerDemos 0x0000000106a17dce _ZN7gmscore6vector4text6GLText14PrefetchGlyphsERKNS_4base10reffed_ptrINS1_10GlyphCacheEEERKNSt3__16vectorItNS9_9allocatorItEEEEPK8__CTFontf + 22
9 GooglePlacePickerDemos 0x0000000106a17ed1 _ZN7gmscore6vector4text6GLText14PrefetchGlyphsERKNS_4base10reffed_ptrINS1_10GlyphCacheEEEPK8__CTLinebf + 207
10 GooglePlacePickerDemos 0x00000001069fdc4f _ZN7gmscore6vector12GLPointLabel22PrefetchGlyphsForGroupEPNS0_12GLLabelGroupE + 181
11 GooglePlacePickerDemos 0x00000001069fdb77 _ZN7gmscore6vector12GLPointLabel14PrefetchGlyphsEv + 33
12 GooglePlacePickerDemos 0x0000000106a12143 _ZN7gmscore6vector16LabelingBehavior23CreatePendingOperationsERKNSt3__13setINS_4base10reffed_ptrINS0_7GLLabelEEENS2_4lessIS7_EENS2_9allocatorIS7_EEEESE_SE_NS0_13LabelDrawModeE + 1093
13 GooglePlacePickerDemos 0x0000000106a11b11 _ZN7gmscore6vector16LabelingBehavior14RunLabelingJobERKNS_4base10reffed_ptrINS1_11LabelingJobEEE + 357
14 GooglePlacePickerDemos 0x0000000106a1199e ___ZN7gmscore6vector16LabelingBehavior14CommitInternalEPNS_8renderer14EntityRendererE_block_invoke + 22
15 Foundation 0x000000010ae37ff8 __NSThreadPerformPerform + 334
16 CoreFoundation 0x000000010ba28ef1 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
17 CoreFoundation 0x000000010bac8011 __CFRunLoopDoSource0 + 81
18 CoreFoundation 0x000000010ba0d8e9 __CFRunLoopDoSources0 + 185
19 CoreFoundation 0x000000010ba0cecf __CFRunLoopRun + 1279
20 CoreFoundation 0x000000010ba0c759 CFRunLoopRunSpecific + 409
21 Foundation 0x000000010adf245e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 274
22 GooglePlacePickerDemos 0x0000000106a4feb9 -[GMSx_GTMSimpleWorkerThread main] + 337
23 Foundation 0x000000010adffedc __NSThread__start__ + 1197
24 libsystem_pthread.dylib 0x000000010cfeb93b _pthread_body + 180
25 libsystem_pthread.dylib 0x000000010cfeb887 _pthread_body + 0
26 libsystem_pthread.dylib 0x000000010cfeb08d thread_start + 13
2017-08-09 22:14:34.392200+0530 GooglePlacePickerDemos[31300:2413714] [reports] Main Thread Checker: UI API called on a background thread: -[UIApplication applicationState]
PID: 31300, TID: 2413714, Thread name: com.google.Maps.LabelingBehavior, Queue name: com.apple.root.default-qos.overcommit, QoS: 21
Backtrace:
4 GooglePlacePickerDemos 0x00000001069bbef4 GMSIsApplicationInBackground + 53
5 GooglePlacePickerDemos 0x0000000106a5a5ea -[GMSForegroundDispatchQueue initWithName:targetQueue:] + 237
6 GooglePlacePickerDemos 0x0000000106a271a2 _ZN7gmscore6vector4text8GlyphSetC2ERKNS_4base10reffed_ptrINS0_16TextureAtlasPoolEEEPU28objcproto17OS_dispatch_queue8NSObjectPK8__CTFontff + 344
7 GooglePlacePickerDemos 0x0000000106a1967a _ZN7gmscore6vector4text10GlyphCache11GetGlyphSetEPK8__CTFontf + 214
8 GooglePlacePickerDemos 0x0000000106a17dce _ZN7gmscore6vector4text6GLText14PrefetchGlyphsERKNS_4base10reffed_ptrINS1_10GlyphCacheEEERKNSt3__16vectorItNS9_9allocatorItEEEEPK8__CTFontf + 22
9 GooglePlacePickerDemos 0x0000000106a17ed1 _ZN7gmscore6vector4text6GLText14PrefetchGlyphsERKNS_4base10reffed_ptrINS1_10GlyphCacheEEEPK8__CTLinebf + 207
10 GooglePlacePickerDemos 0x00000001069fdc4f _ZN7gmscore6vector12GLPointLabel22PrefetchGlyphsForGroupEPNS0_12GLLabelGroupE + 181
11 GooglePlacePickerDemos 0x00000001069fdb77 _ZN7gmscore6vector12GLPointLabel14PrefetchGlyphsEv + 33
12 GooglePlacePickerDemos 0x0000000106a12143 _ZN7gmscore6vector16LabelingBehavior23CreatePendingOperationsERKNSt3__13setINS_4base10reffed_ptrINS0_7GLLabelEEENS2_4lessIS7_EENS2_9allocatorIS7_EEEESE_SE_NS0_13LabelDrawModeE + 1093
13 GooglePlacePickerDemos 0x0000000106a11b11 _ZN7gmscore6vector16LabelingBehavior14RunLabelingJobERKNS_4base10reffed_ptrINS1_11LabelingJobEEE + 357
14 GooglePlacePickerDemos 0x0000000106a1199e ___ZN7gmscore6vector16LabelingBehavior14CommitInternalEPNS_8renderer14EntityRendererE_block_invoke + 22
15 Foundation 0x000000010ae37ff8 __NSThreadPerformPerform + 334
16 CoreFoundation 0x000000010ba28ef1 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
17 CoreFoundation 0x000000010bac8011 __CFRunLoopDoSource0 + 81
18 CoreFoundation 0x000000010ba0d8e9 __CFRunLoopDoSources0 + 185
19 CoreFoundation 0x000000010ba0cecf __CFRunLoopRun + 1279
20 CoreFoundation 0x000000010ba0c759 CFRunLoopRunSpecific + 409
21 Foundation 0x000000010adf245e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 274
22 GooglePlacePickerDemos 0x0000000106a4feb9 -[GMSx_GTMSimpleWorkerThread main] + 337
23 Foundation 0x000000010adffedc __NSThread__start__ + 1197
24 libsystem_pthread.dylib 0x000000010cfeb93b _pthread_body + 180
25 libsystem_pthread.dylib 0x000000010cfeb887 _pthread_body + 0
26 libsystem_pthread.dylib 0x000000010cfeb08d thread_start + 13
Main Thread Checker: UI API called on a background thread: -[UIApplication applicationState]
PID: 31300, TID: 2413714, Thread name: com.google.Maps.LabelingBehavior, Queue name: com.apple.root.default-qos.overcommit, QoS: 21
Backtrace:
4 GooglePlacePickerDemos 0x00000001069bbef4 GMSIsApplicationInBackground + 53
5 GooglePlacePickerDemos 0x0000000106a5a5ea -[GMSForegroundDispatchQueue initWithName:targetQueue:] + 237
6 GooglePlacePickerDemos 0x0000000106a271a2 _ZN7gmscore6vector4text8GlyphSetC2ERKNS_4base10reffed_ptrINS0_16TextureAtlasPoolEEEPU28objcproto17OS_dispatch_queue8NSObjectPK8__CTFontff + 344
7 GooglePlacePickerDemos 0x0000000106a1967a _ZN7gmscore6vector4text10GlyphCache11GetGlyphSetEPK8__CTFontf + 214
8 GooglePlacePickerDemos 0x0000000106a17dce _ZN7gmscore6vector4text6GLText14PrefetchGlyphsERKNS_4base10reffed_ptrINS1_10GlyphCacheEEERKNSt3__16vectorItNS9_9allocatorItEEEEPK8__CTFontf + 22
9 GooglePlacePickerDemos 0x0000000106a17ed1 _ZN7gmscore6vector4text6GLText14PrefetchGlyphsERKNS_4base10reffed_ptrINS1_10GlyphCacheEEEPK8__CTLinebf + 207
10 GooglePlacePickerDemos 0x00000001069fdc4f _ZN7gmscore6vector12GLPointLabel22PrefetchGlyphsForGroupEPNS0_12GLLabelGroupE + 181
11 GooglePlacePickerDemos 0x00000001069fdb77 _ZN7gmscore6vector12GLPointLabel14PrefetchGlyphsEv + 33
12 GooglePlacePickerDemos 0x0000000106a12143 _ZN7gmscore6vector16LabelingBehavior23CreatePendingOperationsERKNSt3__13setINS_4base10reffed_ptrINS0_7GLLabelEEENS2_4lessIS7_EENS2_9allocatorIS7_EEEESE_SE_NS0_13LabelDrawModeE + 1093
13 GooglePlacePickerDemos 0x0000000106a11b11 _ZN7gmscore6vector16LabelingBehavior14RunLabelingJobERKNS_4base10reffed_ptrINS1_11LabelingJobEEE + 357
14 GooglePlacePickerDemos 0x0000000106a1199e ___ZN7gmscore6vector16LabelingBehavior14CommitInternalEPNS_8renderer14EntityRendererE_block_invoke + 22
15 Foundation 0x000000010ae37ff8 __NSThreadPerformPerform + 334
16 CoreFoundation 0x000000010ba28ef1 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
17 CoreFoundation 0x000000010bac8011 __CFRunLoopDoSource0 + 81
18 CoreFoundation 0x000000010ba0d8e9 __CFRunLoopDoSources0 + 185
19 CoreFoundation 0x000000010ba0cecf __CFRunLoopRun + 1279
20 CoreFoundation 0x000000010ba0c759 CFRunLoopRunSpecific + 409
21 Foundation 0x000000010adf245e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 274
22 GooglePlacePickerDemos 0x0000000106a4feb9 -[GMSx_GTMSimpleWorkerThread main] + 337
23 Foundation 0x000000010adffedc __NSThread__start__ + 1197
24 libsystem_pthread.dylib 0x000000010cfeb93b _pthread_body + 180
25 libsystem_pthread.dylib 0x000000010cfeb887 _pthread_body + 0
26 libsystem_pthread.dylib 0x000000010cfeb08d thread_start + 13
2017-08-09 22:14:34.392200+0530 GooglePlacePickerDemos[31300:2413714] [reports] Main Thread Checker: UI API called on a background thread: -[UIApplication applicationState]
PID: 31300, TID: 2413714, Thread name: com.google.Maps.LabelingBehavior, Queue name: com.apple.root.default-qos.overcommit, QoS: 21
Backtrace:
4 GooglePlacePickerDemos 0x00000001069bbef4 GMSIsApplicationInBackground + 53
5 GooglePlacePickerDemos 0x0000000106a5a5ea -[GMSForegroundDispatchQueue initWithName:targetQueue:] + 237
6 GooglePlacePickerDemos 0x0000000106a271a2 _ZN7gmscore6vector4text8GlyphSetC2ERKNS_4base10reffed_ptrINS0_16TextureAtlasPoolEEEPU28objcproto17OS_dispatch_queue8NSObjectPK8__CTFontff + 344
7 GooglePlacePickerDemos 0x0000000106a1967a _ZN7gmscore6vector4text10GlyphCache11GetGlyphSetEPK8__CTFontf + 214
8 GooglePlacePickerDemos 0x0000000106a17dce _ZN7gmscore6vector4text6GLText14PrefetchGlyphsERKNS_4base10reffed_ptrINS1_10GlyphCacheEEERKNSt3__16vectorItNS9_9allocatorItEEEEPK8__CTFontf + 22
9 GooglePlacePickerDemos 0x0000000106a17ed1 _ZN7gmscore6vector4text6GLText14PrefetchGlyphsERKNS_4base10reffed_ptrINS1_10GlyphCacheEEEPK8__CTLinebf + 207
10 GooglePlacePickerDemos 0x00000001069fdc4f _ZN7gmscore6vector12GLPointLabel22PrefetchGlyphsForGroupEPNS0_12GLLabelGroupE + 181
11 GooglePlacePickerDemos 0x00000001069fdb77 _ZN7gmscore6vector12GLPointLabel14PrefetchGlyphsEv + 33
12 GooglePlacePickerDemos 0x0000000106a12143 _ZN7gmscore6vector16LabelingBehavior23CreatePendingOperationsERKNSt3__13setINS_4base10reffed_ptrINS0_7GLLabelEEENS2_4lessIS7_EENS2_9allocatorIS7_EEEESE_SE_NS0_13LabelDrawModeE + 1093
13 GooglePlacePickerDemos 0x0000000106a11b11 _ZN7gmscore6vector16LabelingBehavior14RunLabelingJobERKNS_4base10reffed_ptrINS1_11LabelingJobEEE + 357
14 GooglePlacePickerDemos 0x0000000106a1199e ___ZN7gmscore6vector16LabelingBehavior14CommitInternalEPNS_8renderer14EntityRendererE_block_invoke + 22
15 Foundation 0x000000010ae37ff8 __NSThreadPerformPerform + 334
16 CoreFoundation 0x000000010ba28ef1 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
17 CoreFoundation 0x000000010bac8011 __CFRunLoopDoSource0 + 81
18 CoreFoundation 0x000000010ba0d8e9 __CFRunLoopDoSources0 + 185
19 CoreFoundation 0x000000010ba0cecf __CFRunLoopRun + 1279
20 CoreFoundation 0x000000010ba0c759 CFRunLoopRunSpecific + 409
21 Foundation 0x000000010adf245e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 274
22 GooglePlacePickerDemos 0x0000000106a4feb9 -[GMSx_GTMSimpleWorkerThread main] + 337
23 Foundation 0x000000010adffedc __NSThread__start__ + 1197
24 libsystem_pthread.dylib 0x000000010cfeb93b _pthread_body + 180
25 libsystem_pthread.dylib 0x000000010cfeb887 _pthread_body + 0
26 libsystem_pthread.dylib 0x000000010cfeb08d thread_start + 13
da...@gmail.com <da...@gmail.com> #5
Just wanted to add the this problem is still present in the GM version of Xcode 9
da...@gmail.com <da...@gmail.com> #6
We believe that this issue should be solved in the Maps iOS SDK v2.5 release. If this issue still occurs, please let us know.
[Deleted User] <[Deleted User]> #7
We are experiencing exactly the same issue, exactly same setup only difference is we are using Swift. In 24 hours 30 users affected and 3k+ crashes and counting. Please escalate this issue as it's a serious bug. It's obviously caused when map view is removing from view hierarchy and memory. We can't reproduce it too. After downgrading to 3.7.0 issue is gone.
dj...@gmail.com <dj...@gmail.com> #8
We are experiencing the same issue. Over the weekend I updated the app because of this outage/crash https://issuetracker.google.com/issues/154855417
I applied one of the workarounds mentioned in that issue, and I upgraded the SDK to the latest version (to be on the same page). But now we are having this new issue.
I applied one of the workarounds mentioned in that issue, and I upgraded the SDK to the latest version (to be on the same page). But now we are having this new issue.
[Deleted User] <[Deleted User]> #10
Still Happen in v 4.1.0
Description
We are receiving crash reports on crashlytics.
Crashed: com.apple.main-thread
0 TheBarCode 0x1025fc2d8 gmscore::renderer::GLState::Flush() + 16388
1 TheBarCode 0x102607630 gmscore::renderer::GLScopedContext::~GLScopedContext() + 31600
2 TheBarCode 0x10266a314 -[GMSEntityRendererView setFrame:] + 436308
3 TheBarCode 0x1026b2578 -[GMSVectorMapView setFrame:] + 184912
4 UIKitCore 0x18502b878 -[UIView(Geometry) _applyAutoresizingMaskWithOldSuperviewSize:] + 576
5 UIKitCore 0x18502c510 -[UIView(Geometry) _resizeWithOldSuperviewSize:] + 236
6 CoreFoundation 0x180afd95c __NSARRAY_IS_CALLING_OUT_TO_A_BLOCK__ + 16
7 CoreFoundation 0x180a00fb0 -[__NSArrayM enumerateObjectsWithOptions:usingBlock:] + 416
8 UIKitCore 0x18502b5e4 -[UIView(Geometry) resizeSubviewsWithOldSize:] + 156
9 UIKitCore 0x18502c82c -[UIView(Geometry) setBounds:] + 688
10 UIKitCore 0x18502c0e0 -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] + 528
11 UIKitCore 0x18502c4ac -[UIView(Geometry) _resizeWithOldSuperviewSize:] + 136
12 CoreFoundation 0x180afd95c __NSARRAY_IS_CALLING_OUT_TO_A_BLOCK__ + 16
13 CoreFoundation 0x180a00fb0 -[__NSArrayM enumerateObjectsWithOptions:usingBlock:] + 416
14 UIKitCore 0x18502b5e4 -[UIView(Geometry) resizeSubviewsWithOldSize:] + 156
15 UIKitCore 0x184f736fc -[UIView(AdditionalLayoutSupport) _is_layout] + 148
16 UIKitCore 0x185033090 -[UIView(Hierarchy) _updateConstraintsAsNecessaryAndApplyLayoutFromEngine] + 1032
17 Gradientable 0x1034e8798 UIView.swizzled_layoutSubviews() + 50 (Gradientable.swift:50)
18 Gradientable 0x1034e88d0 @objc UIView.swizzled_layoutSubviews() + 4326508752 (<compiler-generated>:4326508752)
19 UIKitCore 0x18504617c -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 2140
20 QuartzCore 0x1875ae2c0 -[CALayer layoutSublayers] + 284
21 QuartzCore 0x1875b443c CA::Layer::layout_if_needed(CA::Transaction*) + 480
22 QuartzCore 0x1875bf140 CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 136
23 QuartzCore 0x187507884 CA::Context::commit_transaction(CA::Transaction*, double) + 304
24 QuartzCore 0x187531574 CA::Transaction::commit() + 676
25 QuartzCore 0x187531f68 CA::Transaction::observer_callback(__CFRunLoopObserver*, unsigned long, void*) + 92
26 CoreFoundation 0x180aa7e68 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 32
27 CoreFoundation 0x180aa2d54 __CFRunLoopDoObservers + 416
28 CoreFoundation 0x180aa3320 __CFRunLoopRun + 1308
29 CoreFoundation 0x180aa2adc CFRunLoopRunSpecific + 464
30 GraphicsServices 0x18aa43328 GSEventRunModal + 104
31 UIKitCore 0x184bb063c UIApplicationMain + 1936
32 TheBarCode 0x10215756c main + 21 (Preference.swift:21)
33 libdyld.dylib 0x18092c360 start + 4
What should happen instead?
App should not crash.
Steps to reproduce the problem:
This crashing issue is not reproduceable on our devices and simulator. We have checked on iPhone 8, iPhone 7 running iOS 13.3.1
Operating system version: 13.3.1 (17D50)
Google Maps SDK for iOS version: 3.8.0 (Cocoapods version)
Hardware model: iPhone 11 pro, iPhone 7 plus...
-------------------------------------------------------------------
Additional Information:
Recently we have upgraded our application for iOS 13 and xcode 11. By doing so, we have also updated google maps iOS SDK to 3.8.0. After upgrading we are receiving crash reports. On the previously used version we never experienced this crash i.e. 2.7.0
In our application we have multiple instances of GMSMapView i.e. around 8 instances embedded in a UIPageViewController. For the sake of memory management we only keep the visible version of GMSMapView and discard other instances in viewDidDisappear method of view controller. Here is the code that we are using to setup map and clearing map.
func setupMapView() {
let mapView = GMSMapView(frame: CGRect.zero)
mapView.settings.allowScrollGesturesDuringRotateOrZoom = false
if CLLocationManager.authorizationStatus() != .notDetermined {
mapView.settings.myLocationButton = false
mapView.isMyLocationEnabled = true
self.myLocationButtonContainer.isHidden = false
} else {
self.myLocationButtonContainer.isHidden = true
}
self.mapContainer.insertSubview(mapView, at: 0)
mapView.autoPinEdgesToSuperviewEdges()
let iconGenerator = GMUCustomClusterIconGenerator()
let algorithm = GMUNonHierarchicalDistanceBasedAlgorithm()
let renderer = GMUDefaultClusterRenderer(mapView: mapView, clusterIconGenerator: iconGenerator)
renderer.delegate = self
self.clusterManager = GMUClusterManager(map: mapView, algorithm: algorithm, renderer: renderer)
self.clusterManager?.setDelegate(self, mapDelegate: self)
self.mapView = mapView
self.setUpMarkers()
self.restoreMapCameraPosition(animated: false)
}
func clearMapView() {
self.clusterManager?.clearItems()
self.mapView?.clear()
self.mapView?.removeFromSuperview()
self.mapView = nil
self.clusterManager = nil
}
The other strange thing is that we are not receiving any additional added (on which screen does it happen) logs along with the crash.