مشاوره رایگان
دریافت لینک های دانلود دریافت پستی درب منزل مبلغ کل: تومان
جهت دریافت کد تخفیف به کانال تلگرام مراجعه و یا با پشتیبان آنلاین هماهنگ نمایید

دوره تکمیلی iOS : اشتراک گذاری از شبکه های اجتماعی


پس از پشتیبانی از توییتر در iOS 5 ، اپل ، پشتیبانی از فیس بوک را نیز در iOS 6 اضافه نمود. در گذشته ، توسعه دهندگان باید از API مربوط به Facebook و Twitter ، برای ادغام قابلیت به اشتراک گذاری در اپ های خود استفاده می کردند. با پشتیبانی داخلی فراهم شده ، افزودن قابلیت های شبکه های اجتماعی به اپ ها ، بسیار آسان تر شده است.

در این آموزش کوتاه ، به شما نحوه ساخت قابلیت به اشتراک گذاری توییتر و فیس بوک در اپ ، را نشان خواهیم داد. طبق روال ، یک اپ ساده را با هم خواهیم ساخت ، زیرا متعقد هستیم ، هیچ راه بهتری برای یادگیری برنامه نویسی وجود ندارد ، مگر این که خودتان دست به کار شوید!

فریم ورک Social در iOS 6

در iOS 6 یک فریم ورک جدید به نام “Social Framework” معرفی شده است. این فریم ورک ، به ما امکان می دهد که اپ خود را با هر سرویس شبکه اجتماعی پشتیبانی شده ای، تطبیق دهیم. در حال حاضر ، پشتیبانی از شبکه های اجتماعی Twitter ، Facebook و Sina Weibo وجود دارد. از طریق این فریم ورک ، یک رابط استاندارد در اختیار ما قرار می گیرد ، تا بتوانیم با شبکه های اجتماعی مختلف ارتباط برقرار کنیم. از طرفی این فریم ورک ، ما را از درگیر شدن در موضوعات داخلی توسعه ، نجات می دهد. نیازی نیست که نگران API های Twitter/Facebook ، نحوه مدیریت اتصالات شبکه  ، هندل کردن single sign-on و غیره باشیم. فریم ورک Social ، همه چیز را ساده می کند. فقط نیاز به چند خط کدنویسی داریم ، تا بتوانیم composer را بالا بیاوریم و کاربران بتوانند پست های خود را از طریق اپ در توییتر ، Tweet کرده و یا در فیس بوک انتشار دهند.

این فریک ورک با یک کلاس بسیار مفید به نام SLComposeViewController ، همراه است. کلاس SLComposeViewController ، یک استاندارد view برای کاربران فراهم می کند ، تا پست های فیس بوک و توییتر خود را بسازند. هم چنین ، به توسعه دهندگان اجازه می دهد ، تا امکان افزودن متن اولیه ، ضمیمه نمودن تصاویر و افزودن URL به پست ها را برای کاربران فراهم کنند. اگر می خواهید که اپ ساده با قابلیت به اشتراک گذاری را پیاده سازی کنید ، این تنها کلاس موردنیاز شماست که نیاز به فهم آن دارید و این چیزی است که ما در این جلسه به آن خواهیم پرداخت.

اگر با SLComposeViewController ، آشنایی ندارید ، چیزی که در اپ ما مشاهده خواهد شد ، مطابق تصویر زیر خواهد بود:

اکنون ، باید یک درک اولیه در مورد این فریم ورک کسب نماییم. بیایید کار را شروع کنیم و یک اپ ساده را با ادغام توییتر و فیس بوک بسازیم.

 

ایجاد پروژه و طراحی رابط کاربری

از آن جایی که در این پروژه نیاز به iOS 6 داریم ، لطفاً قبل از شروع کار ، Xcode خود را به ورژن 4.5 یا بالاتر ارتقاء دهید.

ابتدا ، یک پروژه جدید ، با استفاده از تمپلت Single View template می سازیم. بیایید نام پروژه را “SocialSharing” قرار دهیم و پروژه را مطابق پارامترهای زیر تنظیم نماییم:

بعد از این که با موفقیت پروژه را ساختیم ، به Storyboard می رویم و رابط کاربری را طراحی می نماییم. در View ، دو کلید اضافه می کنیم. نام یکی را “Tweet” و نام دیگری را “Facebook”  قرار می دهیم.

 

ایجاد اتصال بین متغیرها و عناصر UI

