iOS 11 Crash in StoreServices

2,357 views
Skip to first unread message

Alex Argo

unread,
Sep 21, 2017, 12:12:38 PM9/21/17
to Google Mobile Ads SDK Developers


We're experiencing a bunch of crashes on iOS 11 in a private Apple Framework (Store Services). Then only seem to be happening when AdMob ads are displayed, but there's no direct stack trace back to AdMob SDK. Is anyone else experiencing this? This is in version 7.20.0 of the AdMob SDK built with the iOS 10 SDK. Is this fixed in the "Official iOS 11 Support" release that just came out yesterday?

Crashed: com.apple.StoreServices.SSRequest.0x1c04c73f0
0  libobjc.A.dylib                0x183304430 objc_msgSend + 16
1  StoreServices                  0x18eae31b4 -[SSRequest _shutdownRequestWithMessageID:] + 228
2  libdispatch.dylib              0x183761088 _dispatch_call_block_and_release + 24
3  libdispatch.dylib              0x183761048 _dispatch_client_callout + 16
4  libdispatch.dylib              0x18376ae48 _dispatch_queue_serial_drain$VARIANT$mp + 528
5  libdispatch.dylib              0x18376b7d8 _dispatch_queue_invoke$VARIANT$mp + 340
6  libdispatch.dylib              0x18376c200 _dispatch_root_queue_drain_deferred_wlh$VARIANT$mp + 400
7  libdispatch.dylib              0x1837744a0 _dispatch_workloop_worker_thread$VARIANT$mp + 644
8  libsystem_pthread.dylib        0x183a06fe0 _pthread_wqthread + 932
9  libsystem_pthread.dylib        0x183a06c30 start_wqthread + 4

Bharani Cherukuri (Mobile Ads SDK Team)

unread,
Sep 21, 2017, 4:58:56 PM9/21/17
to Google Mobile Ads SDK Developers
Hello Alex, 

Thank you for contacting us. Could you provide us the complete stack trace so I can take a look? Also, can you try updating to the latest Mobile Ads SDK and see if you're able to reproduce the crash? If yes, can you provide us the detailed steps to reproduce the issue? Additionally, is this crash noticeable specifically only on iOS 11 or any other previous versions? If I could get these details, I will be able to investigate the issue and assist you further.

Regards,
Bharani Cherukuri
Mobile Ads SDK Team

Alexander Argo

unread,
Sep 21, 2017, 5:24:32 PM9/21/17
to Bharani Cherukuri (Mobile Ads SDK Team), Google Mobile Ads SDK Developers
Unfortunately, that IS the full stack trace of the crashing thread. It's an Apple private framework that I'm guessing in sandboxed away from the app. We're experiencing the crash in all of our apps so far on iOS 11.

Here's a few fabric crash links: 
http://crashes.to/s/976a3e4da88
http://crashes.to/s/aa51f0b7930
http://crashes.to/s/b01756b5a4e

It seems like there might be a bad URL getting passed to Apple(when clicking on the ad?) and now it's crashing on iOS 11? This one we are just seeing out in the wild. We're not certain how it's actually happening at this point. We've disabled AdMob on iOS 11 for one of our apps to confirm that this crash is only an AdMob issue and are readying an update to your latest SDK, but we haven't been able to ship it yet.

Thanks,

Alex
A-Star Software

--

---
You received this message because you are subscribed to a topic in the Google Groups "Google Mobile Ads SDK Developers" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/google-admob-ads-sdk/a7_GjrsmluU/unsubscribe.
To unsubscribe from this group and all its topics, send an email to google-admob-ads-sdk+unsub...@googlegroups.com.
To post to this group, send email to google-admob-ads-sdk@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Bharani Cherukuri (Mobile Ads SDK Team)

unread,
Sep 22, 2017, 11:36:27 AM9/22/17
to Google Mobile Ads SDK Developers
Hello Alex, 

Thank you for providing the logs. Based on the logs, I did not notice any symbols which points that the crash is related to Google Mobile Ads SDK. However, I was able to see that there was MoPub class being called. I was able install the three apps from the logs, but I was not able to reproduce the crash locally by testing on an iPhone 6s and iOS 11. Could you confirm if you're using any mediation networks like MoPub? Can you also confirm if you're seeing the crash after updating the to the latest version of the Google Mobile Ads SDK? If you could replicate the issue locally, please provide the detailed steps so I can take a look and assist you further. 

Also, keep me posted of the results, if you're noticing the crash after disabling AdMob with the latest app release. 

Regards,
Bharani Cherukuri
Mobile Ads SDK Team

On Thursday, September 21, 2017 at 12:12:38 PM UTC-4, Alex Argo wrote:

Alex Argo

unread,
Sep 22, 2017, 11:43:19 AM9/22/17
to Google Mobile Ads SDK Developers
MoPub is the SDK we use to mediate. We turned off Admob for iOS 11 yesterday and the crashes stopped immediately. We have an update with the new SDK submitted to Apple for review, but we won't know if that fixes anything until next week sometime. In the meantime we are just going to be turning off AdMob for iOS 11 in order to stop the crashes on our other apps.

Bharani Cherukuri (Mobile Ads SDK Team)

unread,
Sep 22, 2017, 1:36:20 PM9/22/17
to Google Mobile Ads SDK Developers
Hello Alex, 

Thank you for confirming this. Our team is investigating the issue and will update this thread if we have any new information. However, please keep me posted of the results after updating to the new SDK version. Meanwhile, I will keep monitoring your apps to see if I could reproduce the crash locally. 

Regards,
Bharani Cherukuri
Mobile Ads SDK Team

On Thursday, September 21, 2017 at 12:12:38 PM UTC-4, Alex Argo wrote:

rom...@quadrimind.com

unread,
Sep 22, 2017, 2:05:11 PM9/22/17
to Google Mobile Ads SDK Developers
Hi,

we are also experiencing similar issues. It happens in iOS 10 and 11.

Our apps stops responding, but do not crash with this logs:

XPC connection interrupted
TIC TCP Conn Failed [35:0x1c4369f00]: 3:-9802 Err(-9802)
TIC TCP Conn Failed [37:0x1c0367200]: 3:-9802 Err(-9802)
TIC TCP Conn Failed [38:0x1c036c9c0]: 3:-9802 Err(-9802)
NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9802)
Task <D61A39F6-95F5-4E53-96A4-214AE854915C>.<0> HTTP load failed (error code: -1200 [3:-9802])
NSURLConnection finished with error - code -1200

And in iOS 11 the crash above happens. We do not have the stack trace for the crashes, it happened a few times in debug at the same method. 

it occurs with 7.21, 7.23 and 7.24 lib versions only in banner ads.

The easy way to crash is to open and close(send to background) the app very fast in iPads (using the 5 finger shortcut to close, but letting it come back without going to background).

The error does not appear in iOS 9 and 8.

Bharani Cherukuri (Mobile Ads SDK Team)

unread,
Sep 22, 2017, 4:57:49 PM9/22/17
to Google Mobile Ads SDK Developers
Hello, 

