https://developers.facebook.com/docs/unity/downloads/? campaign_id=282184128580929&placement=sdk_list



Documentos relacionados
Programa diseñado y creado por Art-Tronic Promotora Audiovisual, S.L.

AYUDA. 1. Registro de Usuarias. 2. Acceso de usuarios (Login) 3. Recuperación de contraseña de usuario. 4. Mi Zona Personal. 5.

7.1. Mandar mensajes privados 7.2. Escribir en la biografía de un amigo 7.3. Chatear

Cómo acceder a Google Drive? Tiene más funcionalidades una cuenta de Google?

Manual de uso de la plataforma para monitores. CENTRO DE APOYO TECNOLÓGICO A EMPRENDEDORES -bilib

Manual de iniciación a

Una App para Facebook

Proceso de cifrado. La fortaleza de los algoritmos es que son públicos, es decir, se conocen todas las transformaciones que se aplican al documento

STRATO LivePages Inicio rápido

Escudo Movistar Guía Rápida de Instalación Dispositivos Symbian

Guí a Ra pida Dropbox.

Correo Electrónico: Webmail: Horde 3.1.1

Instalación y Registro Versiones Educativas 2013

1 Itinerario. 2 Descripción y funcionalidades principales. Google Docs. 1.1 Qué vamos a hacer? 1.2 Qué pasos vamos a seguir?

Manual de configuración de Thunderbird ÍNDICE

Practica A. Crear y Administrar Grupos

Qlik Sense Cloud. Qlik Sense Copyright QlikTech International AB. Reservados todos los derechos.

Manual instalación Windows 8. Instalar Windows 8 paso a paso

Guía de integración del módulo de Redsys en Prestashop

GUIA APLICACIÓN DE SOLICITUDES POR INTERNET. Gestión de Cursos, Certificados de Aptitud Profesional y Tarjetas de Cualificación de Conductores ÍNDICE

AGREGAR UN EQUIPO A UNA RED Y COMPARTIR ARCHIVOS CON WINDOWS 7

Instalación del Admin CFDI

REGISTRAR LOS SITIOS WEB MÁS INTERESANTES

Cómo instalar fácilmente tu WordPress tras contratar un hosting en Hostalia

Sitios remotos. Configurar un Sitio Remoto

Ministerio de Educación. Base de datos en la Enseñanza. Open Office. Módulo 5: Report Builder

MANUAL TARIFICADOR. Clic aquí Descargar Tarificador

PANEL DE CONTROL (Zona de Administración) MANUAL DE USO Por conexanet. Revisión 1.1 Fecha

Desarrollo de una aplicación de ejemplo: movilidapp. Desarrollado por movilidapp

Unidad Didáctica 12. La publicación

COMO CREAR UNA PÁGINA WEB 3-VÍNCULOS. IMÁGENES. FORMULARIOS.

CÓMO ENTRAR EN ALEXIA

Manual LiveBox WEB USUARIO.

Introducción a LinoIt Breve guía sobre algunas de sus funcionalidades destacables.

Manual de Usuario ÍNDICE: 1. Configuraciones Iniciales 2. Bases de datos 3. Historial 4. Agenda 5. Correo

Manual de software. Dynamic Cloud. 10/2014 MS-Dynamic_Cloud v1.2

Las propiedades de la clase en java es el equivalente a las variables globales en lenguajes estructurados como el C.

Traslado de Copias y Presentación de Escritos. Manual de Usuario V.3.1

UNIVERSIDAD DE MEDELLÍN NUEVO PORTAL WEB MANUAL DE USUARIO GESTOR DE CONTENIDOS

Introducción a Moodle

Hot Potatoes, aplicaciones educativas

Colegio de Ingenieros de Caminos, Canales y Puertos. Manual de Gestión de correo electrónico y SMS

1º Crear nuestro blog en blogger

Instrucciones para acceder a la Red de Gestores para el Desarrollo de la CoPLAC - GpRD

Manual de usuario. Autor: Oriol Borrás Gené.

EJERCICIO Nº9: COMPARTIR Y CREAR MATERIALES EN EL GRUPO DE TRABAJO

GESTIÓN DOCUMENTAL PARA EL SISTEMA DE CALIDAD

Manual de Usuario ÍNDICE: 1. Configuraciones Iniciales 2. Bases de datos 3. Historial 4. Agenda 5. Correo

PRÁCTICA 10. Configuración de Correo y Publicar en la Web

Manual para la instalación del cliente de correo electrónico Mozilla Thunderbird.

Servidor web E-Sniper

