Makale Özeti

Facebook ortamında uygulama geliştirme adımları.

Makale

Facebook’ ta Uygulama Geliştirme Ortamı

     Malumunuz Facebook hem Türkiye’ de hemde Dünya’ da çok yayılmaya başlanıldı. Neler yapıldığını, insanların neden kullandığı anlatmayacağım. Bizi ilgilendiren bölümü olan DotNet ortamında facebook için nasıl bir uygulama yazılır ve nasıl submit edilir(?) bunu anlatıyor olacağım.
 
    Öncelikle facebook.com projesinde uygulama yazmanız ve bunu kişilerce kullandırmanız için  facebook tarafından tanımlanmış olan “Developer” grubuna dahil olmanız gerekmektedir(http://www.facebook.com/developers/). Sonrasında size kendi uygulamanızı oluşturmanız için link sunuyor olacaktır. Yeni facebook uygulaması açarken önemli bazı noktaları aktarmak istiyorum:  
 

Application Name           : Uygulamanızın tüm kullanıcılarca görünecek ismidir.

Callback Url                    : Facebook tarafından uygulamanızı çağırmanız gereken adres.

Canvas Page Url            : Facebook domain altında uygulamanız için bir adres tanımlanması. Daha sonrasında hemen altında yer alan Use FBML ve Use Iframe seçenekleri önemlidir. Çünkü fbml ya da iframe kullanmanız bazı olanakları kullanabilmeniz ya da kullanamamanız anlamına gelmektedir. Birçok olanaklar mevcuttur ancak önemli olanlarından bahsetmek isterim: Silverlight, Microsoft Ajax gibi teknolojileri Iframe ile imkan vermektedir. FBML kullanıyorsa iseniz Microsoft Ajax yerine Facebook altyapısında kendisine özel Ajax methodlarını kullanmak durumda kalıyor olacaksınız.


            Can your application be added on Facebook : Eğer ki uygulamayı Facebook üzerinden göstermek istiyor isek, “Yes” cevabını verdikten sonra “Installation Options” ve “Integration Points” bilgilerinin girilmesi için alanlar açılacaktır.  Bu adımdan sonra gerekli bilgiler yazıldıktan sonra uygulamamızın facebook tarafınca tanımlanma süresi bitmiş olacaktır. Fakat önemli bir ayrıntıyı da aktardıktan sonra örnek kodlara  başlıyor olacağım. Orada göreceğiniz Post-Remove URL; eğer ki kullanıcı sizin uygulamanızı kendi uygulamaları arasından silerse, bu durumdan sizi haberdar etmek amacı ile facebook sizin o input a yazmış olduğunuz sayfanıza bazı değişkenler atmaktadır. Bunlardan önemli olanlar ise fb_sig_uninstall: 0 ve 1 değerleri almaktadır.1 ise kullanıcı silmiştir uygulamayı ve sonrasında hangi kullanıcıların sildiğini yani UserId lerini belirtmek amacı ile yine göndermiş olduğu değişkenlerden fb_sig_user ile de anlaşılmaktadır. Sonrasındaki iş size kalmıştır.

     Uygulamaya başlamadan önce uygulamayı Use FBML seçeneği kullanarak yapıyor olacağım.
İki sayfa örneği üzerinden küçük anlatımlarla Anasayfa ile Arkadaş davet sayfa detayları olacaktır.Öncelikle projemize eklememiz gereken iki adet dll olacaktır. Bu dll ler Facebook.dll ve Facebook.WebControls.dll’ dir. Dll’ ler sayesinde gerekli methodları kullanıyor olacağız.
    
    
İlk sayfamız olan Anasayfa da tablo içerisinde birtakım bilgiler gösteriyor olalım.Burada önemli bir şey aktarmak istiyorum.Şu ki: sayfalarımızı html taglarından temizlememiz gerekmektedir. Yani eklediğimiz sayfaların arka taraflarında <body>,<html> gibi taglarımızı silmemiz, Content mantığında düşünmemiz gerekmektedir. Örneğe devam edecek olur isek;  Mesela madde madde vertibanımızdan getirmiş olduğumuz haberleri facebook yapısına uygun olarak gösterelim. Anasayfa.aspx sayfamızın ekran tasarımını kendimize göre şekillendirdikten sonra kod tarafına geçtiğimizde sayfamızı “CanvasFBMLBasePage” ‘ ten türetmemiz gerekmektedir. Sonrasında Page Load ta bizim için gerekli olan Facebook Api ve Facebook Secret bilgilerini Base Page te yer alan Api ve Secret property lerini Set etmemiz gerekmektedir. Bu bilgiyi facebook siz kendi uygulamanızı oluşturduktan sonra size sunmaktadır.

          
Örneğin:

           API Key                    :     0b03925b7842dd9b7f9536c33ae3f52f

           Secret                      :     8fb71201beeaf4f9d3335c957aed5460

           Support Email          :     aaaaa@aaaa.com

           Callback URL            :     http://aaaa.aaaa.net/

     Aşağıda sayfa arkasında zorunlu olan kod parçacıklarını yazacağım:

 

..
.. ..


using Facebook; using Facebook.WebControls; using Facebook.Entity; public partial class _Default : CanvasFBMLBasePage
{ protected void Page_Load(object sender, EventArgs e)
{ try {
base.Api = "0b03925b7842dd9b7f9536c33ae3f52f";
base.Secret = "8fb71201beeaf4f9d3335c957aed5460";
base.Page_Load(sender, e);
....
.... ....
}
catch(Exception ex)
{

}

} }

     Yukarıda görüldüğü üzere sayfamız içerisinde zorunlu olan kodlarımızı yazdık ve sonrasında bildiğimiz asp.net uygulamamız için gerekli kodları yazabiliriz ve eğer ki sayfamızda hata yoksa,  facebook uygulamamızın ilk sayfasını gösteriyor olacaktır. Anasayfa örneğine ek olarak arkadaşlarınızın resimlerini ya da isimlerini koyarak link vermek için ve daha fazlası için aslında facebook’ un kendi kontrollerini kullanmamız gerekmektedir. Arkadaşlarımızın isimlerini göstermek için: <fb:userlink uid="123445" /> kullanılır ve daha fazlası için bu linkten bilgi edinebilirsiniz : http://wiki.developers.facebook.com/index.php/FBML

 

 

     Şimdi Arkadaş davet sayfası için gerekli önemli noktalarından bahsediyor olacağım. Arkadaş davet sayfamızda gerekli html düzenlemelerimizi yaptıktan sonra eklememiz gereken kontrol şudur : <fb:multi-friend-selector /> bu kontrol sayesinde arkadaş listemizi kullanıcıya gösterebiliriz. Ancak listeleme yaparken uygulamayı kullanan arkadaşlarımız tekrar davet ekranında göstermemeliyiz.  Uygulamamızı kullanan arkadaşlarımızı “FBService.GetFriendsAppUsers();” fonksiyonu sayesinde geriye dönüş tipi olarak Collection olarak döndürür ve sonrasında  arkadaşlarımız arasında ID si eşit olanları listemizden çıkartıyor olmamız gerekmektedir.


     Burada  facebook’ ta proje geliştirmenin temel noktalarından ilerleyerek bir takım şeyler anlatmaya çalıştım. Amacımız temel bilgiler öğrendikten sonra bu nokta üzerinden uygulamalar geliştirmek. Daha detaylı ve büyük uygulamalar tamamen bize kalmış durumdadır.


 

     Detaylı bilgiler için :

                                    http://developers.facebook.com/

                                    http://wiki.developers.facebook.com/index.php/FBML

                        http://www.codeplex.com/FacebookNET


Görüşmek dileği ile…

İyi günler…

metin.altuntas@gmail.com

Site içerisinde yazılan tüm makalelerin yazım ve yayınlama hakkı aksi belirtilmediği sürece sadece yazarlara aittir.

v3.0 Geri Bildirim (Feedback) Yazgelistir.Com Ekibi - 2012 - Yazgelistir.com