আপনি ইউআইডোকামেন্ট ইনটেকশন কন্ট্রোলার ব্যবহার না করে এটি করতে পারেন এবং এই 3 টি পদ্ধতিতে সরাসরি ইনস্টাগ্রামে যেতে পারেন:
এটি অন্যান্য সমস্ত বিখ্যাত অ্যাপের মতোই কাজ করে। কোডটি উদ্দেশ্য সিতে লেখা হয়েছে, আপনি চাইলে আপনি এটি স্যুইফ্টে অনুবাদ করতে পারেন। আপনার যা করা দরকার তা হ'ল আপনার চিত্রটি ডিভাইসে সংরক্ষণ করা এবং ইউআরএলচেমি ব্যবহার করা
এটি আপনার .m ফাইলের মধ্যে যুক্ত করুন
#import <Photos/Photos.h>
প্রথমে আপনাকে এই পদ্ধতির সাহায্যে আপনার ইউআইআইজেইসটি ডিভাইসে সংরক্ষণ করতে হবে:
-(void)savePostsPhotoBeforeSharing
{
UIImageWriteToSavedPhotosAlbum([UIImage imageNamed:@"image_file_name.jpg"], self, @selector(image:didFinishSavingWithError:contextInfo:), NULL);
}
এই পদ্ধতিটি আপনার ডিভাইসে চিত্রটি সংরক্ষণ করার জন্য কলব্যাক:
- (void)image:(UIImage *)image didFinishSavingWithError:(NSError *)error contextInfo: (void *) contextInfo;
{
[self sharePostOnInstagram];
}
ছবিটি ডিভাইসে সংরক্ষিত হওয়ার পরে, আপনার সবেমাত্র সঞ্চিত চিত্রটির কোয়েরি করতে হবে এবং এটি একটি PHAsset হিসাবে পাওয়া উচিত
-(void)sharePostOnInstagram
{
PHFetchOptions *fetchOptions = [PHFetchOptions new];
fetchOptions.sortDescriptors = @[[NSSortDescriptor sortDescriptorWithKey:@"creationDate" ascending:NO],];
__block PHAsset *assetToShare;
PHFetchResult *result = [PHAsset fetchAssetsWithMediaType:PHAssetMediaTypeImage options:fetchOptions];
[result enumerateObjectsUsingBlock:^(PHAsset *asset, NSUInteger idx, BOOL *stop) {
assetToShare = asset;
}];
if([assetToShare isKindOfClass:[PHAsset class]])
{
NSString *localIdentifier = assetToShare.localIdentifier;
NSString *urlString = [NSString stringWithFormat:@"instagram://library?LocalIdentifier=%@",localIdentifier];
NSURL *instagramURL = [NSURL URLWithString:urlString];
if ([[UIApplication sharedApplication] canOpenURL: instagramURL])
{
[[UIApplication sharedApplication] openURL: instagramURL];
} else
{
NSLog(@"No instagram installed");
}
}
}
এবং আপনার info.plist এর অধীনে এটি রাখতে ভুলবেন না LSApplicationQueriesSchemes
<string>instagram</string>