Manual de uso de la Web

Guía de integración del módulo de Iupay en Prestashop

ACCESO AL SERVIDOR EXCHANGE MEDIANTE OWA

Manual de Administración Solución ADSL Profesional

Manual de NetBeans y XAMPP

Guía rápida del usuario DoliShop

Manual CMS Mobincube

TUTORIAL DE Facebook. Proyecto Empleo 2.0

Office Online Office Online

Página 1 de 13 PLATAFORMA HELVIA. ADMINISTRACIÓN GENERAL: Manual de la Administración General

GUÍA DE USUARIO: GOOGLE DRIVE

Páginas web ::: Edición web en línea con Kompozer Diseño de materiales multimedia. Web Edición web en línea con Kompozer

MANUAL DEL USUARIO: EDITOR E-COMMERCE

CUALQUIERA, NO ES NECESARIO DISPONER DE ADSL

SMS Gestión. manual de uso

TUTORIAL DE GMAIL. Proyecto Empleo 2.0

Manejo y aplicaciones de Google Drive

Guía de inicio rápido a

MANUAL DE. manual de Joomla JOOMLA

Para descargar la versión más reciente de Skype accedemos al sitio web de Skype y luego hacemos clic en Descargar Skype para escritorio de Windows.


CONCEPTO DE SCREENCAST O MATIC

En términos generales, un foro es un espacio de debate donde pueden expresarse ideas o comentarios sobre uno o varios temas.

Manual para usuarios USO DE ONEDRIVE. Universidad Central del Este

Race Manager by Master Timing Guía del usuario GUIA RACE MANAGER. Eventronic, SL

Notas para la instalación de un lector de tarjetas inteligentes.

E Manual de usuario. : Versión: 0.1 Fecha: 05/02/2013 Autor: Carlos Ors Carlos.ors@tecsidel.es

Qué es Skype? Cuáles son las ventajas de Skype?

INSTALAR UBUNTU DESDE WINDOWS

webmaker Guía básica Tu web en 3 pasos Índice

MANUAL DE USO DE LOCKtoSEND

MANUAL DE AYUDA MANEJO DE SHAREPOINT CON GOTELGEST.NET

CREACIÓN O MIGRACIÓN DEL CORREO POP A IMAP PARA MOZILLA THUNDERBIRD

El almacén: sistema de archivos

Qué ventajas presenta Google Drive para catedráticos y alumnos?

Aplicateca. Manual de Usuario: Ilion Factura Electrónica. Espíritu de Servicio

Plan Master. Guía Básica. Todo un Hosting a tu alcance. Índice. 1. Cómo gestionar tu Plan Master 2. Sube tu web Instala tus aplicaciones

Copyright 2015 Pepa Cobos. Todos los derechos reservados.

INSTALACIÓN DE MEDPRO

Se ha confeccionado una aplicación sencilla para poder probar el interfaz de gestión explotación de MEGA, Modelo Estandarizado de Gestión de Agua.

Gestiona Movil App (versión Android) Manual de Usuario

NORMA 34.14(SEPA) 05/11/2013

Copias de seguridad con SQL Server 2005 WhitePaper Febrero de 2008

Desarrollo de Servicios Web con JBuilder

Manual aplicación móvil iphone y Android

Copyright Arsys Internet S.L. Guía de Ecommerce Inicio rápido

Pasos para obtener un alojamiento gratuito o Hosting y colgar nuestra pagina Web en Internet.

Transcripción:

Facebook SDK para Unity El SDK de Facebook para Unity se emplea para publicar proyectos creados en Unity en apps de Facebook. Desde abril de 2014, las aplicaciones creadas para Facebook utilizan el API 2.0 del SDK. El SDK de Facebook para Unity se encuentra disponible a modo de paquete importable en Unity, por lo que su instalación es relativamente sencilla. Las últimas versiones se pueden encontrar en ésta URL: https://developers.facebook.com/docs/unity/downloads/? campaign_id=282184128580929&placement=sdk_list Igualmente se pueden encontrar guías para comenzar a manejar el SDK e implementarlo en un proyecto ya terminado aquí: https://developers.facebook.com/docs/unity/getting-started/canvas https://developers.facebook.com/docs/games/unity/unity-tutorial Guía: Comenzar a manejar el SDK de Facebook 1, Crear una nueva aplicación en Facebook Necesitarás estar registrado en Facebook como desarrollador. Para ello, visita https://developers.facebook.com y haz clic en el enlace de registro. Necesitarás confirmar tu número de teléfono. Una vez completado el registro, ve a la página principal de aplicaciones (https://developers.facebook.com/apps) y haz clic en Create new app. Facebook SDK para Unity Pág. 1