در ادامه ، می خواهیم که عناصر UI را به کد خود اتصال دهیم. در Storyboard ، بخش view controller را انتخاب می کنیم و به Assistant Editor سوئیچ می نماییم.

کلید کنترل از صفحه کلید را فشار داده و نگه می داریم ، روی کلید “Tweet” کلیک کرده و آن را به داخل فایل “SocialSharingViewController.h” درگ می کنیم. یک متد action ایجاد کرده و نام آن را “postToTwitter” ، قرار می دهیم. این متد ، در زمانی که کلید ، رویداد  Touch Up Insideرا تشخیص می دهد فرخوانی خواهد شد.

روند مشابهی را برای کلید “Facebook” طی کرده و نام متد action را “postToFacebook” قرار می دهیم. کد نهایی برای فایل “SocialSharingViewController.h” مطابق کد زیر می باشد:

#import <UIKit/UIKit.h>
 
@interface SocialSharingViewController : UIViewController
- (IBAction)postToTwitter:(id)sender;
- (IBAction)postToFacebook:(id)sender;
 
@end

افزودن Twitter Support

بیایید ، ابتدا متد “postToTwitter” را پیاده سازی کنیم. فایل “SocialSharingViewController.m” را باز می کنیم و کد زیر را به متد “postToTwitter”  اضافه می کنیم:

- (IBAction)postToTwitter:(id)sender {
    if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeTwitter])
    {
        SLComposeViewController *tweetSheet = [SLComposeViewController
                                               composeViewControllerForServiceType:SLServiceTypeTwitter];
        [tweetSheet setInitialText:@"Great fun to learn iOS programming at appcoda.com!"];
        [self presentViewController:tweetSheet animated:YES completion:nil];
    }
}

از آن جایی که “SLComposeViewController” ، توسط فریم ورک Social ، ارائه شده است ، باید به خاطر داشته باشیم که فایل Social.h را در ابتدای فایل “SocialSharingViewController.m” ، وارد (import) کنیم.

#import <Social/Social.h>

قبل از این که کار را ادامه دهیم ، بیایید نگاهی به خطوط کد بالا بیاندازیم.

خط 2:  در ابتدا ، ما از متد “isAvailableForServiceType” ، برای تأیید این که سرویس Twitter در دسترس است ، استفاده می کنیم. یکی از دلایلی که کاربران نمی توانند به سرویس توییتر دسترسی داشته باشند ، این است که آنها به سرویس توییتر در iOS وارد (logon) نشده اند.

خط 4: اگر سرویس در دسترس باشد ، در ادامه ، یک نمونه از کلاس SLComposeViewController ، را برای سرویس Twitter ایجاد می کنیم.

خط 5: متن اولیه را در composer تنظیم می نماییم.

خط 6: در آخر ،  presentViewController:tweetSheet را برای بالا آوردن composer مربوط به Twitter فراخوانی می کنیم.

این کدی است که از طریق آن نیاز داریم ، به کاربر اجازه دهیم در درون اپ ما ، توئیت نماید. خیلی راحت تر از چیزی است که شما فکر می کردید ، موافق هستید؟ اما قبل از این که بتوانیم اپ را اجرا کنیم ، انجام یک کار را فراموش کرده ایم.

به طور پیش فرض ، فریم ورک Social ، همراه با پروژه Xcode نمی باشد. برای کامپایل درست اپ ، “Social.framework” را به پروژه اضافه می کنیم. در Project Navigator ، پروژه “SocialSharing” را انتخاب می کنیم. در Content Area ، در زیر Targets ، بخش “SocialSharing” را انتخاب کرده و بر روی “Build Phases” ، کلیک می کنیم. قسمت  “Link Binary with Libraries” را بسط داده و روی کلید “+” ، کلیک کرده و “Social.framework” را اضافه می کنیم.

اکنون ، اپ آماده تست می باشد. روی کلید “Run” ، کلیک کرده و سعی می کنیم اپ را در شبیه ساز  اجرا کنیم. هنگامی که اپ راه اندازی می شود کلید “Tweet” را ضربه می زنیم. باید اپ مطابق تصویر زیر عمل نماید:

در این مورد ، ما حساب کاربری Twitter خود را در شبیه ساز ثبت نکرده ایم ، به همبن دلیل ، با پیام زیر ، کار ما خاتمه می یابد. به Setting > Twitter رفته و با حساب کاربری خود ، به سیستم وارد (sign on) می شویم.

 

افزودن Facebook Support

