Aplicaciones en Facebook 2º Parte - Crear nuestra primera App

Este es la segunda parte de una serie de post sobre desarrollo de aplicaciones para Facebook. El primer post, "Aplicaciones en Facebook 1º parte" fue una introducción a la arquitectura de Facebook, ahora vamos a aprender a crear una aplicación muy sencilla.

Primero lo primero, hay que tener una cuenta en Facebook (supongo que si ya leyeron el primer post ya deben tener una). Una vez registrados debemos agregar la aplicación "Developer". Con ella accedemos a las pantallas con foros, novedades, el status del framework de Facebook y algunos datos de nuestras aplicaciones.

barra lateral de Facebook

Ahora hay que dar de alta una nueva aplicación y configurar algunos datos para que Facebook pueda acceder a nuestra página. Para dar de alta una nueva aplicación hay que hacer clic en el botón "+ Set Up New Application".

top

Obtenemos una pantalla para llenar datos que modifican como va a funcionar la aplicación dentro de Facebook. Estas es una descripción de los datos mínimos que debemos completar, el resto queda en ustedes para aprender, no son muy difíciles de entender:

  • Application Name: Nombre de la aplicación.
  • Developer Contact E-mail: Nuestro e-mail.
  • Callback Url: Dirección a la que Facebook va a buscar nuestra aplicación, para el ejemplo seria algo así, http://www.midominio.com/Default.aspx.
    Aquí me voy a detener un poco, en la etapa de desarrollo es complicado usar una dirección de tipo localhost, más si usan Web Developer Express como servidor web, es preferible subirlo sobre un IIS local, y usar una dirección así http://localhost:80/Default.aspx que solo funcionaria dentro de nuestra red.
  • Canvas Page URL: Como se la dirección a la que accederán los usuarios.
  • Use FBML o Use iframe: Esta opción es para que Facebook sepa si tiene que detectar las etiquetas FB. Para nuestro ejemplo usamos iframe.
  • Application Type: vamos a elegir Website.
  • Can your application be added on Facebook?: elegimos que si.
  • Post-Add URL: Dirección de Facebook a donde se redirecciona después de agregar la aplicación, tiene que ser la dirección que formamos en Canvas Page.
  • Developer Mode: Tildamos, temporalmente, solo nosotros podemos agregar la aplicación.

Una vez que llenamos todo, hacemos clic en submit. Nos redirecciona a una pantalla donde esta un pequeño resumen de nuestra aplicación. Entre estos datos hay dos muy importante: api key, y secret, más adelante las usaremos.

Una vez que configuramos nuestra aplicación vamos a construirla. Antes que nada este ejemplo lo realizo usando la API Facebook Developer Toolkit (es la que estuve usando hasta ahora, probablemente actualice más adelante para Facebook.Net), entonces tenemos agregar al proyecto las referencias de esta API, Facebook.dll, Facebook.Controls.dll y Facebook.WebControls.dll así tenemos todas las funciones para trabajar.

En el Code Behind de Default.aspx  cambiamos la clase que heredada por CanvasIFrameBasePage, está base page tiene dos propiedades, Api y Secret. ( Adivinaron hay van las llaves que nos da Facebook), y un clase FBService que llama los servicios REST. La pagina debería configurarse de esta forma

public partial class _Default : CanvasIFrameBasePage
{
   Facebook.Components.FacebookService();
   private const string FACEBOOK_API_KEY = "llave api";  
   private const string FACEBOOK_SECRET = "llave secret"; 
 
   new protected void Page_Load(object sender, EventArgs e)
   {
       base.Api = FACEBOOK_API_KEY;
       base.Secret = FACEBOOK_SECRET;
       base.Page_Load(sender, e);
    }
}

Bien vamos ha buscar datos del usuario que accede a la aplicación, y mostrarlos en la pantalla. Agregamos un Label en el aspx. en el Code Behind llamamos a las librerías Facebook, Facebook.Entity, Facebook.WebControls y escribimos el siguiente código:

User usuario = this.FBService.GetUserInfo();
this.Label1.Text = string.Format("Hola {0} ", usuario.FirstName);

Ahora solo queda una cosa, ver la pagina dentro de Facebook, primero agregamos la aplicación a nuestro profile, lo pueden hacer directamente entrando con la URL que completaron en el campo "Canvas Page URL". Al agregar serán redireccionados a la pagina que armamos.

Otro ejemplo, ver las fotos de todos sus amigos agregamos un Literal al aspx y copiamos el siguiente código:

string salida = "Estos son tus amigos:<br />";
Collection<User> amigos = this.FBService.GetFriends();
foreach (User amigo in amigos)
{
       salida += string.Format("<img src='{0}' alt='{1}'/>", amigo.PictureSmallUrl,
                amigo.Name);
}
Literal1.Text = salida;

Bien, hasta aquí por hoy, intenten hacer una App , pueden dejar sus comentarios y las URL de sus App así otros pueden verlas. También les dejo los links a la aplicación on-line y al código fuente.

Un abrazo.

