फेसबुक, ट्विटर या सिना वेबो पर पोस्ट करने के लिए आईओएस 6 के नए SLComposeViewController
का उपयोग करने के लिए मुझे किन कदमों का पालन करने की आवश्यकता है?SLComposeViewController साझा करने के लिए ट्यूटोरियल
उत्तर
इस ढांचे कृपया देखें एप्पल के Social Framework Class Reference
अतिरिक्त ट्यूटोरियल पर जानकारी के लिए:
- http://soulwithmobiletechnology.blogspot.com/2012/07/tutorial-how-to-use-inbuilt.html
- http://www.mobile.safilsunny.com/iphone/integrating-facebook-ios/
- http://rudeboy-quickies.blogspot.com/2012/06/steps-to-integrate-facebook-in-ios6.html
- https://developer.apple.com/videos/wwdc/2012/?id=306
इस उदाहरण के लिए, हम SLComposeViewController
के SLServiceTypeFacebook
का उपयोग करेंगे। आप ट्विटर या SinaWeibo उपयोग करना चाहते हैं तो बस निम्न में से एक के लिए SLServiceType बाहर बदलने के लिए:
- SLServiceTypeFacebook
- SLServiceTypeSinaWeibo
- SLServiceTypeTwitter
IOS 6 बना दिया है यह बहुत आसान सीधे पोस्ट करने के लिए फेसबुक, ट्विटर या सिना वेबो SLComposeViewController
का उपयोग कर। यह आईओएस 5 के TWTweetComposeViewController
के समान ही काम करता है।
सबसे पहले, आपके व्यू कंट्रोलर की हेडर फ़ाइल (.h) #import
सोशल फ्रेमवर्क और अकाउंट फ्रेमवर्क में।
#import <Social/Social.h>
#import <Accounts/Accounts.h>
यहाँ हम एक सरल UIButton
और एक IBAction
हम बाद में उस बटन के लिए लिंक और एक void
(sharingStatus) जो जांच करने के लिए उपयोग किया जाएगा कि चयनित साझा करने वाली सेवा है जाएगा कि घोषणा करेंगे उपलब्ध।
@interface ViewController : UIViewController
@property (weak, nonatomic) IBOutlet UIButton *easyFacebookButton;
- (IBAction)facebookPost:(id)sender;
- (void)sharingStatus;
@end
@implementation ViewController
फिर, अपने कार्यान्वयन फ़ाइल (मीटर) में, हम (sharingStatus) शून्य है कि हम हेडर फाइल में घोषित लागू करने से शुरू करेंगे। SharingStatus SLComposeViewController
के isAvailableForServiceType
बूल का उपयोग करता है ताकि आप लौट सकें कि आप इसके तर्क में निर्दिष्ट सेवा में पोस्ट कर सकते हैं या नहीं। इस मामले में, हम सेवा प्रकार SLServiceTypeFacebook
का उपयोग करेंगे। यदि सेवा उपलब्ध है तो पोस्ट बटन 1.0f के अल्फा मान के साथ सक्षम किया जाएगा, और यदि सेवा उपलब्ध नहीं है तो बटन को इसके अल्फा मान को 0.5f पर सेट कर दिया जाएगा।
- (void)sharingStatus {
if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]) {
NSLog(@"service available");
self.easyFacebookButton.enabled = YES;
self.easyFacebookButton.alpha = 1.0f;
} else {
self.easyFacebookButton.enabled = NO;
self.easyFacebookButton.alpha = 0.5f;
}
}
यहाँ हम IBAction
कि संगीतकार अप कॉल करेंगे स्थापित करेगा। अच्छी प्रैक्टिस के लिए, हम उपलब्ध सेवा प्रकार के लिए संगीतकार को कॉल करने से बचने के लिए isAvailableForServiceType
फिर से जांचेंगे। (आखिरी चेक के दौरान कुछ गड़बड़ हुई, या अगर पोस्ट बटन और कंपोज़र्स को सभी/इनिट टैप करने के बीच किसी दूसरे के अंश में उपलब्धता बदल गई है। नीचे दिया गया कोड टेक्स्ट के साथ एक फेसबुक संगीतकार शीट प्रदर्शित करने के लिए स्थापित किया गया है, एक छवि, और एक लिंक। यह क्रिया संगीतकार के रद्द और किए गए परिणामों के लिए एक समापन हैंडलर का भी उपयोग करती है।
- (IBAction)facebookPost:(id)sender {
if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]) {
SLComposeViewController *mySLComposerSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];
[mySLComposerSheet setInitialText:@"iOS 6 Social Framework test!"];
[mySLComposerSheet addImage:[UIImage imageNamed:@"myImage.png"]];
[mySLComposerSheet addURL:[NSURL URLWithString:@"http://stackoverflow.com/questions/12503287/tutorial-for-slcomposeviewcontroller-sharing"]];
[mySLComposerSheet setCompletionHandler:^(SLComposeViewControllerResult result) {
switch (result) {
case SLComposeViewControllerResultCancelled:
NSLog(@"Post Canceled");
break;
case SLComposeViewControllerResultDone:
NSLog(@"Post Sucessful");
break;
default:
break;
}
}];
[self presentViewController:mySLComposerSheet animated:YES completion:nil];
}
}
viewWillAppear
हम ACAccountStoreDidChangeNotification
को एक पर्यवेक्षक रजिस्टर करेंगे तो आवेदन अधिसूचित किया जा सकता है जब खाते की जानकारी बदल जाता है। इस पर्यवेक्षक को viewDidDisappear
में हटा दिया जाएगा।
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(sharingStatus) name:ACAccountStoreDidChangeNotification object:nil];
}
- (void)viewDidDisappear:(BOOL)animated
{
[super viewDidDisappear:animated];
[[NSNotificationCenter defaultCenter] removeObserver:ACAccountStoreDidChangeNotification];
}
और अंत में, इंटरफ़ेस बिल्डर को खोलने और एक UIButton
जो पोस्ट बटन हो जाएगा जोड़ें। फिर कनेक्शन इंस्पेक्टर में IBOutlet
और IBAction
लिंक करें जिसे हमने पहले बटन पर बनाया था, और यही वह है! हो गया!
बस फेसबुक पर साझा करने के लिए इस कोड का उपयोग।
SLComposeViewController *controllerSLC = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];
[controllerSLC setInitialText:@"First post from my iPhone app"];
[controllerSLC addURL:[NSURL URLWithString:@"http://www.appcoda.com"]];
[controllerSLC addImage:[UIImage imageNamed:@"test.jpg"]];
[self presentViewController:controllerSLC animated:YES completion:Nil];
यदि आप ट्विटर के लिए यह चाहते हैं तो बस SLServiceTypeTwitter को बदलें।
आपके कोड के साथ सेटिंग पृष्ठ समस्या प्राप्त कर रहा हूं। – sabir
@ सबीर मैं तुम्हें नहीं मिला था। क्या आप इसे समझा सकते हैं? –
जब आपके डिवाइस में फेसबुक खाता खाली होता है तो यह सेटिंग्स के साथ अलर्ट दिखाता है और जब मैं सेटिंग्स बटन पर क्लिक करता हूं तो बटन को रद्द कर देता है, इसे सेटिंग्स पृष्ठ पर जाना चाहिए, जो आईओएस 6.01 तक ठीक काम कर रहा है लेकिन आईओएस 7 सेटिंग्स बटन में मुझे नहीं ले जाता सेटिंग्स पेज.तो क्या आपको इस – sabir
सुरक्षित SLComposeViewController उपयोग की
if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook])
{
SLComposeViewController *fbPost = [SLComposeViewController
composeViewControllerForServiceType: SLServiceTypeFacebook];
[fbPost setInitialText:@"Text You want to Share"];
[fbPost addImage:[UIImage imageNamed:@"shareImage.png"]];
[self presentViewController:fbPost animated:YES completion:nil];
[fbPost setCompletionHandler:^(SLComposeViewControllerResult result) {
switch (result) {
case SLComposeViewControllerResultCancelled:
NSLog(@"Post Canceled");
break;
case SLComposeViewControllerResultDone:
NSLog(@"Post Sucessful");
break;
default:
break;
}
[self dismissViewControllerAnimated:YES completion:nil];
}];
}
- 1. निबर्ननेट स्थापित करने के लिए 101 ट्यूटोरियल?
- 2. सी # ट्यूटोरियल लिखने के लिए ट्यूटोरियल
- 3. सॉफ़्टवेयर/प्लेटफ़ॉर्म साझा करने के लिए प्लेटफ़ॉर्म
- 4. साझा साझा करने के उद्देश्य के लिए एक साझा लाइब्रेरी "समान" माना जाता है?
- 5. रूबोटो (एंड्रॉइड के लिए रूबी) के लिए सर्वश्रेष्ठ ट्यूटोरियल?
- 6. libjingle के लिए एक ट्यूटोरियल?
- 7. SlickGrid के लिए अच्छा ट्यूटोरियल?
- 8. साझा करने गुणकों एक छवि अकेला साझा करने के लिए कैसे फेसबुक
- 9. आईओएस 6 - सोशल फ्रेमवर्क - आईओएस 5 के लिए TWCweetComposeViewController को SLComposeViewController फ़ॉलबैक कैसे करता है?
- 10. अपने एचटीएमएल, सीएसएस, जावास्क्रिप्ट ट्यूटोरियल सबमिट करने के लिए कहां?
- 11. पाम वेबोस विकास शुरू करने के लिए अच्छे ट्यूटोरियल?
- 12. एंड्रॉइड में हाइबरनेट का उपयोग करने के लिए ट्यूटोरियल?
- 13. क्या emacs का उपयोग करने के लिए उत्कृष्ट ट्यूटोरियल है?
- 14. उन्नत प्रोजेक्ट ट्यूटोरियल समाप्त करने के लिए प्रारंभ करें
- 15. अप्रयुक्त साझा लाइब्रेरी के खिलाफ लिंक करने के लिए बल
- 16. साझा जीबीसी साझा पुस्तकालयों में अपरिभाषित संदर्भों के बारे में सूचित करने के लिए
- 17. साझा पुस्तकालयों के लिए मेकफ़ाइल?
- 18. सी ++ कोड में स्क्रिप्ट दुभाषिया के रूप में क्लैंग को एम्बेड करने के लिए कोई ट्यूटोरियल?
- 19. .NET: LINQ के लिए अनुशंसित वीडियो ट्यूटोरियल?
- 20. ओपनजीएल संसाधनों को साझा करने के लिए रणनीति
- 21. विश्व स्तर पर चर साझा करने के लिए विस्तारित अनुप्रयोग
- 22. मैं प्रोग्राम साझा करने के लिए प्रोग्रामेटिक रूप से
- 23. बूस्ट को साझा करने के लिए shared_ptr कास्टिंग *
- 24. बड़ी परियोजनाओं के लिए Emacs ट्यूटोरियल
- 25. paypal भुगतान के लिए खोज रहे ट्यूटोरियल
- 26. साइट ट्यूटोरियल जोड़ने के लिए रेल मणि
- 27. आईफोन ट्यूटोरियल के लिए इंटरफ़ेस बिल्डर
- 28. आवेदन मल्टीकास्टिंग के लिए सर्वश्रेष्ठ ट्यूटोरियल?
- 29. जावा के लिए कोई आसान आरईएसटी ट्यूटोरियल?
- 30. जेबनेटिक एल्गोरिदम उदाहरण/Pybrain के लिए ट्यूटोरियल?
हाय, एक अच्छा जवाब है, कर सकते हैं था, हालांकि मैं छोटे संदेह है, हम भी मामले उपयोगकर्ता का ट्विटर/फेसबुक खाते में मौजूद लॉग इन इंटरफेस सेट नहीं है ऊपर? –
@AbhinandanSahgal नहीं, इस कक्षा के साथ नहीं। हालांकि, सही तरीके से काम करते समय संगीतकार यह पता लगाएगा कि उपयोगकर्ता लॉग इन नहीं है और उचित सेवा के लिए उन्हें अपने खाते में लॉग इन करने के लिए सेटिंग में ले जाने के लिए एक अलर्ट प्रस्तुत करता है। –
क्या आप उन्हें सेटिंग्स में ले जाने के लिए नमूना डाल सकते हैं? –