Dale a tu aplicación el nombre que prefieras y haz clic en Creación de aplicaciones. Rellena el captcha y verás tu aplicación creada. Necesitarás el dato APP ID para poder comunicar tu proyecto de Unity con tu aplicación de Facebook. Cópialo. Facebook SDK para Unity Pág. 2

2, Añadir el SDK de Facebook a tu proyecto de Unity Crea un nuevo proyecto en Unity. Después, descarga la última versión del SDK de Facebook desde https://developers.facebook.com/docs/unity/downloads/ Facebook SDK para Unity Pág. 3

Haz clic en Assets Import Package Custom Package... y localiza el SDK de Facebook donde lo hayas descargado anteriormente. Importa todo el contenido del paquete en tu proyecto. Guarda tu proyecto y reinicia Unity. Una nueva opción habrá aparecido en el menú: Facebook SDK para Unity Pág. 4

Haz clic en Facebook Edit Settings. Se mostrará el siguiente contenido en el Inspector de Unity: En el apartado App Id deberás colocar el ID que obtuviste al crear tu aplicación en Facebook. Por último, ya puedes probar el código de ejemplo incluido en el paquete del SDK de Facebook para Unity. En la pestaña Project, ve a la carpeta Assets Examples y arrastra el objeto Interactive Console a la cámara de tu escena. Haz clic en el botón Play para probar la funcionalidad de Facebook. Facebook SDK para Unity Pág. 5

3, Configurar la aplicación para el Canvas de Facebook En Unity, haz clic en File Build Settings. Selecciona Web Player como plataforma principal, añade tu escena y haz clic en Build. Facebook SDK para Unity Pág. 6

Para poder ejecutar tu proyecto de Unity en el canvas de Facebook, necesitarás que esté exportado como web a un servidor compatible con SSL/TLS. Además, Facebook sólo aceptará tu proyecto si se comunica mediante HTTPS. Durante el desarrollo, sin embargo, puedes probar tu aplicación en un servidor local y mediante HTTP. Existen múltiples opciones para ello, como XAMPP. Otra alternativa para subir tu proyecto a un servidor es Google Drive. Creando una carpeta con visibilidad pública, puedes utilizar el link al archivo del juego para conectar con Facebook. Una vez tu proyecto esté subido a la web, ve a la página principal de tu aplicación en Facebook, y haz clic en Settings. En la pestaña Basic, haz clic en Add Platform, y después en App on Facebook. Facebook SDK para Unity Pág. 7

Cuando hagas clic en App on Facebook, aparecerá un nuevo apartado en la pestaña de configuración. Haz clic en Unity Integration para activar la integración de tu aplicación de Unity con el canvas de Facebook. Aparecerán varias opciones nuevas, la más importante es la primera de todas, la url de tu proyecto Unity. Allí deberás colocar el link que hayas obtenido del servidor donde hayas alojado tu proyecto. Recuerda que el archivo al que debes hacer referencia es el.unity3d. Facebook SDK para Unity Pág. 8

Haz clic en el botón Save Changes al final de la página y ya tendrás tu aplicación lista para ser utilizada en Facebook. Puedes acceder a ella mediante la url http://apps.facebook.com/tuappid. Facebook SDK para Unity Pág. 9