در ادامه ، کلیدی برای انتشار دادن پست در فیس بوک ، پیاده سازی خواهیم کرد. در فایل “SocialSharingViewController.m” ، کد زیر را در متد “postToFacebook”  اضافه می کنیم:

- (IBAction)postToFacebook:(id)sender {
    if([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]) {
            SLComposeViewController *controller = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];
        
        [controller setInitialText:@"First post from my iPhone app"];
        [self presentViewController:controller animated:YES completion:Nil];        
    }
}

این کد ، بسیار شبیه به کدی است که در متد “postToTwitter” استفاده کردیم . تنها تغییر ، در نوع سرویس است. به SLServiceTypeTwitter می گوییم که به جای استفاده از سرویس SLServiceTypeTwitter ، از سرویس SLServiceTypeFacebook استفاده نماید.

بیایید دوباره اپ را اجرا کنیم. روی کلید “Facebook” ، کلیک می کنیم. اپ ما ، باید قادر باشد ، composer را برای انتشار پست در فیس بوک ، بالا بیاورد.

 

افزودن عکس و لینک به پست های خود

بسیار عالی می شود ، اگر بتوانیم پست های خود را با عکس و لینک آپلود نماییم. کلاس SLComposeViewController  ، با برخی از متدهای داخلی همراه است که به ما اجازه می دهد به راحتی عملیات آپلود را انجام دهیم. بیایید اندکی کد مربوط به کلید Facebook را دستکاری کرده و روی عملیات upload کار نماییم.

ابتدا ، این تصویر  download this image را دانلود کرده و به پروژه Xcode ، اضافه می کنیم. (شما می توانید از هر عکسی استفاده نمایید ، اما مطمئن شوید که نام آن را  “socialsharing-facebook-image.jpg” قرار دهید.)

به راحتی می توانیم از متد “addImage” برای ضمیمه کردن عکس و از متد “addURL” ، برای افزودن یک لینک استفاده کنیم.

        [controller addURL:[NSURL URLWithString:@"http://www.appcoda.com"]];
        [controller addImage:[UIImage imageNamed:@"socialsharing-facebook-image.jpg"]];

کد نهایی مربوط به  “postToFacebook” ، باید شبیه کد زیر باشد:

- (IBAction)postToFacebook:(id)sender {
    if([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]) {
        
        SLComposeViewController *controller = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];
        
        [controller setInitialText:@"First post from my iPhone app"];
        [controller addURL:[NSURL URLWithString:@"http://www.appcoda.com"]];
        [controller addImage:[UIImage imageNamed:@"socialsharing-facebook-image.jpg"]];
        
        [self presentViewController:controller animated:YES completion:Nil];
        
    }
}

اکنون سراغ اجرا و تست دوباره قابلیت اشتراک گذاری در Facebook می رویم. باید بتوانیم تصویر بندانگشتی (thumbnail) و یک لینک در انتهای پست را ببینیم.

 

خلاصه

همان طور که در این آموزش دیدید ، افزودن قابلیت فیس بوک و توییتر با استفاده از فریم ورک Social ، در iOS 6 بسیار ساده است. اگر در حال ساخت اپ خود هستید اکنون دیگر هیچ دلیلی وجود ندارد ، که نتوانید از قابلیت های social در اپ خود استفاده نمایید. با پشتیبانی از توییتر و فیس بوک ، به اپ شما ارزش افزوده می شود و می تواند محبوبیت بیشتری را کسب کند.

در این مقاله ، مبانی یکپارچه سازی اپ iOS با فیس بوک و توییتر را معرفی کردیم. سعی کنید که در اپ خود کمی تغییرات ایجاد نموده و بتوانید چندین عکس را به شبکه های اجتماعی ارسال کنید. با این حال ، اگر می خواهید از قابلیت های پیشرفته ، مانند قابلیت نمایش دوستان Facebook کاربر استفاده نمایید، باید مستند Facebook API را مطالعه نمایید.

امیدواریم که از این آموزش لذت برده باشید و درک بهتر درباره فریم ورک Social ، کسب نموده باشید.

فصلِ: 3 , تعداد قسمت ها: 179 , سطح: صفر تا صد

این فصل در یک نگاه:

در این دوره آموزشی ، برنامه نویسی اندروید و ios را با استفاده از زامارین خواهیم آموخت. همچنین به صورت کاملا پروژه محور ، اپلیکیشن فروشگاهی مشابه دیجی کالا را پیاده سازی خواهیم کرد. در انته…
فصلِ: 5 , تعداد قسمت ها: 221 , سطح: صفر تا صد
موضوعات: آموزش IOS