Thank you for sharing your concern. I was not able to reproduce the issue with our sample apps by backgrounding the app. Could you provide us the complete stack trace along with the detailed steps to reproduce the issue, so we can take a look and investigate further? Additionally, could you provide us the App store link, so we can try and replicate the crash locally? 

Regards,
Bharani Cherukuri
Mobile Ads SDK Team

On Thursday, September 21, 2017 at 12:12:38 PM UTC-4, Alex Argo wrote:

Francesco Marisaldi

unread,
Sep 25, 2017, 10:31:13 AM9/25/17
to Google Mobile Ads SDK Developers
Hello,

I have lots of similar crashes in two apps related to Store Services (so probably related to AdMob like other devs) plus another type of crashes directly linked to AdMob. All crashes occurred only on iOS 11 and they started on September 20th; I'm not using the last version of the framework, but the version 7.23.0 and I'm not using any mediation platform. Complete stack traces of the 2 type of crashes are in the attachments. Is there a temporary solution to stop these crashes before the release of apps' updates?

Regards,
Francesco
crash1.txt
crash2.txt

Bharani Cherukuri (Mobile Ads SDK Team)

unread,
Sep 25, 2017, 10:47:04 AM9/25/17
to Google Mobile Ads SDK Developers
Hello Francesco, 

Thank you for sharing your concern. The Store Services crash is currently being investigated by our team. Meanwhile, can you confirm if you're able to reproduce the crash locally? If yes, can you provide us the detailed steps to reproduce the issue? Also, can you try updating to the latest Google Mobile Ads SDK version and check if you're still seeing the crash?

Regards,
Bharani Cherukuri
Mobile Ads SDK Team

On Thursday, September 21, 2017 at 12:12:38 PM UTC-4, Alex Argo wrote:

Francesco Marisaldi

unread,
Sep 25, 2017, 11:02:15 AM9/25/17
to Google Mobile Ads SDK Developers
No, I'm not able to reproduce the StoreServices crash locally yet, but I will continue to try.
But what about the second type crash (crash2.txt)? It's directly linked to AdMob and I reproduced it: the app loads contents normally (I load a native ad in the app's first controller) and after 30seconds - 1minute of usage (with no particular actions/steps), the app crashes.

#0. Crashed: com.google.admob.network
GADMutableDictionaryAddParam

Bharani Cherukuri (Mobile Ads SDK Team)

unread,
Sep 25, 2017, 11:35:41 AM9/25/17
to Google Mobile Ads SDK Developers
Hello Francesco, 

Thank you for providing the additional details. Following up on the second crash, I was not able to reproduce the crash with our sample apps. Can you confirm if you're able to reproduce the crash with our sample apps on your end? If yes, could you provide us the detailed steps to replicate the crash. If not, could you provide us a sample project of your implementation, so we can take a look? Additionally, is this crash specific to devices running iOS v11? These details will help us investigate the issue and assist you further.

Regards,
Bharani Cherukuri
Mobile Ads SDK Team

On Thursday, September 21, 2017 at 12:12:38 PM UTC-4, Alex Argo wrote:

rom...@quadrimind.com

unread,
Sep 25, 2017, 5:07:53 PM9/25/17
to Google Mobile Ads SDK Developers
Hi,

we could fix the problem.

It seems to be related to make a new GADRequest while another one is running.

We hope this could help you.

Regards,


Rômulo

Bharani Cherukuri (Mobile Ads SDK Team)

unread,
Sep 25, 2017, 5:16:58 PM9/25/17
to Google Mobile Ads SDK Developers
Hello Rômulo,

Thank you for getting back to us. Our team is working actively investigating the StoreServices crash. That said, I'm glad that you were able to resolve your crash. I will update this thread if I have any new information about this. 

Regards,
Bharani Cherukuri
Mobile Ads SDK Team

On Thursday, September 21, 2017 at 12:12:38 PM UTC-4, Alex Argo wrote:

Francesco Marisaldi