Guía: Integrar el SDK de Facebook en un proyecto y añadirle funcionalidad Ya hemos visto los pasos necesarios para integrar una aplicación creada con Unity en el canvas de aplicaciones de Facebook. Tan sólo tienes que importar el SDK de Facebook en Unity, crear tu aplicación en Facebook, colocar la APPID de tu aplicación en Unity y subir tu proyecto a un servidor web para comunicarlo con tu aplicación. Ahora veremos cómo añadir funcionalidades de Facebook a tu proyecto: Iniciar sesión en Facebook, ver tu lista de amigos, enviar mensajes y solucitudes, publicar en tu muro, etc. Para seguir ésta guía necesitarás haber completado primero la anterior, y haber descargado el proyecto de referencia desde Facebook (https://github.com/fbsamples/friendsmash-unity). Abre el proyecto en Unity y crea tu aplicación en Facebook, e importa el paquete del SDK de Facebook para Unity en tu proyecto. Coloca la APPID en el apartado correspondiente y comienza a seguir la guía. 1, Inicializar el SDK de Facebook desde tu aplicación Para empezar a trabajar con el SDK, necesitarás una función que lo inicialice, compruebe la conectividad con Facebook o pause el juego al entrar en segundo plano. Localiza el script MainMenu en la carpeta Assets líneas de código: private void SetInit() Scripts del proyecto. Añade las siguentes Util.Log("SetInit"); enabled = true; // "enabled" is a property inherited from MonoBehaviour if (FB.IsLoggedIn) Util.Log("Already logged in"); OnLoggedIn(); Facebook SDK para Unity Pág. 10

private void OnHideUnity(bool isgameshown) Util.Log("OnHideUnity"); if (!isgameshown) // pause the game - we will need to hide Time.timeScale = 0; else // start the game back up - we're getting focus again Time.timeScale = 1; El método SetInit() se encarga de activar los distintos elementos de la GUI una vez se ha inicializado el programa correctamente. También comprueba si hemos hecho login en Facebook. El método OnHideUnity () se encarga de pausar o reanudar el juego cuando se den determinados eventos. Así es como se inicializa el SDK en la función Awake(): // Initialize FB SDK enabled = false; FB.Init(SetInit, OnHideUnity); SDK. De este modo, ningún elemento GUI se mostrará hasta que no se haya inicializado correctamente el Facebook SDK para Unity Pág. 11

2, Hacer Login en Facebook En el método OnGUI(), localiza ésta línea: GUILayout.Box("", MenuSkin.GetStyle("panel_welcome")); código: Aquí prepararemos la aplicación para poder conectarnos con nuestra cuenta de Facebook, con éste if (!FB.IsLoggedIn) GUI.Label((new Rect(179, 11, 287, 160)), "Login to Facebook", MenuSkin.GetStyle("text_only")); if (GUI.Button(LoginButtonRect, "", MenuSkin.GetStyle("button_login"))) FB.Login("email,publish_actions", LoginCallback); Tras intentar hacer Login en Facebook, se llama a éstos métodos: void LoginCallback (FBResult result) Util.Log("LoginCallback"); if (FB.IsLoggedIn) OnLoggedIn(); void OnLoggedIn() Util.Log("Logged in. ID: " + FB.UserId); Facebook SDK para Unity Pág. 12

La función LoginCallBack se ejecuta cada vez que se realiza un intento de Login. Si el Login se ha realizado correctamente, entonces se llama a la función OnLoggedIn. En éste caso lo único que hace es guardar un Log con el ID del usuario que ha hecho Login, pero podríamos ejecutar cualquier otra acción. 3, Personalizar la aplicación Ahora que ya tienes una aplicación que funciona y permite conectarse con Facebook, vamos a añadir más funcionalidades. Podemos acceder al perfil del usuario y su lista de amigos: void OnLoggedIn() Util.Log("Logged in. ID: " + FB.UserId); // Reqest player info and profile picture FB.API("/me? fields=id,first_name,friends.limit(100).fields(first_name,id)", Facebook.HttpMethod.GET, APICallback); LoadPicture(Util.GetPictureURL("me", 128, 128),MyPictureCallback); Actualizando el método OnLoggedIn() podemos acceder a la foto del perfil y a la información del usuario. Para ello tenemos que tener en cuenta las siguientes funciones, las cuales serán ejecutadas al terminar éste método: void APICallback(FBResult result) Util.Log("APICallback"); if (result.error!= null) Util.LogError(result.Error); // Let's just try again FB.API("/me? fields=id,first_name,friends.limit(100).fields(first_name,id)", Facebook.HttpMethod.GET, APICallback); return; Facebook SDK para Unity Pág. 13

profile = Util.DeserializeJSONProfile(result.Text); GameStateManager.Username = profile["first_name"]; friends = Util.DeserializeJSONFriends(result.Text); void MyPictureCallback(Texture texture) Util.Log("MyPictureCallback"); if (texture == null) // Let's just try again LoadPicture(Util.GetPictureURL("me", 128, 128),MyPictureCallback); return; GameStateManager.UserTexture = texture; Ahora el método OnLoggedIn utiliza la API de Facebook para acceder a los datos del usuario, en concreto el userid de Facebook y su primer nombre, así como su foto de perfil. También recupera información (userid, nombre) de sus 100 primeros amigos. Facebook SDK para Unity Pág. 14

4, Invitaciones y solicitudes Ahora que ya accedemos a algunas funcionalidades básicas de Facebook, vamos a ver cómo implementar invitaciones y solicitudes para la aplicación. La mayoría de juegos de Facebook utilizan invitaciones, para avisar a amigos que todavía no conocen el juego, o solicitudes, en forma de desafíos o retos para los amigos que ya están jugando. La implementación más sencilla envía una solicitud a una sola persona de la lista de amigos del usuario. Veamos cómo realizarlo. Localiza en la función OnGUI() el siguiente código: if (DrawButton("Play",PlayTexture)) onplayclicked(); Éste código gestiona el botón de inicio del juego. A continuación añade: if (FB.IsLoggedIn) if (DrawButton ("Challenge",ChallengeTexture)) onchallengeclicked(); Éste código permitirá gestionar el uso del botón para enviar retos a los amigos. Ten en cuenta que éste botón sólo se mostrará si previamente el usuario ha hecho Login en Facebook desde la aplicación. Después, con la función onchallengeclicked(), haremos lo siguiente: Facebook SDK para Unity Pág. 15

private void onchallengeclicked() FB.AppRequest( to: null, filters : "", excludeids : null, message: "Friend Smash is smashing! Check it out.", title: "Play Friend Smash with me!", callback:apprequestcallback ); private void apprequestcallback (FBResult result) Util.Log("appRequestCallback"); if (result!= null) var responseobject = Json.Deserialize(result.Text) as Dictionary<string, object>; object obj = 0; if (responseobject.trygetvalue ("cancelled", out obj)) Util.Log("Request cancelled"); else if (responseobject.trygetvalue ("request", out obj)) AddPopupMessage("Request Sent", ChallengeDisplayTime); Util.Log("Request sent"); Facebook SDK para Unity Pág. 16

Así, después de iniciar sesión en Facebook en el juego, se mostrará un botón para desafiar a los amigos del usuairo. Al pulsarlo se mostrará la ventana nativa de Facebook que permite enviar solicitudes a los amigos deseados: A veces, sin embargo, necesitaremos interactuar con los amigos con los que estamos jugando, sin necesidad de obligar al usuario a que tenga que navegar por toda su lista de amigos para enviar solicitudes. Mediante código, podemos especificar los destinatarios de los mensajes o las solicitudes, accediendo a cualquiera de sus id's que tenemos en ese momento: Facebook SDK para Unity Pág. 17

private void onchallengeclicked() Util.Log("onChallengeClicked"); if (GameStateManager.Score!= 0 && GameStateManager.FriendID!= null) string[] recipient = GameStateManager.FriendID ; FB.AppRequest( message: "I just smashed you " + GameStateManager.Score.ToString() + " times! Can you beat it?", to: recipient, filters : "", excludeids : null, maxrecipients : null, data: "\"challenge_score\":" + GameStateManager.Score.ToString() + "", title: "Friend Smash Challenge!", callback:apprequestcallback ); else FB.AppRequest( to: null, filters : "", excludeids : null, message: "Friend Smash is smashing! Check it out.", title: "Play Friend Smash with me!", callback:apprequestcallback ); Ahora podemos enviar solicitudes a los amigos especificados por el usuario, o determinar el destinatario según con qué amigos estemos interactuando en un momento dado en el juego. Facebook SDK para Unity Pág. 18

También podemos especificar mediante código una lista de varios amigos a los que enviar solicitudes, o mostrar al usuario varias opciones para escoger a quién enviarlas. Para ello usaremos un parámetro de filtrado. Por ejemplo, si sólo queremos enviar solicitudes a los amigos que tengamos como vecinos, podemos utilizar éste código: // [...] string filter = "[$name$: $Playing$, $user_ids$: [1046988185, 286400088], $app_users$]"; filter = filter.replace("$", "\""); FB.AppRequest( message: "Friend Smash is smashing! Check it out.", filters: filter, title: "Play Friend Smash with me!" ); // [...] Facebook SDK para Unity Pág. 19

De éste modo, la ventana de envío de solicitudes de Facebook mostrará sólo determinados contactos: Facebook SDK para Unity Pág. 20

5, Gestionar publicaciones Ahora que hemos implementado las solicitudes, los usuarios pueden dar a conocer nuestra aplicación o juego invitando a sus amigos. Pero con el SDK de Facebook, también podemos publicar historias en la biografía de los usuarios. Así, los usuarios podrán compartir sus puntuaciones, logros, etc... con sus amigos. Para ello, primero añadiremos un botón para compartir, igual que añadimos anteriormente el botón para enviar solicitudes: if (FB.IsLoggedIn) if (DrawButton ("Challenge",ChallengeTexture)) onchallengeclicked(); if (GameStateManager.Score > 0) if (DrawButton ("Brag",BragTexture)) onbragclicked(); Facebook SDK para Unity Pág. 21