Ios 共享MKMapView屏幕截图

Ios 共享MKMapView屏幕截图,ios,iphone,xcode,mkmapview,mkmapsnapshotter,Ios,Iphone,Xcode,Mkmapview,Mkmapsnapshotter,我有一个MKMapView,我想把它截图分享给一个社交网络,比如Facebook。我找到了一个很好的方法来制作屏幕截图,使用MKMapSnapshotter(从iOS 7开始提供),但是我的问题是:我能分享mkmapsview的屏幕截图吗?苹果允许这样做吗 我发现了类似的问题,但没有给出任何明确的答案。我的直觉是;为什么苹果不允许这样 如果您已经使用苹果提供的MKMapSnapshotter获取了您的mkmapsview的UIImage表示,我冒昧地猜测,苹果已经给了你所需的工具,你可以对图像做

我有一个
MKMapView
,我想把它截图分享给一个社交网络,比如Facebook。我找到了一个很好的方法来制作屏幕截图,使用
MKMapSnapshotter
(从iOS 7开始提供),但是我的问题是:我能分享
mkmapsview
的屏幕截图吗?苹果允许这样做吗


我发现了类似的问题,但没有给出任何明确的答案。

我的直觉是;为什么苹果不允许这样


如果您已经使用苹果提供的
MKMapSnapshotter
获取了您的
mkmapsview
UIImage
表示,我冒昧地猜测,苹果已经给了你所需的工具,你可以对图像做任何你想做的事情,因此对你如何处理图像没有任何限制。

是的,当然,为什么苹果会反对你

你当然可以分享这个形象。正如您所提到的,您只需要使用默认共享表即可获得图像。代码如下:

NSArray *activityItems = [NSArray arrayWithObjects:yourImage, nil];
UIActivityViewController *aActivityView = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:nil];
aActivityView.modalInPopover = UIModalTransitionStyleCoverVertical;
[self presentViewController:aActivityView animated:YES completion:^{

}];
这将显示一个
UIActivityViewController
的视图,其中包含共享选项


希望这能有所帮助。

尝试iOS版谷歌地图SDK:

要制作屏幕截图,请使用以下代码:

CGRect rect = [captureView bounds];
UIGraphicsBeginImageContextWithOptions(rect.size,YES,0.0f);
CGContextRef context = UIGraphicsGetCurrentContext();
[captureView.layer renderInContext:context];   
UIImage *capturedImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

联系苹果并获得他们的书面许可,或者联系律师。情况并不像这两个答案看起来那么清楚。我不会在应用程序之外使用此材料。在MKMapView中按“合法”链接,并查看您自己“[…]本资料为专有资料,受TomTom或其供应商的版权保护、数据库权利保护和其他知识产权保护。本资料的使用受许可协议条款的约束。未经授权复制或披露本资料将导致刑事和民事责任。”@MatthiasBauch谢谢你的建议我投票结束这个问题,因为它与编程无关。