unread,
Sep 26, 2017, 5:50:50 PM9/26/17
to Google Mobile Ads SDK Developers
I'm no longer able to reproduce both StoreServices' crash and second crash on my devices, but I still have some StoreServices related crashes in my analytics data.
All crashes are specific to iOS 11. My implementation is very easy: I manage interstitial ads on AppDelegate and native express ads in various CollectionControllers. If native ad is ready (using delegate's method) I reload collection's data with an additional section, with 1 cell that display the GADNativeExpressAdView like in documentation's example; cell's height is based on device. This implementation worked fine with 0 crash for almost 2 years: could you confirm that last version of framework is fully compatible with iOS 11?

I have another problem with AdMob framework, Xcode 8.3.3 and bitcode enabled: 400 issues like
ld: warning: Linker asked to preserve internal global: '__block_descriptor_tmp
are present when I archive the app. If I disabled bitcode, issues aren't present in following archive. Various post on StackOverflow related these issues with Firebase or AdMob frameworks: would I open another thread for this problem?

Brian Chung

unread,
Sep 26, 2017, 9:47:00 PM9/26/17
to Google Mobile Ads SDK Developers
Our app also having the same crash on iOS 11. 
Message has been deleted

a...@fun.co

unread,
Sep 27, 2017, 6:09:21 AM9/27/17
to Google Mobile Ads SDK Developers
We have same crashes in our app.
About 5% of sessions crashes with that stack trace.

Alexander Ermolaev

unread,
Sep 27, 2017, 7:23:56 AM9/27/17
to Google Mobile Ads SDK Developers
We can't reproduce it. We have a lot of same crashes!

среда, 27 сентября 2017 г., 4:47:00 UTC+3 пользователь Brian Chung написал:

Paddy O'Brien

unread,
Sep 27, 2017, 9:27:44 AM9/27/17
to Google Mobile Ads SDK Developers
We are seeing the same issue in our apps. After spending some quality time with Hopper, the AdMob SDK, StoreKit.framework and StoreServices.framework I was able to determine that the crash most likely comes from
-[GADevice parameters]

Which towards the end of the method calls (excuse the readability, Hoppers pseudo code is great, but not perfect)

esi = [_GADStringFromBool(([SKPaymentQueue canMakePayments] == 0x0 ? 0x1 : 0x0) & 0xff) retain];

canMakePayments makes a blocking call into StoreServices

esi = dispatch_semaphore_create(0x0);
edi
= [[SSVApplicationCapabilitiesRequest alloc] init];

...

[edi startWithCapabilitiesResponseBlock:&var_40];
dispatch_semaphore_wait
(esi, 0xffffffff);

And SSVApplicationCapabilities request is a subclass of SSRequest
struct __objc_class {                                          ; DATA XREF=0x1ca370, 0x1fbd58
    _OBJC_METACLASS_$_SSVApplicationCapabilitiesRequest
, // metaclass
    _OBJC_CLASS_$_SSRequest
,             // superclass
    __objc_empty_cache
,                  // cache
   
0x0,                                 // vtable
    __objc_class_SSVApplicationCapabilitiesRequest_data
// data

The blocking dispatch request likely accounts for why there is nothing else in the stack trace.

As a temporary work around, if you dont have any in app payments in your app, you can swizzle canMakePayments though it may affect the AdMob targeting. Its probably also prudent to limit your swirling to iOS 11
@implementation SKPaymentQueue (Swizzle_Can_Make_Payments)


+ (void)swizzleCanMakePaymentsIfNecessary {
   
static dispatch_once_t onceToken;
    dispatch_once
(&onceToken, ^{
       
if ([[NSProcessInfo processInfo] isOperatingSystemAtLeastVersion:(NSOperatingSystemVersion){.majorVersion = 11, .minorVersion = 0, .patchVersion = 0}]) {
            SEL orig
= @selector(canMakePayments);
            SEL
new = @selector(_Swizzle_canMakePayments);
 
            Class class = [SKPaymentQueue class];
            Method origMethod = class_getClassMethod(class, orig);
            Method newMethod = class_getClassMethod(class, new);
 
            Class metaClass = object_getClass((id)class);
            if (class_addMethod(metaClass, orig, method_getImplementation(newMethod), method_getTypeEncoding(newMethod))) {
               
class_replaceMethod(metaClass, new, method_getImplementation(origMethod), method_getTypeEncoding(origMethod));
 
                        }
                          else {
                                 method_exchangeImplementations(origMethod, newMethod);
                         }
                }
    });
}


+ (BOOL)_Swizzle_canMakePayments {
    
return YES;
}
@end

Bharani Cherukuri (Mobile Ads SDK Team)

unread,
Sep 27, 2017, 9:53:08 AM9/27/17
to Google Mobile Ads SDK Developers
Hello, 

@ Francesco: Thank you for providing the additional information. This will help us with our on-going investigation. Can you confirm if the crashes reduced after updating to the latest SDK version? Are there any specific changes that were made to reduce the crash? Could you also provide us the App Store link for your app, so we can take a look? As for the second error, please refer to this forum post. If you continue to have an issue with this, I'd suggest that you open a new thread, as this thread is specific to the StoreServices crash.

@ Brian, @a.m, @Alexander: Thank you for reporting this. Our team is actively investigating the issue. Meanwhile, could you provide us the Crash logs and the App store links for your apps? This information will help us with our investigation.

@Paddy: Thank you for sharing these details. I have shared your observations with the rest of the team and they are actively investigating the issue. I will update this thread as soon as I have any new information. Meanwhile, can you provide us the complete crash logs and the app store link for your app, so we can take a look?

Regards,
Bharani Cherukuri
Mobile Ads SDK Team

On Thursday, September 21, 2017 at 12:12:38 PM UTC-4, Alex Argo wrote:

EB

unread,
Sep 28, 2017, 12:59:27 AM9/28/17
to Google Mobile Ads SDK Developers

Okay, there's a new 7.24.1 SDK that just came out with this note:
7.24.1 2017‑9‑27 Updates the way the SDK interacts with Apple's StoreServices. 

It sounds like that's a fix for the bug in this thread?  Just want to confirm since there's no comment here about it yet.

But what's the plan for the millions of installed apps with older SDKs?  Is there any way you guys can shut off calls to StoreServices from the admob server side for iOS11 clients on older SDKs if this is some kind of targeting thing?  If like Paddy says this is coming from calls to canMakePayments, can you stop older SDKs from needing to call that by changing params being served up?  I really hope so...

Earl0Grey

unread,
Sep 28, 2017, 4:10:33 AM9/28/17
to Google Mobile Ads SDK Developers
In my opinion, it sounds like "Our team did something changes, but we are not sure that fixed this bug". Also Bharani Cherukuri said "Our team is actively investigating the issue.just yesterday.
Bharani Cherukuri are you sure that your team fixed this bug? Can we make a new release of our app with the new version of SDK or this update won't solve our problem?

четверг, 28 сентября 2017 г., 7:59:27 UTC+3 пользователь EB написал:

a...@fun.co

unread,
Sep 28, 2017, 8:44:56 AM9/28/17
to Google Mobile Ads SDK Developers
I see update in release notes section and can download library.
When pod will be updated?

Bharani Cherukuri (Mobile Ads SDK Team)

unread,
Sep 28, 2017, 10:24:10 AM9/28/17
to Google Mobile Ads SDK Developers
Hello all, 

Thank you for your patience. Our team has released the latest version of the Google Mobile Ads SDK 7.24.1 yesterday evening and the Cocoapods will be updated soon. This is an interim release that contains code altering the way our SDK interacts with Apple's StoreServices. We believe this should fix the errors you're receiving. Additionally, please note that we have been unable to replicate the crash locally. We are not sure that this will solve the problem completely as we do not have any specific steps to reproduce the issue. However, I recommend updating your apps to the latest version. Please let us know whether the crash disappears from your reporting or remains an issue.

Regards,
Bharani Cherukuri
Mobile Ads SDK Team

On Thursday, September 21, 2017 at 12:12:38 PM UTC-4, Alex Argo wrote:

EB

unread,
Oct 2, 2017, 10:18:34 AM10/2/17
to Google Mobile Ads SDK Developers

Does anybody have a method to reproduce the crash, to verify if 7.24.1 fixes it?
 

Francesco Marisaldi

unread,
Oct 2, 2017, 12:59:46 PM10/2/17
to Google Mobile Ads SDK Developers
Hello,

I released an update with latest sdk version today; the other app will probably receive the update tomorrow.
I will let you know if crashes will still be present on new versions.
To answer to your previous question (post on Sept 27th): unfortunately crashes were very random in my case, I had three crashes on my devices with no particular steps, but when I re-opened the app I hadn't any crashes without particular changes/steps. I hope that new SDK version will work fine for all iOS 11 users.

Thanks for the support

Bharani Cherukuri (Mobile Ads SDK Team)

unread,
Oct 2, 2017, 1:55:55 PM10/2/17
to Google Mobile Ads SDK Developers
Hello, 

@EB: The issue is still not reproducible. 

@Francesco: Thank you for confirming this. Please revert back to us about the feedback you receive from the update.

Regards,
Bharani Cherukuri

Anton Krasilnikov

unread,
Oct 5, 2017, 1:42:07 AM10/5/17
to Google Mobile Ads SDK Developers
@Francesco Do you have any new for us? Have 7.24.1 fixed the crash?

понедельник, 2 октября 2017 г., 19:59:46 UTC+3 пользователь Francesco Marisaldi написал:
Message has been deleted

Martijn

unread,
Oct 5, 2017, 2:36:37 AM10/5/17
to Google Mobile Ads SDK Developers
Our app with 7.24.1 was approved by Apple several hours ago.
Unfortunately we already received 1 crash report from Crashlytics:

StoreServices 
-[SSRequest _shutdownRequestWithMessageID:]

So the update doesn't fix the crash.

Bharani Cherukuri (Mobile Ads SDK Team)

unread,
Oct 5, 2017, 8:57:10 AM10/5/17
to Google Mobile Ads SDK Developers
Hello, 

Thank you for the confirming this. Could you provide us the complete Crash logs and the App store link to your app, so I can share this with the team to investigate further?

Martijn

unread,
Oct 5, 2017, 9:32:35 AM10/5/17
to Google Mobile Ads SDK Developers
Unfortunately there is not much data in the stack trace, see: http://crashes.to/s/29a6cd71ab5

Francesco Marisaldi

unread,
Oct 5, 2017, 12:48:51 PM10/5/17
to Google Mobile Ads SDK Developers
I haven't any crash related to Store Services and AdMob in new update with SDK 7.24.1 until now.
My apps usually have more active users during the weekend: so, my experience with this SDK version will be more complete after Sunday at least.
I'm going to update you if something will change.

Francesco

Martijn

unread,
Oct 5, 2017, 1:44:56 PM10/5/17
to Google Mobile Ads SDK Developers
11 hours after my previous post, the crash count is (luckily) still at 1. While the adoption of the app update is rising.

I have one hypothesis, that I need to get confirmed at Fabric Crashlytics.
Consider the following:
When an app crashes, it obviously stopped running. Crashlytics sends the crash report during the next user intended app launch.
What if the user did install the app update in between?

So:
  1. app crashes with version 1 (with AdMob 7.24.0)
  2. user installs app update version 2 (with AdMob 7.24.1)
  3. user launches app version 2
  4. Crashlytics sends crash report to server
What app version is Crashlytics sending in step 4? They might gather the actual version when creating the report.

EB

unread,
Oct 5, 2017, 2:49:44 PM10/5/17
to Google Mobile Ads SDK Developers

Admob folk - in what way is the SDK using [SKPaymentQueue canMakePayments]?  Is the SDK gathering up targeting info?  Can that be disabled or skipped?

What happens if we use Paddy's swizzling workaround?

Thanks

Bharani Cherukuri (Mobile Ads SDK Team)

unread,
Oct 5, 2017, 3:30:27 PM10/5/17
to Google Mobile Ads SDK Developers
Hello,

@Martijn/ @Francesco: Please keep us posted if you see any crashes, so I can follow up with our team.

@EB: Thank you for your patience. It is not recommended swizzling around with Apple's OS-level methods as a work around for this. Please note that we have been unable to replicate the crash locally. We are not sure that this release will solve the problem completely as we do not have any specific steps to reproduce the issue. Our team is actively monitoring the latest release and considering all the feedback into account. Please let us know whether the crash disappears from your reporting or remains an issue.

Let me know if you have any other questions.

Thanks,

Martijn

unread,
Oct 5, 2017, 3:34:04 PM10/5/17
to Google Mobile Ads SDK Developers
I have raised the question to Fabric about their behaviour after an app update.

Alexander Argo

unread,
Oct 6, 2017, 3:56:00 PM10/6/17
to Martijn, Google Mobile Ads SDK Developers
The 7.24.1SDK fixed the crash for all of our users that were experiencing the issue. We've had it live for a few days and only see the StoreServices crash on older version of our app.

--

---
You received this message because you are subscribed to a topic in the Google Groups "Google Mobile Ads SDK Developers" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/google-admob-ads-sdk/a7_GjrsmluU/unsubscribe.
To unsubscribe from this group and all its topics, send an email to google-admob-ads-sdk+unsub...@googlegroups.com.
To post to this group, send email to google-admob-ads-sdk@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Martijn

unread,
Oct 9, 2017, 3:31:47 AM10/9/17
to Google Mobile Ads SDK Developers
We still have 5 crashes recorded for 5 users with the latest app update with 7.24.1
To post to this group, send email to google-adm...@googlegroups.com.

Bharani Cherukuri (Mobile Ads SDK Team)

unread,
Oct 9, 2017, 11:30:49 AM10/9/17
to Google Mobile Ads SDK Developers
Hello all, 

@Alexander: Thank you for the feedback. Keep us posted if you see anything otherwise.

@Martijn: Could you provide us the new crash logs and the App store link for the app, when using the latest version of the SDK, so I can share it with the team to investigate further?

Martijn

unread,
Oct 9, 2017, 3:17:53 PM10/9/17
to Google Mobile Ads SDK Developers
From the crashes with the new app version and AdMob 7.24.1:
Crashed: com.apple.StoreServices.SSRequest.0x1c04dabe0
0  libobjc.A.dylib                0x182698430 objc_msgSend + 16
1  StoreServices                  0x18de781b4 -[SSRequest _shutdownRequestWithMessageID:] + 228
2  libdispatch.dylib              0x182af5088 _dispatch_call_block_and_release + 24
3  libdispatch.dylib              0x182af5048 _dispatch_client_callout + 16
4  libdispatch.dylib              0x182afee48 _dispatch_queue_serial_drain$VARIANT$mp + 528
5  libdispatch.dylib              0x182aff7d8 _dispatch_queue_invoke$VARIANT$mp + 340
6  libdispatch.dylib              0x182b00200 _dispatch_root_queue_drain_deferred_wlh$VARIANT$mp + 400
7  libdispatch.dylib              0x182b084a0 _dispatch_workloop_worker_thread$VARIANT$mp + 644
8  libsystem_pthread.dylib        0x182d9afe0 _pthread_wqthread + 932
9  libsystem_pthread.dylib        0x182d9ac30 start_wqthread + 4


With 7.24.0:
Crashed: com.apple.StoreServices.SSRequest.0x1c02dd570
0  libobjc.A.dylib                0x18618c430 objc_msgSend + 16
1  StoreServices                  0x19196b1b4 -[SSRequest _shutdownRequestWithMessageID:] + 228
2  libdispatch.dylib              0x1865e9088 _dispatch_call_block_and_release + 24
3  libdispatch.dylib              0x1865e9048 _dispatch_client_callout + 16
4  libdispatch.dylib              0x1865f2e48 _dispatch_queue_serial_drain$VARIANT$mp + 528
5  libdispatch.dylib              0x1865f37d8 _dispatch_queue_invoke$VARIANT$mp + 340
6  libdispatch.dylib              0x1865f4200 _dispatch_root_queue_drain_deferred_wlh$VARIANT$mp + 400
7  libdispatch.dylib              0x1865fc4a0 _dispatch_workloop_worker_thread$VARIANT$mp + 644
8  libsystem_pthread.dylib        0x18688efe0 _pthread_wqthread + 932
9  libsystem_pthread.dylib        0x18688ec30 start_wqthread + 4

Seems the same.

Bharani Cherukuri (Mobile Ads SDK Team)

unread,
Oct 10, 2017, 9:30:26 AM10/10/17
to Google Mobile Ads SDK Developers
Hello,

Thank you for sharing the additional details. I have shared this information with the rest of the team. I will update this thread if I have any new information.

Regards,

EB

unread,
Oct 10, 2017, 9:46:28 AM10/10/17
to Google Mobile Ads SDK Developers
I'm also getting a few crashes in start, maybe about 10% of the number of shutdown crashes - anybody else seeing these?

Thread #12
EXC_BAD_ACCESS KERN_INVALID_ADDRESS 0x0000000d6f45beb8
Crashed: com.apple.StoreServices.SSRequest.0x1c42cbc20.replyMessage
0  libobjc.A.dylib                0x185674430 objc_msgSend + 16
1  StoreServices                  0x190e52f88 __46-[SSRequest _startWithMessageID:messageBlock:]_block_invoke_2.81 + 84
2  libdispatch.dylib              0x185ad1048 _dispatch_client_callout + 16
3  libdispatch.dylib              0x185ad9ae8 _dispatch_queue_barrier_sync_invoke_and_complete + 56
4  StoreServices                  0x190e52f24 __46-[SSRequest _startWithMessageID:messageBlock:]_block_invoke.80 + 120
5  libxpc.dylib                   0x185db2300 _xpc_connection_call_event_handler + 68
6  libxpc.dylib                   0x185dafcb0 _xpc_connection_mach_event + 984
7  libdispatch.dylib              0x185ad1118 _dispatch_client_callout4 + 16
8  libdispatch.dylib              0x185ae78b8 _dispatch_mach_msg_invoke$VARIANT$mp + 356
9  libdispatch.dylib              0x185adad00 _dispatch_queue_serial_drain$VARIANT$mp + 200
10 libdispatch.dylib              0x185ae8534 _dispatch_mach_invoke$VARIANT$mp + 952
11 libdispatch.dylib              0x185adc200 _dispatch_root_queue_drain_deferred_wlh$VARIANT$mp + 400
12 libdispatch.dylib              0x185ae44a0 _dispatch_workloop_worker_thread$VARIANT$mp + 644
13 libsystem_pthread.dylib        0x185d76fe0 _pthread_wqthread + 932
14 libsystem_pthread.dylib        0x185d76c30 start_wqthread + 4

Tolga Şeremet

unread,
Oct 12, 2017, 8:29:21 AM10/12/17
to Google Mobile Ads SDK Developers
Hi Bharani, we are also experiencing the same crash on most of our apps. Please see attached crash log with around 100k crashes on 50k users.

http://crashes.to/s/9b051dd86e2

Thanks.
10 Ekim 2017 Salı 16:30:26 UTC+3 tarihinde Bharani Cherukuri (Mobile Ads SDK Team) yazdı:

Bharani Cherukuri (Mobile Ads SDK Team)

unread,
Oct 12, 2017, 12:05:19 PM10/12/17
to Google Mobile Ads SDK Developers
Hello all,

@EB: Thank you for confirming this. I have shared this information with the rest of the team.

@Tolga: Can you confirm the version of the Mobile Ads SDK used in your app? If you're using an old version, it is recommended that you update to the latest version of the SDK and try again.

Thanks,

Martijn

unread,
Oct 13, 2017, 2:03:15 PM10/13/17
to Google Mobile Ads SDK Developers
Another crash issue that is rising tremendously since 7.24.1 is:
WebCore
WebCore::GraphicsContext3D::reshape(int, int)

This issue is in forever and the crash amount varies over time.
I think it's not specifically related to the AdMob code, but to the code of the ad itself, as Crashlytics suggests the following:

Heads Up!
OpenGL rendering while app in background state

Details:
Based on the stack trace displayed here, it looks like new calls triggering OpenGL rendering took place while the app was transitioning to, or from, a background state. If you set up OpenGL drawing in your app delegate's methods, make sure that you only did so in applicationDidBecomeActive:, never in application:willFinishLaunchingWithOptions: or application:didFinishLaunchingWithOptions:.
According to some reports, even displaying an FPS indicator for SpriteKit could cause rendering to occur before it is allowed.
Crashed: WebThread
0  libGPUSupportMercury.dylib     0x19e5b2efc gpus_ReturnNotPermittedKillClient
1  AGXGLDriver                    0x1a26f3238 (Missing)
2  libGPUSupportMercury.dylib     0x19e5b3edc gpusSubmitDataBuffers
3  AGXGLDriver                    0x1a26f4734 (Missing)
4  WebCore                        0x18b777c5c WebCore::GraphicsContext3D::reshape(int, int) + 552
5  WebCore                        0x18c3accfc WebCore::WebGLRenderingContextBase::initializeNewContext() + 856
6  WebCore                        0x18c3ac728 WebCore::WebGLRenderingContextBase::WebGLRenderingContextBase(WebCore::HTMLCanvasElement&, WTF::Ref<WebCore::GraphicsContext3D>&&, WebCore::GraphicsContext3DAttributes) + 532
7  WebCore                        0x18c3a6e34 WebCore::WebGLRenderingContext::WebGLRenderingContext(WebCore::HTMLCanvasElement&, WTF::Ref<WebCore::GraphicsContext3D>&&, WebCore::GraphicsContext3DAttributes) + 44
8  WebCore                        0x18c3abd00 WebCore::WebGLRenderingContextBase::create(WebCore::HTMLCanvasElement&, WebCore::GraphicsContext3DAttributes&, WTF::String const&) + 956
9  WebCore                        0x18b7b3aac WebCore::HTMLCanvasElement::getContextWebGL(WTF::String const&, WebCore::GraphicsContext3DAttributes&&) + 152
10 WebCore                        0x18bb0a6dc WebCore::JSHTMLCanvasElement::getContext(JSC::ExecState&) + 312
11 WebCore                        0x18b35f158 WebCore::jsHTMLCanvasElementPrototypeFunctionGetContext(JSC::ExecState*) + 144
12 JavaScriptCore                 0x18a58f4c8 llint_entry + 29608
13 JavaScriptCore                 0x18a58ea94 llint_entry + 26996
14 JavaScriptCore                 0x18a58ea94 llint_entry + 26996
15 JavaScriptCore                 0x18a58ea94 llint_entry + 26996
16 JavaScriptCore                 0x18a587f50 vmEntryToJavaScript + 272
17 JavaScriptCore                 0x18a46db94 JSC::JITCode::execute(JSC::VM*, JSC::ProtoCallFrame*) + 136
18 JavaScriptCore                 0x18a444b28 JSC::Interpreter::executeProgram(JSC::SourceCode const&, JSC::ExecState*, JSC::JSObject*) + 11244
19 JavaScriptCore                 0x18a1391ac JSC::evaluate(JSC::ExecState*, JSC::SourceCode const&, JSC::JSValue, WTF::NakedPtr<JSC::Exception>&) + 316
20 WebCore                        0x18c0f34a4 WebCore::ScriptController::evaluateInWorld(WebCore::ScriptSourceCode const&, WebCore::DOMWrapperWorld&, WebCore::ExceptionDetails*) + 324
21 WebCore                        0x18c0f9990 WebCore::ScriptElement::executeClassicScript(WebCore::ScriptSourceCode const&) + 568
22 WebCore                        0x18be40ee4 WebCore::LoadableClassicScript::execute(WebCore::ScriptElement&) + 156
23 WebCore                        0x18c0f9c34 WebCore::ScriptElement::executeScriptAndDispatchEvent(WebCore::LoadableScript&) + 216
24 WebCore                        0x18b29fc0c WebCore::HTMLScriptRunner::executeParsingBlockingScripts() + 328
25 WebCore                        0x18b256840 WebCore::HTMLDocumentParser::executeScriptsWaitingForStylesheets() + 44
26 WebCore                        0x18c0f1b60 WebCore::ScriptableDocumentParser::scriptsWaitingForStylesheetsExecutionTimerFired() + 76
27 WebCore                        0x18b237cd8 WebCore::ThreadTimers::sharedTimerFiredInternal() + 172
28 WebCore                        0x18b237c18 WebCore::timerFired(__CFRunLoopTimer*, void*) + 28
29 CoreFoundation                 0x1834fc99c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 28
30 CoreFoundation                 0x1834fc6c0 __CFRunLoopDoTimer + 864
31 CoreFoundation                 0x1834fbec0 __CFRunLoopDoTimers + 248
32 CoreFoundation                 0x1834f9aa8 __CFRunLoopRun + 1928
33 CoreFoundation                 0x18341a2d8 CFRunLoopRunSpecific + 436
34 WebCore                        0x18b269ac4 RunWebThread(void*) + 456
35 libsystem_pthread.dylib        0x18318032c _pthread_body + 308
36 libsystem_pthread.dylib        0x1831801f8 _pthread_body + 310
37 libsystem_pthread.dylib        0x18317ec38 thread_start + 4

Bharani Cherukuri (Mobile Ads SDK Team)

unread,
Oct 13, 2017, 3:23:36 PM10/13/17
to Google Mobile Ads SDK Developers
Hello Martijn, 

Thank you for reporting the issue. This looks like a new issue, so I'd suggest that you open a new thread and we will be happy to assist you from there.

Regards,

Alexandre Cassagne

unread,
Oct 24, 2017, 2:42:03 AM10/24/17
to Google Mobile Ads SDK Developers
Has the issue been fixed? I am getting this issue too. The console prints



=================================================================


Main Thread Checker: UI API called on a background thread: -[UIApplication delegate]


PID: 22548, TID: 4703718, Thread name: (none), Queue name: com.google.admob.sdk-core-controller, QoS: 0


Backtrace:


4   Sudoku                              0x0000000102550468 GADiTunesMetadataForFileAtPath + 6081


5   Sudoku                              0x00000001025b8591 hasRequiredParams + 17353


6   Sudoku                              0x000000010255c083 GADGIDSignInInstance + 9090


7   Sudoku                              0x000000010252627b GADCategories_NSString_GADPathValidation + 10071


8   libdispatch.dylib                   0x000000010c2a73f7 _dispatch_call_block_and_release + 12


9   libdispatch.dylib                   0x000000010c2a843c _dispatch_client_callout + 8


10  libdispatch.dylib                   0x000000010c2b095b _dispatch_queue_serial_drain + 1162


11  libdispatch.dylib                   0x000000010c2b12df _dispatch_queue_invoke + 336


12  libdispatch.dylib                   0x000000010c2ad07d _dispatch_queue_override_invoke + 733


13  libdispatch.dylib                   0x000000010c2b41f9 _dispatch_root_queue_drain + 772


14  libdispatch.dylib                   0x000000010c2b3e97 _dispatch_worker_thread3 + 132


15  libsystem_pthread.dylib             0x000000010c76f1ca _pthread_wqthread + 1387


16  libsystem_pthread.dylib             0x000000010c76ec4d start_wqthread + 13


2017-10-24 02:41:31.402426-0400 Sudoku[22548:4703718] [reports] Main Thread Checker: UI API called on a background thread: -[UIApplication delegate]


PID: 22548, TID: 4703718, Thread name: (none), Queue name: com.google.admob.sdk-core-controller, QoS: 0


Backtrace:


4   Sudoku                              0x0000000102550468 GADiTunesMetadataForFileAtPath + 6081


5   Sudoku                              0x00000001025b8591 hasRequiredParams + 17353


6   Sudoku                              0x000000010255c083 GADGIDSignInInstance + 9090


7   Sudoku                              0x000000010252627b GADCategories_NSString_GADPathValidation + 10071


8   libdispatch.dylib                   0x000000010c2a73f7 _dispatch_call_block_and_release + 12


9   libdispatch.dylib                   0x000000010c2a843c _dispatch_client_callout + 8


10  libdispatch.dylib                   0x000000010c2b095b _dispatch_queue_serial_drain + 1162


11  libdispatch.dylib                   0x000000010c2b12df _dispatch_queue_invoke + 336


12  libdispatch.dylib                   0x000000010c2ad07d _dispatch_queue_override_invoke + 733


13  libdispatch.dylib                   0x000000010c2b41f9 _dispatch_root_queue_drain + 772


14  libdispatch.dylib                   0x000000010c2b3e97 _dispatch_worker_thread3 + 132


15  libsystem_pthread.dylib             0x000000010c76f1ca _pthread_wqthread + 1387


16  libsystem_pthread.dylib             0x000000010c76ec4d start_wqthread + 13


=================================================================


Main Thread Checker: UI API called on a background thread: -[UIApplication keyWindow]


PID: 22548, TID: 4703718, Thread name: (none), Queue name: com.google.admob.sdk-core-controller, QoS: 0


Backtrace:


4   Sudoku                              0x000000010254fcbb GADiTunesMetadataForFileAtPath + 4116


5   Sudoku                              0x0000000102550480 GADiTunesMetadataForFileAtPath + 6105


6   Sudoku                              0x00000001025b8591 hasRequiredParams + 17353


7   Sudoku                              0x000000010255c083 GADGIDSignInInstance + 9090


8   Sudoku                              0x000000010252627b GADCategories_NSString_GADPathValidation + 10071


9   libdispatch.dylib                   0x000000010c2a73f7 _dispatch_call_block_and_release + 12


10  libdispatch.dylib                   0x000000010c2a843c _dispatch_client_callout + 8


11  libdispatch.dylib                   0x000000010c2b095b _dispatch_queue_serial_drain + 1162


12  libdispatch.dylib                   0x000000010c2b12df _dispatch_queue_invoke + 336


13  libdispatch.dylib                   0x000000010c2ad07d _dispatch_queue_override_invoke + 733


14  libdispatch.dylib                   0x000000010c2b41f9 _dispatch_root_queue_drain + 772


15  libdispatch.dylib                   0x000000010c2b3e97 _dispatch_worker_thread3 + 132


16  libsystem_pthread.dylib             0x000000010c76f1ca _pthread_wqthread + 1387


17  libsystem_pthread.dylib             0x000000010c76ec4d start_wqthread + 13


2017-10-24 02:41:33.566201-0400 Sudoku[22548:4703718] [reports] Main Thread Checker: UI API called on a background thread: -[UIApplication keyWindow]


PID: 22548, TID: 4703718, Thread name: (none), Queue name: com.google.admob.sdk-core-controller, QoS: 0


Backtrace:


4   Sudoku                              0x000000010254fcbb GADiTunesMetadataForFileAtPath + 4116


5   Sudoku                              0x0000000102550480 GADiTunesMetadataForFileAtPath + 6105


6   Sudoku                              0x00000001025b8591 hasRequiredParams + 17353


7   Sudoku                              0x000000010255c083 GADGIDSignInInstance + 9090


8   Sudoku                              0x000000010252627b GADCategories_NSString_GADPathValidation + 10071


9   libdispatch.dylib                   0x000000010c2a73f7 _dispatch_call_block_and_release + 12


10  libdispatch.dylib                   0x000000010c2a843c _dispatch_client_callout + 8


11  libdispatch.dylib                   0x000000010c2b095b _dispatch_queue_serial_drain + 1162


12  libdispatch.dylib                   0x000000010c2b12df _dispatch_queue_invoke + 336


13  libdispatch.dylib                   0x000000010c2ad07d _dispatch_queue_override_invoke + 733


14  libdispatch.dylib                   0x000000010c2b41f9 _dispatch_root_queue_drain + 772


15  libdispatch.dylib                   0x000000010c2b3e97 _dispatch_worker_thread3 + 132


16  libsystem_pthread.dylib             0x000000010c76f1ca _pthread_wqthread + 1387


17  libsystem_pthread.dylib             0x000000010c76ec4d start_wqthread + 13


=================================================================


Main Thread Checker: UI API called on a background thread: -[UIApplication supportedInterfaceOrientationsForWindow:]


PID: 22548, TID: 4703718, Thread name: (none), Queue name: com.google.admob.sdk-core-controller, QoS: 0


Backtrace:


4   Sudoku                              0x00000001025504e8 GADiTunesMetadataForFileAtPath + 6209


5   Sudoku                              0x00000001025b8591 hasRequiredParams + 17353


6   Sudoku                              0x000000010255c083 GADGIDSignInInstance + 9090


7   Sudoku                              0x000000010252627b GADCategories_NSString_GADPathValidation + 10071


8   libdispatch.dylib                   0x000000010c2a73f7 _dispatch_call_block_and_release + 12


9   libdispatch.dylib                   0x000000010c2a843c _dispatch_client_callout + 8


10  libdispatch.dylib                   0x000000010c2b095b _dispatch_queue_serial_drain + 1162


11  libdispatch.dylib                   0x000000010c2b12df _dispatch_queue_invoke + 336


12  libdispatch.dylib                   0x000000010c2ad07d _dispatch_queue_override_invoke + 733


13  libdispatch.dylib                   0x000000010c2b41f9 _dispatch_root_queue_drain + 772


14  libdispatch.dylib                   0x000000010c2b3e97 _dispatch_worker_thread3 + 132


15  libsystem_pthread.dylib             0x000000010c76f1ca _pthread_wqthread + 1387


16  libsystem_pthread.dylib             0x000000010c76ec4d start_wqthread + 13


2017-10-24 02:41:33.600121-0400 Sudoku[22548:4703718] [reports] Main Thread Checker: UI API called on a background thread: -[UIApplication supportedInterfaceOrientationsForWindow:]


PID: 22548, TID: 4703718, Thread name: (none), Queue name: com.google.admob.sdk-core-controller, QoS: 0


Backtrace:


4   Sudoku                              0x00000001025504e8 GADiTunesMetadataForFileAtPath + 6209


5   Sudoku                              0x00000001025b8591 hasRequiredParams + 17353


6   Sudoku                              0x000000010255c083 GADGIDSignInInstance + 9090


7   Sudoku                              0x000000010252627b GADCategories_NSString_GADPathValidation + 10071


8   libdispatch.dylib                   0x000000010c2a73f7 _dispatch_call_block_and_release + 12


9   libdispatch.dylib                   0x000000010c2a843c _dispatch_client_callout + 8


10  libdispatch.dylib                   0x000000010c2b095b _dispatch_queue_serial_drain + 1162


11  libdispatch.dylib                   0x000000010c2b12df _dispatch_queue_invoke + 336


12  libdispatch.dylib                   0x000000010c2ad07d _dispatch_queue_override_invoke + 733


13  libdispatch.dylib                   0x000000010c2b41f9 _dispatch_root_queue_drain + 772


14  libdispatch.dylib                   0x000000010c2b3e97 _dispatch_worker_thread3 + 132


15  libsystem_pthread.dylib             0x000000010c76f1ca _pthread_wqthread + 1387


16  libsystem_pthread.dylib             0x000000010c76ec4d start_wqthread + 13




and sometimes it will crash.

Bharani Cherukuri (Mobile Ads SDK Team)

unread,
Oct 24, 2017, 12:17:03 PM10/24/17
to Google Mobile Ads SDK Developers
Hello Alexandre, 

Thank you for reporting the issue. This thread is specific to the StoreServices crash, so for better tracking purposes, I'd suggest that you open a new thread and we will be happy to assist you from there.

Regards,
Bharani Cherukuri
Mobile Ads SDK Team

Alexandre Cassagne

unread,
Oct 24, 2017, 3:08:35 PM10/24/17
to Google Mobile Ads SDK Developers
Hi—could you give me the link of the topic that pertains to that crash please?

Bharani Cherukuri (Mobile Ads SDK Team)

unread,
Oct 24, 2017, 3:41:38 PM10/24/17
to Google Mobile Ads SDK Developers
Hi Alexandre, 

You can go ahead and open a new thread and someone from our team will be assisting you promptly. Make sure to provide all the details related to the crash in the new thread so we can take a look and get back to you.

Thanks,

Martijn

unread,
Oct 25, 2017, 2:39:53 AM10/25/17
to Google Mobile Ads SDK Developers
Yesterday we released the second app update with AdMob 7.24.1 and it still reports the [SSRequest _shutdownRequestWithMessageID:] crash.
The daily amount of crashes are significantly lower than with AdMob 7.24.0, but the root cause is not 100% resolved.

But we also see another crash issue related to StoreServices:
StoreServices
__46-[SSRequest _startWithMessageID:messageBlock:]_block_invoke_2.81


Can you please investigate if this is also caused by AdMob?

Bharani Cherukuri (Mobile Ads SDK Team)

unread,
Oct 25, 2017, 3:36:19 PM10/25/17
to Google Mobile Ads SDK Developers
Hello Martijn,

Thank you for providing the feedback. We're not able to disable the SDK component that's interacting with SSKit beyond what we've already done. There are few places in our SDK where the SDK is still interacting with the StoreServices. Our team has already filed a radar with Apple, to see if we can work on a solution. I will keep you posted if I have any new information. 

Regards,

Grant

unread,
Nov 27, 2017, 7:22:51 PM11/27/17
to Google Mobile Ads SDK Developers
Hey Bharani,

Any update on this issue?

Thanks

Martijn

unread,
Nov 28, 2017, 3:13:27 AM11/28/17
to Google Mobile Ads SDK Developers
Hello Bharani,

Our current top 2 crash issues are related to AdMob SDK, even with version 7.25.0:
  1. StoreServices -[SSRequest _shutdownRequestWithMessageID:]

  1. StoreServices __46-[SSRequest _startWithMessageID:messageBlock:]_block_invoke_2.81

    This is totally unacceptable. For months there is a continuous daily stream of crashes.
    It seems easy to point fingers toward Apple. I don't buy that without a technical explanation.

    Why does an advertisement SDK needs to contact the App Store?
    The only important reason that I can think of is to retrieve the current app price in the local currency.
    But this feature seems to cause millions of app crashes worldwide.
    In this case Google should be honest and value customer experience (no crashes) above revenue, by disabling the StoreServices until the issue finally solved.

    So Google, you always brag about transparency. What's it gonna be?

    Samuel Stow (Mobile Ads SDK Team)

    unread,
    Nov 28, 2017, 12:30:58 PM11/28/17
    to Google Mobile Ads SDK Developers
    Hi Martijn,

    We're sorry that this issue has continued to affect you, we have been working to minimize the impact while retaining the important signal of whether the user can make purchases.

    Here are a couple of open radars related to the crash on the apple side:


    If you want to file a bug report to apple, as long as you name it something like "iOS 11 crash in -[SSRequest _shutdownRequestWithMessageID:]", Apple will probably link it in with the others when they make their internal duplicate.

    We use StoreServices in order to avoid showing ads that can't convert. It's not something we can live without, which is why we're trying to engage with Apple to find the root cause.

    There is however another update in the SDK version 7.26.0.  Previously, we updated to check the StoreServices capability (SKPaymentQueue canMakePayments) on app enters foreground, which could be multiple times in a user session, increasing the chances of a crash occurring. In 7.26.0 we have restricted this further, and we only check the StoreServices capability on app launch, so once in a session. We believe this should minimize the chances of a crash.

    We suggest updating to 7.26.0, and of course please advise if the crash continues to occur at unexpected levels.

    Regards

    Sam

    Martijn

    unread,
    Nov 28, 2017, 6:11:53 PM11/28/17
    to Google Mobile Ads SDK Developers
    Hi Samual,

    Thank you for your extensive answer.
    We'll submit an app update with 7.26.0 and report back to you.

    2 tips:
    1. When you make improvements for severe issues, it's recommended to mention them in the Release Notes. Those of 7.26.0 don't refer to this (or any) issue.
    2. As a work-around until Apple fixes the issue, you might prevent the crash by wrapping the particular code in a try-catch statement. 
    With best regards,

    Martijn

    Samuel Stow (Mobile Ads SDK Team)

    unread,
    Nov 28, 2017, 7:05:27 PM11/28/17
    to Google Mobile Ads SDK Developers
    Hi Martin,

    Thanks for your suggestions. You're correct about the release notes, we will be updating these shortly.

    Regarding the wrapping in try-catch, this is a fair suggestion, however looking at the crashes, it doesn't appear that doing this would catch the exception, since the crashes (eg http://crashes.to/s/9b051dd86e2) seem to occur on a private StoreServices thread and are not a direct result of our call to [SKPaymentQueue canMakePayments] - the crash appears to be an issue where a message is being sent to a deallocated object. Given it only occurs occasionally it could be a race condition.

    Regards

    Sam

    Martijn

    unread,
    Nov 29, 2017, 4:20:48 AM11/29/17
    to Google Mobile Ads SDK Developers
    Hi Samuel,

    Thanks for updating the Release Notes.
    And for considering the try-catch, but I see your point.

    With kind regards,

    Martijn

    Michael Economy

    unread,
    Jul 9, 2018, 6:35:47 PM7/9/18
    to Google Mobile Ads SDK Developers
    I'm getting a similar crash with the most recent google ads SDK

    heres the stacktrace:

    Thread 5 name:
    Thread 5 Crashed:
    0   libobjc.A.dylib               0x0000000182d0c430 objc_msgSend + 16
    1   StoreServices                 0x000000018e7f85c0 __46-[SSRequest _startWithMessageID:messageBlock:]_block_invoke_2.81 + 84 (SSRequest.m:230)
    2   libdispatch.dylib             0x000000018342d048 _dispatch_client_callout + 16 (object.m:502)
    3   libdispatch.dylib             0x0000000183435ae8 _dispatch_queue_barrier_sync_invoke_and_complete + 56 (queue.c:3689)
    4   StoreServices                 0x000000018e7f855c __46-[SSRequest _startWithMessageID:messageBlock:]_block_invoke.80 + 120 (SSRequest.m:225)
    5   libxpc.dylib                   0x000000018370e7d0 _xpc_connection_call_event_handler + 68 (connection.c:0)
    6   libxpc.dylib                   0x000000018370c168 _xpc_connection_mach_event + 984 (connection.c:1203)
    7   libdispatch.dylib             0x000000018342d118 _dispatch_client_callout4 + 16 (object.m:542)
    8   libdispatch.dylib             0x00000001834438b8 _dispatch_mach_msg_invoke$VARIANT$mp + 356 (mach.c:2169)
    9   libdispatch.dylib             0x0000000183436d00 _dispatch_queue_serial_drain$VARIANT$mp + 200 (inline_internal.h:2539)
    10  libdispatch.dylib             0x0000000183444534 _dispatch_mach_invoke$VARIANT$mp + 952 (mach.c:2467)
    11  libdispatch.dylib             0x0000000183438200 _dispatch_root_queue_drain_deferred_wlh$VARIANT$mp + 400 (queue.c:5920)
    12  libdispatch.dylib             0x00000001834404a0 _dispatch_workloop_worker_thread$VARIANT$mp + 644 (source.c:2515)
    13  libsystem_pthread.dylib       0x00000001836d2fd0 _pthread_wqthread + 932 (pthread.c:2207)
    14  libsystem_pthread.dylib       0x00000001836d2c20 start_wqthread + 4



    I haven't been able to reproduce - this happened in testflight.

    mobileadssdk-a...@google.com

    unread,
    Jul 10, 2018, 2:38:59 PM7/10/18
    to Michael Economy, Google Mobile Ads SDK Developers
    Hi,

    thanks, yes as per my reply on your other thread, this is a known issue but underlying cause is an open Apple bug, related to https://openradar.appspot.com/34637890.

    Regards

    Sam


    =~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
    Also find us on our blog and Google+ page:
        http://googleadsdeveloper.blogspot.com
        https://plus.google.com/115658573333388777174/
    =~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~

    --

    ---
    You received this message because you are subscribed to the Google Groups "Google Mobile Ads SDK Developers" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to google-admob-ads-sdk+unsub...@googlegroups.com.
    To post to this group, send email to google-admob-ads-sdk@googlegroups.com.
    To view this discussion on the web visit https://groups.google.com/d/msgid/google-admob-ads-sdk/def5986d-1b2a-4281-8833-d6805ff4d920%40googlegroups.com.
    Reply all
    Reply to author
    Forward
    0 new messages