У меня есть приложение, и пользователи делятся скриншотами с ним из приложения.Приложение работает и работает правильно.В настоящее время я понял, что когда пользователь нажимает на общий доступ к Instagram, он переходит только на страницу входа.Даже если пользователь входит в Instagram и повторно щелкает мое приложение, чтобы поделиться историей, он все равно переходит на страницу входа в Instagram.Что это за проблема?
- (IBAction)instagramClicked:(id)sender
{
[FIRAnalytics logEventWithName:@"instagram_share"
parameters:@{
@"name": @"instagram_share",
@"full_text": @"instagram_share"
}];
[self backgroundImage:UIImagePNGRepresentation([self getScreenshot])
attributionURL:@"abcapp://"];
}
//Get image of the view
- (UIImage *)getScreenshot {
CGRect rect = [_shareView bounds];
UIGraphicsBeginImageContextWithOptions(rect.size,NO,2.0f);
CGContextRef context = UIGraphicsGetCurrentContext();
[_shareView.layer renderInContext:context];
UIImage *capturedScreen = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return capturedScreen;
}
- (void)backgroundImage:(NSData *)backgroundImage
attributionURL:(NSString *)attributionURL {
// Verify app can open custom URL scheme, open if able
NSURL *urlScheme = [NSURL URLWithString:@"instagram-stories://share"];
if ([[UIApplication sharedApplication] canOpenURL:urlScheme]) {
// Assign background image asset and attribution link URL to pasteboard
NSArray *pasteboardItems = @[@{@"com.instagram.sharedSticker.backgroundImage" : backgroundImage,
@"com.instagram.sharedSticker.contentURL" : attributionURL}];
NSDictionary *pasteboardOptions = @{UIPasteboardOptionExpirationDate : [[NSDate date] dateByAddingTimeInterval:60 * 5]};
// This call is iOS 10+, can use 'setItems' depending on what versions you support
[[UIPasteboard generalPasteboard] setItems:pasteboardItems options:pasteboardOptions];
[[UIApplication sharedApplication] openURL:urlScheme options:@{} completionHandler:nil];
} else {
// Handle older app versions or app not installed case
}
}