27 Comments

  • que tal?
    escribí el ejemplo que acá se propone, pero me saca el siguiente error:
    °°°°°°°°°°°°°°°°°°
    Server Error in '/PruebaFacebook' Application.
    --------------------------------------------------------------------------------

    Requested value 'masculino' was not found.
    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

    Exception Details: System.ArgumentException: Requested value 'masculino' was not found.

    Source Error:


    Line 25:
    Line 26:
    Line 27: User usuario = this.FBService.GetUserInfo();
    Line 28: this.Label1.Text = string.Format("Hola {0} ", usuario.FirstName);
    Line 29:


    Source File: c:\FaceBook\AppWeb\Default.aspx.cs Line: 27
    °°°°°°°°°°°°°°°°°°

    he intentado varias cosas y no se que es.
    será posible que esté relacionado con la actualizacion a español de facebook? o tendre una versión muy vieja?

    gracias

  • Felipe vas bien, el error que esta dando es por que Facebook hizo algunos cambios en el lenguaje. para corregirlo mira el siguiente post ahí esta el parche que hice.

    Un abrazo

  • Hola!

    Sabes que tengo una duda... yo tengo un blog y encontre un blog que tenia una url donde estaba su cuenta de facebook... lo que pusiste ahi arriba serviria para que lo pusiera en mi blog? como lo puedo hacer para tener un enlace de mi facebook en mi blog?

    gracias

  • quiero estar en facebook por que todos mis amigos la tienen

  • Hola:
    Quiero crear una plicación para enviar y recivir cositas con mis amigos. Pero soy un pez fuera del agua en esto de la informatica, me he quedado atascada en la URL Callback (no se que es) me puede ayudar alguien? Necesito una gia para lerdos, jejejeej

  • Auxilioooo!!!!!!..... yo nose si esoy muy lento para crear una aplicación o nose, pero ya cree una pero como que no me funciona bien, que rabia. Cualquier cosa si me pueden contestar que sea al msn joserupla@hotmail.com. Con todo muy bien específicado porfavor, que yo no entiendo casi nada de todo esto.

    Gracias

    José D. Rueda Plata

  • lucecita amorasa80@hotmail.com

  • señores, mi consejo es el siguiente,hay un dicho que dice zapatero a sus zapatos, si no saben no pierda su tiempo utlicen las que ya han sido creadas por profesionales como yo, y no este pidiendo consejos de solucion.

  • holi bueno esto lo estoy en todas partes abisando pero tengo un carete de puras tribus urvanas es todos los savados bueno pa todas las pakemonas y pokemones y de todas las tribus urvanas qe me llamen al numero 79384664 xaoooooooooooo
    los esperos

  • no puedo hacer my facebook ysi algien sabe please me gustaria q me ayudara soy principiante en esto please y sy algen se enoga soorryy xaooooooooooooooooooooooooooo bye bye lah_nibiitah@latinmail.com

  • Hola,
    La verdad es que no tengo ni idea de esto y todo lo de los códigos y la programación me parece muy dificil, por no decir imposible para mi. No hay un asistente o programa para crear aplicaciones de facebook? La verdad es que solo quiero crear la tipica aplicacion para dar y recibir regalos. Alguien tiene una "plantilla" de algo asi? si es que se llama asi...
    Muchas gracias

  • hola quiero saber como agregar un reproductor mp3 a mi facebook gracias

  • qiero saber como hago para crearme un enlace mio
    con lo qe yo qiera poner en ese enlace.
    en el facebook.. o poder compartirla.
    pero estando conectada en el faece oveamente.
    jejej
    espero tner su ayudita. :)
    gracias. y saludos

  • Donde ubico "Code Behind de Default.aspx " porque llegué hasta aquí y no pude avanzar mas

  • donde se suben las aplicaciones para facebook?

  • para subir las aplicaciones debes tener tu propio hosting

  • Tengo una duda, hay forma de consultar si se tienen nuevas notificaciones, a traves de una aplicacion de escritorio??

  • Aplicaciones en facebook 2 186 parte crear nuestra primera app.. Huh, really? :)

  • holaa, una duda lo unico que tengo que lograr es mostrar un html donde tengo una aplicacion java! , como hago para que solamente la aplicacion se encargue de abrir la pagina deseada o la aplicacion embebida en esa pagina??

  • Hola!.
    Muchas gracias por el tutorial, esta muy bueno.
    El problema que tengo es que luego de haber creado la aplicacion en forma correcta, no puedo añadirla a mi fan page en una "pestaña". Ingreso a la aplicación que cree y no sale por ningun lado el boton de "añadir a mi pagina". Ya mire por todos lados y no logro resolver el problema.

    Muchas gracias!

  • en que vs estan haciendolo?

  • Buen reportaje, soy visitante habitual de weblogs.asp.net, mantener el funcionamiento agradable, y que va a ser un visitante regular durante mucho tiempo.

  • . Algunos detalles realmente interesantes que ha escrito el # nombre me ayudó mucho, justo lo que estaba buscando: D.

  • Gracias de antemano y buena suerte , weblogs.asp.net ! :) Buena suerte

  • Cualquier persona puede escuchar sólo acerca de esta entrada bien en weblogs.asp.net por lo tanto, le sugiero que optar por los escritores de ensayos y comprar un ensayo a veces que está disponible para ordenar papeles personalizados . saludos!

  • What's up, this weekend is pleasant in support of me, since this occasion i am reading this wonderful educational piece of writing here at my home.

  • Hi, i think that i saw you visited my web site so i came to “return the favor”.
    I'm trying to find things to enhance my site!I suppose its ok to use a few of your ideas!!

Comments have been disabled for this content.