से iOS 8 मैं का उपयोग करने में सफलतापूर्वक प्रवेश एक ही फ़ोल्डर है " अनुप्रयोग समूह कार्यक्षमता। " मैं @siejkowski के जवाब का विस्तार कर रहा हूँ।
नोट: यह केवल उसी डेवलपर खाते से काम करेगा।
उसके लिए आपको नीचे दिए गए चरणों का पालन करना होगा।
- पहले अपने डेवलपर खाते से "ऐप समूह" सक्षम करें।
- प्रोविज़निंग प्रोफ़ाइल बनाएँ। और इसका उपयोग करें।
अब आपको Two Apps बनाना होगा। नमूना नाम
- डेमो_शेयर_ऑन
- Demo_Share_Two
अब हम शेयरिंग फ़ोल्डर में Demo_Share_One से छवियों को कॉपी कर रहे हैं जो कि डिफ़ॉल्ट रूप से बनाई जाती है जब आप ऐप समूह को सक्षम करते हैं और ऐप चलाते हैं। और उन सभी चित्रों को Demo_Share_Two से एक्सेस करेगा ।
आपको समूह नाम लेना होगा जो आपके डेवलपर खाते में सेट किया गया था group.filesharingdemo
।
फ़ोल्डर url साझा करने के सापेक्ष पथ प्राप्त करने के लिए दोनों ऐप्स में नीचे विधि जोड़ें।
- (NSString *) getSharedLocationPath:(NSString *)appGroupName {
NSFileManager *fileManager = [NSFileManager defaultManager];
NSURL *groupContainerURL = [fileManager containerURLForSecurityApplicationGroupIdentifier:appGroupName];
return [groupContainerURL relativePath];
}
अब हम Demo_Share_One से बंडल से छवियाँ कॉपी कर रहे हैं
-(IBAction)writeImage:(id)sender
{
for (int i = 0; i<15; i++)
{
NSString *strSourcePath = [[NSBundle mainBundle] pathForResource:[NSString stringWithFormat:@"hd%d",i+1] ofType:@"jpg"];
NSString *strDestinationPath = [[self getSharedLocationPath:@"group.filesharingdemo"] stringByAppendingPathComponent:[NSString stringWithFormat:@"hd%d",i+1]] ;
BOOL filewrite = [[NSFileManager defaultManager]copyItemAtPath:strSourcePath toPath:strDestinationPath error:nil];
if (filewrite)
NSLog(@"File write");
else
NSLog(@"can not write file");
}
}
अब उन चित्रों तक पहुँचने के लिए Demo_Share_Two में
NSString *pathShared = [[self getSharedLocationPath:@"group.filesharingdemo"] stringByAppendingPathComponent:[NSString stringWithFormat:@"hd%d.jpg",number]];
NSLog(@"%@",pathShared);
imgView.image = [UIImage imageWithContentsOfFile:pathShared];
और अब आपको वे सभी चित्र मिलेंगे, जो आपके द्वारा Demo_Share_One से लिखे गए हैं ।
तो अब से अगर आप इस फोल्डर को दो अपने तीसरे ऐप को शेयर करना चाहते हैं। बस उस ऐप को अपने समूह में जोड़ें। इसलिए आपके मल्टीपल ऐप्स में समान एलिमेंट्स एक्सेस करना बहुत आसान है।
यदि आप अपने AppID में App Group को सक्षम नहीं करेंगे तो आपको [self getSedenLocationPath: @ "group.filesharingdemo"] शून्य हो जाएगा।
अपने स्वयं के एप्लिकेशन कार्यक्षमता से शेयर तत्वों के लिए Apple का धन्यवाद । हैप्पी कोडिंग। :)