این فصل در یک نگاه:

در این فصل:-نمایش notification به کاربر زمانی که اتفاقاتی از قبیل لایک کردن پست و ... میافتد(این مبحث مبحثی مهم بوده و ج…

  توضیحات کلی دوره: با سلام خوش اومدین به حرفه ای ترین دوره ی Swift ابتدای کار ممکن است سوالی برای شما پیش آید: -من نیازی به ساخت اپلیکیشن اجتماعی ندارم چرا باید این دوره را ببینم؟ ج…
فصلِ: 7 , تعداد قسمت ها: 159 , سطح: صفر تا صد
موضوعات: آموزش IOS

این فصل در یک نگاه:

اپل نویس حرفه ای شوید... با این پکیج کسب درآمد میلیونی کنید....   در این پکیج به نکات ریز و درشت زیادی پرداختیم که خیلی خیلی میتونه به شما کمک کنه که تبدیل به برنامه نویس حرفه ای شوید... …
فصلِ: 12 , تعداد قسمت ها: 126 , سطح: صفر تا صد
موضوعات: آموزش IOS

این فصل در یک نگاه:

فصل 16 فصل آخرمون هست و میایم توی این فصل یه سری مباحث کوچیکی که جامونده و کارهای نهایی برای انتشار برنامه توی مایکت های…

با سلام نکته:هیچ نیازی به mac و یا iphone نیست... نکته:هیچ نیازی به بلد بودن برنامه نویسی از قبل نیست... مباحثی که توی این دوره مرور میکنیم میتونه ما رو از سطح صفر برنامه نویسی ios به صد …
فصلِ: 6 , تعداد قسمت ها: 194 , سطح: صفر تا صد

این فصل در یک نگاه:

در این فصل آپدیت های مربوط به دوره را قرار میدهیم…

با سلام و خسته نباشد خدمت کلیک سایتی های عزیز در ادامه با توضیحات مختصری درمورد دوره ی react native با ما همراه باشید: React Native چیست؟ قطعا یکی از آرزوهای برنامه نویسان این میباشد که ب…
فصلِ: 5 , تعداد قسمت ها: 51 , سطح: صفر تا صد

این فصل در یک نگاه:

اموزش پرداخت درون برنامه ای بازار در یونیتی-اموزش خرید سکه در بازی-اموزش خرید مصرفی و غیر مصرفی…

توضیحات کلی مجموعه: آموزش مقدماتی تا پیشرفته یونیتی(ساخت بازی توپ چرخنده-اموزش بازی دوبعدی-اموزش بازی سه بعدی اول شخص شوتر-اموزش بازی سه بعدی رالی (ماشین سواری))   سرفصلهای دوره: نصب ی…
فصلِ: 2 , تعداد قسمت ها: 68 , سطح: صفر تا صد

این فصل در یک نگاه:

آموزش ساخت یک فروشگاه کوچک-آموزش کار با bottom navigation -آموزش کار با تب بار-آموزش کار با scrollview - آموزش کار با ان…

توضیحات کلی مجموعه: آموزش دوره فلاتر از پایه تا پیشرفته(این دوره به دوره متخصص فلاتر تغییر پیدا کرد) درسال های گذشته تعدا زیادی فریمورک معرفی شد که هرکدام تجربه خاص خودش رو داشت،اما فلاتر …
فصلِ: 5 , تعداد قسمت ها: 25 , سطح: صفر تا صد

این فصل در یک نگاه:

فصل پنجم…

توضیحات کلی مجموعه: درباره گیت: لذت پیش بردن پروژه های برنامه نویسی خود را با بهترین ورژن کنترل سیستم جهان تجربه کنید کامل ترین دوره ی آموزشی گیت و گیت هاب به همراه مثال های کاربردی گی…

تولید شده توسط کلیک سایت

پشتیبانی آنلاین
آماده پاسخگویی هستیم
انتخاب تصویر جهت ارسال:
در حال ضبط صدا

(جهت توقف و یا لغو ضبط از دکمه های زیر استفاده کنید)

توقف و ارسال :
لغو ضبط
در حال حاضر تمامی کارشناسان آفلاین هستند. همواره می توانید با شماره تلگرام / واتساپ 09010005000 به صورت آنلاین با ما در ارتباط باشید. جهت ورود به واتساپ کلیک کنید
0 پیام جدید
پشتیبان در حال تایپ ...
ارسال تصویر ضبط صدا
0 کارشناسان آنلاین می باشند
این گفت و گو توسط پشتیبان به اتمام رسید