MKMapSnapshotter 'completionHandler' 未在 iPhone 上调用 6/6+

MKMapSnapshotter 'completionHandler' not called on iPhone 6/6+

我正在开发适用于 MKMapSnapshotter API 的应用程序。
它制作具有所需区域的地图快照。
它的代码从前台应用程序状态和主线程调用,如下所示:

MKMapSnapshotOptions* options = [[MKMapSnapshotOptions alloc] init];
options.region                = MKCoordinateRegionMake(locationCenter, span);
options.scale                 = UIScreen.mainScreen.scale;
options.size                  = size;

__block typeof(self) blockSelf = self;

MKMapSnapshotter* snapshooter = [[MKMapSnapshotter alloc] initWithOptions: options];

[snapshooter startWithCompletionHandler: ^(MKMapSnapshot* snapshot, NSError* error) {
    blockSelf.snapshot = snapshot.image;
}];

我注意到在 iPhone 6 和 6+ 上从未调用完成处理程序,在 iOS 8 和 9 上进行了测试。
在 iOS 模拟器中,一切都按预期工作,使用 Xcode 7、iOS 8 和 9 进行了测试。
任何想法 - 如何解决这个问题?

试试这个

__block __strong typeof(self) blockSelf = self