Activa JavaScript para disfrutar de los vídeos de la Mediateca.
Moodle y dispositivos móviles
Ajuste de pantallaEl ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:
Moodle y dispositivos móviles
Bueno, la siguiente sesión es la presentación –voy a decir el título exacto para que
00:00:00
luego no me echen bulla– de Juan Leiva, que, si habéis estado antes aquí, ya lo
00:00:11
conocéis. El taller se llama Taller Moodle y Dispositivos Móviles. Para quien no conoce
00:00:18
a Juan, muy mal. Es uno de los desarrolladores de CBIA, es un crack, yo soy fan de él. No
00:00:24
me enrollo más, os dejo con él, que es quien nos tiene que explicar cosas interesantes.
00:00:32
Se me escucha bien, ¿no? Este taller, que en realidad no es tanto un taller, porque
00:00:35
si fuese un taller estaríamos aquí todos trabajando y demás, pero es una presentación
00:00:48
en la que intentaré que vosotros interactuéis lo máximo posible. Vamos a hablar principalmente
00:00:52
de lo que es el soporte para dispositivos móviles que trae Moodle de forma nativa
00:00:59
desde la versión 2.1 y ahora en la versión 2.2, más aún porque está mejorado, incluyen
00:01:04
un temagráfico para Moodle 2 y demás. Hay una presentación en PDF que os iré poniendo
00:01:12
y además si estáis inscritos en el taller, si entráis al curso que está en la página
00:01:20
de la Moodle Moodle, veréis que ha activado dos enlaces, que hay unos simuladores de iPhone
00:01:26
y de Samsung, simuladores entre comillas, como se puede entender, porque uno son unas
00:01:31
imágenes estáticas de pantalla y otro es una especie de iframe, pero ahora os lo enseñaré.
00:01:37
Lo primero de todo es indicaros los resultados de la encuesta que hice cuando estaba preparando
00:01:43
este taller para saber al tipo de público que me iba a enfrentar y un poco al estado
00:01:49
actual del uso de los dispositivos móviles por parte de nosotros, que somos usuarios
00:01:54
de Moodle al final. Aquí tenéis una visión general de una encuesta que hice, participó
00:02:01
bastante gente, afortunadamente más de las que me esperaba y como veréis aquí hay algunos
00:02:09
resultados que son bastante esclarecedores. Concretamente la pregunta inicial que preguntaba
00:02:16
que cuál es el dispositivo móvil que utilizáis, la mayoría de los asistentes contestasteis
00:02:25
que Android, ya en su versión móvil o en tablet y luego hay una minoría, no se puede
00:02:33
decir tampoco, es un porcentaje respetable de gente que usa lo que serían productos
00:02:41
de Apple, el iPhone y el iPad. Hay alguno perdido por ahí todavía que tiene Symbian,
00:02:47
Nokia, cuando digo perdido, que no se me ofenda nadie, pero me refiero que para los tiempos
00:02:52
que corren parece que ya el Symbian está muriendo, que efectivamente está muriendo,
00:02:59
está ya definitivamente muerto, pero bueno. Y otros que tienen otros móviles, que supongo
00:03:03
que sea un Alcatel de esos de hace 10 años, o tú eres el que es del Alcatel, ¿no? Ahí,
00:03:08
muy bien. Tienen un Ladritel, ¿no? Como yo solía decir. Ciclado, llama y recibe mensajes.
00:03:14
Eso es lo que dice mi padre. Le va perfectamente, la verdad. Bueno, está bien, ¿eh? Lo que
00:03:21
quería haceros ver es que aquí la gente, hay crisis, pero nos gastamos el dinero en
00:03:26
tener buenos móviles. Eso parece, o que los planes de datos nos hacen, las compañías
00:03:32
nos hacen muy buenas ofertas. Bueno, por fabricantes veréis que los de Samsung se están poniendo
00:03:38
las pilas a vender dispositivos. HTC también lo hace bastante bien. Básicamente porque
00:03:43
son los dos fabricantes que distribuyen Android móviles de alguna forma en buena calidad
00:03:49
relación precio, ¿no? Con los Samsung son carísimos para la preciación. Y bueno, luego
00:03:56
tenemos que, lógicamente, los que usan iPad y iPhone tienen productos de Apple, lógicamente.
00:04:00
Alguien tiene Acer, Sony Ericsson también hay por ahí y demás, ¿vale? Ahora sacaremos
00:04:11
unas conclusiones generales. Finalmente, lo que vemos es que de media la gente tiene 15
00:04:17
meses el teléfono de antigüedad. Eso es bastante reciente. Bueno, también porque
00:04:28
es que empezaron a salir realmente al mercado estos productos en el 2008 o 2009, ¿no? Tampoco
00:04:34
ha dado mucho margen para tenerlos. La gente ha ido comprándolos. Y sorprendentemente
00:04:40
el 75% tenéis contratado un plan de datos que es bastante, bastante... Yo no tengo plan
00:04:44
de datos, curiosamente. No sacáis una idea. Pero vamos, es que yo también tengo mis trucos
00:04:52
de Wi-Fi y esas cosas. Es que en Barcelona hay muchos puntos Wi-Fi gratuitos, ¿no? Entonces
00:05:00
yo lo tengo configurado y me va sincronizando y es una maravilla, la verdad. Y bueno, pero
00:05:05
vamos, es que los planes de datos ahora mismo, incluso los operadores estos virtuales de
00:05:12
bajo coste te regalan datos. O sea, si te haces uno de estos y yo oigo SIM, yo te dan
00:05:15
300 megas al mes o lo que sea. Quiero decir, que ahora lo que se está comercializando
00:05:19
principalmente es datos, ¿no? Para que la gente compre un fijo mensual. Entonces, bueno,
00:05:24
por lo que podemos ver, esta encuesta es principalmente con usuarios con un perfil más administrador,
00:05:30
Moodle, profesor, lo demás, ¿no? Si lo hiciésemos para estudiantes aún serían más elevados,
00:05:39
¿no? Porque aquí todos los chavales, todos tienen su móvil con Android, su plan de datos
00:05:44
o lo que sea. Yo me sorprendo, la verdad, cada vez más. Y con universitarios igual,
00:05:48
los universitarios casi todo el mundo está conectado, ¿no? Según vayamos bajando la
00:05:52
escala de edad, hay ciertos márgenes ya de edad en los que la gente está súper conectada.
00:05:55
Bueno, esto más que nada es dar una forma para que veáis el estado actual del uso de
00:06:00
los dispositivos móviles y demás. La encuesta la hice sobre todo para saber un poquito
00:06:09
los sistemas operativos, fabricantes y demás. Si os fijáis, no es una encuesta de uso del
00:06:13
móvil. Esa encuesta la quería hacer aquí, ¿vale? Personalmente. Lo primero, quería
00:06:19
saber un poco estos datos y luego os quería preguntar aquí un poquito a mano alzada,
00:06:23
ahora que me contestéis, ¿cuántos de vosotros usáis el móvil realmente para acceder a
00:06:28
una instalación de Moodle o consultar información relacionada con Moodle? ¿Levantáis la mano?
00:06:33
Vale, 50. 50, por cierto. Haciendo que el resto no lo hace. No hay más alternativas.
00:06:39
Bien. Bueno, entonces ahora mismo entiendo que accedéis con vuestro móvil, que tiene
00:06:45
un navegado súper chulo y veis el Moodle, pues como se ve el Moodle en un móvil. Haciendo
00:06:51
zoom, navegando, volviéndose un poco loco si se te va el menú para acá o para acá,
00:06:56
¿no? Bueno, afortunadamente la cosa ya está mejorando con Moodle, dado el soporte nativo
00:07:02
que Moodle está incluyendo para todo el tema de dispositivos móviles. ¿Vale? Si os parece,
00:07:12
voy a empezar la presentación. La tengo colgada en un PDF que os podéis descargar.
00:07:16
Aquí creo que se va a quedar incrustado. Ah, esto no se puede. ¿Puedo poner la pantalla
00:07:21
completa? No. Y esto no es de sí. Vale. Vaya, vaya, vaya, vaya, vaya. Bueno, voy a
00:07:33
hacer una cosa que es editar el recurso. Sí, casi me voy a guardar el local. Bueno,
00:07:45
me voy a guardar el local y lo voy a abrir mejor. Ah, sí, directamente lo abro y me
00:08:07
queda así tan ancho y ya está. Vale. Bueno, Moodle en dispositivos móviles, Moodle Mood
00:08:15
2011. Esto es un poco la presentación que ya la ha hecho Sara. Bueno, básicamente mi
00:08:30
perfil es técnico, soy ingeniero en informática de sistemas de la Universidad Politécnica
00:08:36
de Madrid. Llevo trabajando en Moodle desde el 2003. De hecho, es cuando empecé a trabajar,
00:08:39
ya empecé a trabajar directamente con Moodle. Trabajo para la Consejería de Educación
00:08:43
de Madrid. Ahora trabajo para... Uy, que le he dado a aceptar. Es que sé darle sí a
00:08:47
todas mal. Parado, no pasa nada. Ahora trabajo en el Moodle Partner, que es CBA Consulting.
00:08:56
Y aparte de eso, en mi tiempo libre, que tengo cada vez menos, bueno, mantengo algunos
00:09:03
plugins de la comunidad. No sé si os sonará alguno, Configure All Reports, ConfigTask,
00:09:09
uno de tal. Y ahora os enseñaré otro que he estado trabajando últimamente. Bueno,
00:09:14
la empresa es CBA Consulting. Somos Moodle Partner de España desde 2007, si no recuerdo
00:09:20
mal. Y ya nos conoceréis, que hemos hecho presentaciones en otras Moodle Mood. La web
00:09:25
y demás. Luego os dejaré tarjetas por si alguien quiere. Bueno, entonces, un poco historia
00:09:32
del acceso desde dispositivos a Moodle. Bueno, históricamente ya existen muchos proyectos
00:09:41
desde hace años, sobre todo de contribuciones de la comunidad, para intentar, de alguna
00:09:46
forma, visualizar Moodle en un dispositivo móvil. Hay una aplicación que se llama MedTouch,
00:09:52
creo que se llama, que es de pago, que es para iPhone y iPad, que lo que hace, básicamente,
00:09:59
no requiere que instales nada en el Moodle y demás. Es un cliente para usar Moodle desde
00:10:04
un dispositivo móvil. También, para un Moodle 1.8, 1.9, alguien hizo un macro-plugin, que
00:10:09
era una bestialidad, que cogió todo el código de Moodle y lo duplicó y lo adaptó para
00:10:16
Moodle. Básicamente, sacando por pantalla tablas reducidas y demás. Una burrada de
00:10:21
desarrollo. Claro que, lógicamente, eso se quedó extinto, porque no podía evolucionar
00:10:28
a la misma velocidad que evolucionaba Moodle. Y, bueno, diversas iniciativas que ninguna
00:10:32
de realmente ha terminado de cargar como decir, pues casi todo el mundo usa esta. Y tampoco
00:10:36
ha sido, ninguna es especialmente conocida, especialmente usada o referenciada. Entonces,
00:10:41
desde Moodle 2.0 se quiso intentar solventar esta necesidad usando como dos aproximaciones
00:10:49
diferentes. Son como dos herramientas diferenciadas. Por un lado, un cliente nativo que se ha desarrollado
00:10:56
inicialmente para iPhone y que ahora están trabajando en el cliente para Android. Y,
00:11:06
por otro lado, un temagráfico que si detecta que estás accediendo a Moodle desde un dispositivo
00:11:13
móvil, adapta la visualización de Moodle al dispositivo móvil. Hay que hablar un poco
00:11:20
de la descripción de las dos aproximaciones. El cliente nativo es una aplicación nativa
00:11:30
para móviles orientada a ser una herramienta de consulta para que de alguna forma tú puedas
00:11:34
integrar ciertas funcionalidades del teléfono en tu uso habitual de Moodle. Un ejemplo,
00:11:47
puedes hacer una foto con el teléfono y subir la imagen a Moodle. Puedes grabarte un audio
00:11:53
con el teléfono y subirlo a Moodle. Eso, como veis, no se puede hacer con un temagráfico adaptado
00:11:59
para Moodle de forma razonable. Siempre te puedes grabar el audio, cogerte el archivo y ver si con
00:12:05
tu dispositivo o con el file picker, que ya os digo yo que no va a funcionar, puedes subir un archivo.
00:12:13
Esto lo hace un poquito a cortos plazos. Ahora veremos una muestra de cada una.
00:12:18
Luego está el temagráfico y como os decía, la finalidad es, si detecta que estás accediendo con un dispositivo
00:12:25
móvil, te adapta los estilos de Moodle, la disposición de los elementos en Moodle y todo el contenido
00:12:32
para que sea visualizable y manejable la navegación desde un dispositivo Moodle.
00:12:41
No hay que comparar estas herramientas. Es decir, no podemos comparar peras con manzanas. Cada una tiene
00:12:50
su finalidad. De hecho, es que son complementarias. Lo que no te da una, te lo da la otra.
00:12:58
Ahora sé que es un error compararlas. Pero yo creo que hay que tener en mente que son dos herramientas
00:13:02
que son compatibles y que de hecho trabajan muy bien conjuntamente, como ahora veremos.
00:13:09
Inicialmente yo lo que os voy a enseñar es una demostración de cada una y aparte os voy a hablar
00:13:14
de las ventajas e inconvenientes de cada una. Empezamos, si os parece, por el cliente nativo.
00:13:20
Esta es una imagen que me hizo gracia. No pinta mucho, pero es un poquito para la batalla entre Android y
00:13:30
tal, como hemos visto antes. Ahora mismo ya la tenéis disponible para iPhone. Si os vais y buscáis
00:13:36
Moodle en el Store de tal, os la podéis descargar. Hay dos versiones de esta aplicación. En realidad es
00:13:44
solo una, la que funciona para Moodle 2.1 y la que funciona para Moodle 2.2. En realidad es la misma
00:13:52
aplicación, pero automáticamente te detecta a qué versión de Moodle estás intentando acceder y te da
00:13:57
más o menos funcionalidades. ¿Por qué? Como veréis ahora, esta aplicación usa el API de Web Services
00:14:03
de Moodle para comunicarse con la plataforma. Por lo tanto, en función de la versión de Moodle, habrá más o menos
00:14:09
Web Services y más o menos funcionalidades tendréis. Esto, como podéis entender, ya parece un inconveniente
00:14:21
como en el tema gráfico, porque el tema gráfico puedes usar cualquiera. La finalidad es principalmente, en modo consulta,
00:14:28
tener una herramienta que rápidamente te permite tener información de Moodle en tu dispositivo móvil. Es como por
00:14:38
ejemplo la aplicación de Facebook, la aplicación de Twitter y demás. Twitter sí que es más para escribir y demás,
00:14:46
pero te permite, con una interfaz adaptada a móvil y con pocos botones, hacer el 90% de las acciones que suele realizar
00:14:52
un usuario, que suelen ser el 10% de las funcionalidades de Moodle. ¿Veis lo que queréis decir? Al final, un estudiante,
00:15:00
un profesor, ¿qué hace? Entra, ve un recurso, un profesor califica... Eso es lo que hace la mayoría del tiempo.
00:15:09
El 90% del tiempo, el 80% del tiempo. Y eso es un 10% de las funcionalidades de Moodle. Ese es el enfoque de la aplicación para móviles.
00:15:17
La aplicación nativa para móviles no te va a permitir crear cursos, no te va a permitir subir quizzes, subir actividades. Es que no,
00:15:24
no es la finalidad. Para eso, un móvil no es adecuado. Una tablet quizás sí, un móvil no. Como veis, el enfoque es un poquito más
00:15:30
el enfoque de tener una herramienta que se integra con las funcionalidades del móvil para sacarle partido a esas funcionalidades y conectarlas con Moodle.
00:15:40
Por ejemplo, lo que os he dicho, hacer una foto y subirla, grabar un audio y subirlo, descargar algunos contenidos para verlos offline,
00:15:48
que la aplicación funcione offline, para que tú puedas hacer tareas offline que luego se sincronizan online. Integrarse con el sistema de mensajería del teléfono.
00:16:00
Cuando recibes una notificación de Moodle que te llega al teléfono y te salga como cuando te sale un aviso del WhatsApp o de cualquier otra aplicación que tenéis vosotros.
00:16:12
Eso ahora mismo no lo hace la aplicación, pero es un ejemplo de las cosas que podrían hacer. Como veis, la finalidad es, de alguna forma, aprovechar las funcionalidades del móvil.
00:16:21
Es una aplicación en constante desarrollo y depende de las versiones de Moodle. Con la 2.1 se pueden hacer ciertas cosas, con la 2.2 más y con la 2.3 se podrán más.
00:16:33
¿Por qué? Porque la comunicación de la aplicación móvil con Moodle es por webservices. Los webservices podéis coger los de las 2.2 y ponerlos en las 2.1 y seguramente funcionarían.
00:16:47
Pero los webservices se van publicando según van saliendo versiones mayores de Moodle.
00:16:58
Vamos a echarle una ojeada. La versión 2.1 te permite ver contactos, enviar mensajes usando la mensajería interna de Moodle, subir imágenes, fotos y archivos grabados con el móvil, ver documentación de Moodle.
00:17:03
La versión compatible con las 2.2 te permite navegar y ver los recursos de un curso en modo offline. Cuando hablo de recursos me refiero a los PDFs, recursos HTML, imágenes, vídeos que ya han subido los profesores.
00:17:25
Y luego a futuro, ver calificaciones, evaluar tareas, añadir notas de asistencia, integrar el calendario con el calendario del móvil, notificaciones de mensajes y demás.
00:17:42
Vamos a ver un ejemplo.
00:17:55
Aquí lo tenéis. Si alguien tiene un portátil y lo quiere ver por su cuenta.
00:17:57
Esto es algo súper cutre, pero está bien.
00:18:14
Como no todo el mundo tiene un iPhone, hemos hecho una especie de fotomontaje de cómo sería el funcionamiento de la aplicación con el iPhone.
00:18:18
Y espero que esto funcione todo porque está en otro servidor.
00:18:27
Parece que funciona.
00:18:33
Para ganar tiempo voy a ir abriendo la otra también por detrás.
00:18:43
¿Veis?
00:18:48
Es un iPhone. Bueno, creo que todo el mundo sabe lo que es un iPhone.
00:18:51
Les voy a enseñar un poco las pantallas principales de la aplicación 2.1.
00:18:55
Esto sobre todo para que os hagáis una idea. Esto es un iPhone, pero la aplicación para Android va a ser un clon. Va a ser exactamente igual.
00:18:59
Y si algún día se hace alguna para BlackBerry, será también igual.
00:19:05
Lo primero de todo, si no tienes ningún sitio registrado, lo primero que te permite mudar es añadir un sitio.
00:19:09
Tienes que poner la URL del campus, tu suero y tu contraseña.
00:19:15
Aquí ponéis los datos habituales y tal.
00:19:19
Se le da a guardar. Y si todo ha ido bien...
00:19:22
Como veis, son capturas de pantalla.
00:19:26
Perfecto.
00:19:30
Has accedido.
00:19:33
Esto es de la versión 2.1. De la versión 2.2 no me ha dado tiempo porque salí hace una semana.
00:19:35
Y no sé si... Bueno, es que no me ha dado tiempo. Básicamente faltaría un icono.
00:19:41
Esto es... Como veis ahora hay cuatro botones.
00:19:46
Hay cuatro cosas las que puede hacer Moodle. Un par de botones por ahí por detrás y demás.
00:19:49
Tenéis un botón de Upload, otro de Participantes, Web y Help.
00:19:53
El de Web y Help, bueno, os lo enseño rápidamente.
00:19:59
Esto básicamente lo que te muestra es la ayuda de uso de Moodle.
00:20:03
Que por debajo es un navegador.
00:20:08
Esto lo que te hace es que te saca la web en el dispositivo móvil.
00:20:11
Esto es interesante porque si tenéis instalado ya el tema gráfico que se adapta muy a dispositivos móviles,
00:20:16
ya aquí automáticamente te saldría Moodle con un aspecto móvil.
00:20:21
Esto es como una especie de frame dentro de la tal.
00:20:25
Y luego tenéis la parte de subir fotos y de participantes.
00:20:29
Esta versión es bastante limitadita, la de 2.2 compatible con 2.1.
00:20:33
Ahora os comentaré la de 2.2 que tiene más cosas.
00:20:36
Entonces, si le damos al botón de Upload, de subir,
00:20:41
veis que os permite subir un archivo de la galería, de imágenes,
00:20:47
os permite tomar una foto y subirla o grabar un audio y subirlo.
00:20:51
No tiene más misterio.
00:20:57
Tú le das, haces la foto, se sube y en ese momento ya la tienes disponible en tus archivos locales en Moodle.
00:20:59
O sea, Moodle no te deja el navegar y decirme la pones en este curso.
00:21:09
Se te queda en tu zona privada de archivos para que tú cuando la quieras usar en algún lado, la cojas.
00:21:13
Lo interesante de esto es que te permite modo offline.
00:21:19
Tú puedes hacer fotos aunque no estés conectado y cuando el móvil conecte, sincroniza.
00:21:22
Imaginaros que sois un profesor de Biología, Geología o algo así,
00:21:27
vais a dar un paso por el monte y veis piedras, animales o cosas que os gusten.
00:21:32
Hacéis fotos y dices, mira, esta la voy a enseñar en clase que me ha hecho gracia o lo que sea.
00:21:37
Las hacéis, aunque no tengáis conexión, las dejáis ahí hechas y cuando sincronice se subirán automáticamente a Moodle.
00:21:42
Entonces el lunes llegáis a clase y las ponéis en una base de datos, en un recurso, html, en un foro, las posteáis.
00:21:49
Mira, estas son las fotos que tomé este fin de semana cuando estuve no sé dónde.
00:21:57
Esto también puede dar pie a decir a los alumnos, bueno, pues como tarea para entregarme este fin de semana
00:22:01
os tenéis que hacer fotos en la calle cuando veáis coches con matrícula de no sé qué,
00:22:07
o si veis en la calle un comercio de no sé qué, le hacéis una foto.
00:22:12
Los chavales pueden ir con su móvil, le hacen una foto, le dan a subir y luego pueden ir al Moodle
00:22:15
y la entregan como entrega de la tarea, como un fichito de la entrega de la tarea.
00:22:20
Veis un poco que la finalidad de la aplicación para móviles es facilitar esas tareas,
00:22:24
no que tengas que estar haciendo la foto, pasándotela al ordenador y subiéndola al Moodle desde el interfaz de Moodle,
00:22:28
sino un poco acelerar estas tareas y demás.
00:22:33
Lo mismo con un audio o con un vídeo.
00:22:36
Puedes grabar un audio de una entrevista de una persona en la calle y luego la subes
00:22:39
y lo publicas como un podcast en el blog de Moodle, por ejemplo.
00:22:42
Te puedes grabar una conversación o un vídeo y lo publicas como un recurso en Moodle.
00:22:46
La parte de participantes es una parte más social, por decirlo de alguna forma.
00:22:54
Lo que te demuestra es los cursos donde estás matriculado
00:22:59
y de cada curso donde estás matriculado te muestran los usuarios y cuando te creas un usuario en concreto,
00:23:01
te permite acciones típicas como ver la información del usuario y ponerte en contacto con él.
00:23:10
Añadirlo como un contacto en tu libreta de direcciones, añadirle una nota.
00:23:18
Si eres profesor, sabéis que a los alumnos en Moodle se les pueden poner como notas,
00:23:28
en plan, se ha portado mal en clase ese día o hay que tener en cuenta que tiene una necesidad especial o cualquier historia de estas.
00:23:33
O enviarle un mensaje desde el móvil.
00:23:38
Le puedes enviar un mensaje que recibirá la mensajería instantánea de Moodle.
00:23:41
Si tiene configurada la mensajería instantánea de Moodle para que ese mensaje automáticamente se le reenvíe a su correo,
00:23:45
lo recibirá instantáneamente.
00:23:52
Si no, cuando se loguee en Moodle, le saldrá el típico pop-up de que tiene un mensaje nuevo que le ha enviado alguien desde el teléfono.
00:23:53
Esto también funciona offline, no recuerdo mal.
00:23:59
Y bueno, aparte de eso, bueno, tenéis esto, esto era lo de añadir sitios y esto, bueno.
00:24:05
Y esto es las configuraciones, que esto es la cola, que esto es lo que os decía,
00:24:15
que si tienes acciones pendientes, aquí puedes configurar que automáticamente cuando detecte la aplicación que estás conectado a internet, te sincronice.
00:24:20
Te suban las fotos, te envían los mensajes, todo lo que sea compatible con offline.
00:24:29
La versión 2.2 de la aplicación para móviles de Moodle incluye, me ha dado tiempo, pero he visto que han puesto una foto en...
00:24:36
Ah, esta no es, perdón, es esta.
00:24:51
Tiene que estar por aquí...
00:25:03
Creo que está aquí referenciada...
00:25:21
Ahora sí, creo, o no ahora sí, a ver...
00:25:29
Ha colado.
00:25:37
Vale, la aplicación 2.2 lo que te añade además es un botón nuevo, que es este de aquí que veis que se llama Contenidos,
00:25:39
que lo que te permite es navegar por los recursos de un curso.
00:25:49
Tú seleccionarías un curso y lo que te permite es ver los recursos que has subido.
00:25:59
Te permite descargar PDFs, si has subido un directorio, te permite descargar el directorio, si has subido un HTML, un vídeo, lo que sea.
00:26:06
Esto te permite que lo descargues a local para si los quieres ver offline.
00:26:13
Esto, por ejemplo, puede ser que publiquéis contenidos que luego si tú vas en el autobús o lo que sea, te quieras leer un PDF o quieras leer un recurso,
00:26:20
o estés estudiando, lo que sea, y lo quieras ver, te permite que desde la aplicación para móviles en modo offline puedas consultarlo.
00:26:28
Los planes de datos, pues casi todo el mundo ahora mismo, o en países desarrollados, tenemos conectividad casi a todo momento,
00:26:36
pero todavía hay sitios donde no hay conectividad, o también pensar que esto será muy útil para gente que tenga dispositivos con Android más de bajo coste
00:26:47
en lugares donde no haya tanta cobertura y demás, ¿vale?
00:26:55
Centros de esos tipos ahí por el monte, perdidos y demás.
00:26:59
Bueno, como veis, la aplicación para móviles ahora mismo es muy limitada en su funcionalidad, pero tiene sus ventajas, ¿vale?
00:27:03
Tiene sus ventajas porque, teniendo en cuenta que es una aplicación que es core de Moodle, que es nativa de Moodle, Moodle va a mantener y va a evolucionar,
00:27:13
es decir, de aquí a seis meses tendrá más funcionalidades, de un año tendrá mucho más, y dos años muchísimas más,
00:27:22
y está garantizado su uso y su mantenimiento, es decir, no es una aplicación que hace cualquiera o es de pago y te puedes encontrar con que la estás usando
00:27:28
y luego ya se deja de hacer y demás, ¿no?
00:27:37
Entonces, ya si sois los que tenéis un poco un perfil más de profesor, ya tenéis que darle la vuelta a ver qué uso se le podría dar, tuviese o no o tal,
00:27:40
y bueno, indicaros que inicialmente, para que la aplicación para móviles funcione, en vuestra instalación de Moodle lo tenéis que habilitar,
00:27:49
es decir, si alguien se la descarga, la intenta iniciar y no tenéis habilitado el servicio de móviles, no va a funcionar, esto para que lo tengáis en cuenta,
00:28:00
porque a lo mejor no queréis que la gente lo use, o a lo mejor si queréis que la use, pero tenéis que habilitarlo previamente, ¿vale?
00:28:08
Como ya os decía, funcionalidades futuras que serán más de interés es todo el tema de asistencia,
00:28:16
todo el tema de que el profesor pueda ver los envíos de tareas y las pueda ir evaluando desde el móvil, eso sí que será interesante,
00:28:22
todo el tema de poder ver calificaciones de alumnos, o yo me imagino que el profesor a lo mejor está calificando los exámenes escritos y según va poniendo notas,
00:28:29
que tenga el móvil al lado, seleccione Pepito y le ponga 9.9, le dé al botón y se sincronice con Moodle, hombre, pues es cómodo.
00:28:38
Se puede ir a la piscina, se puede ir a tal, necesidad de un ordenador y datos y lo puede ir haciendo.
00:28:45
También cosas como, por ejemplo, sobre todo integrar el calendario, sería muy útil, porque si el alumno tiene integrado en el calendario de su móvil
00:28:52
con notificaciones y demás, cuando tiene exámenes, cuando tiene entrega de tareas y cuando tiene toda esta serie de avisos, ahí sí que le sacas partido, la verdad.
00:29:00
En mis tiempos, cuando iba a la universidad, ya había móviles, pero si hubiese móviles integrados con el campus, con el calendario de entrega de prácticas o tal,
00:29:08
me hubiese venido de faula.
00:29:17
Y todo el tema de notificaciones, cuando te envíen mensajes en los foros o envíen mensajes, tú recibas una notificación en el móvil, también está bastante interesante.
00:29:22
Bueno, esto es lo que es la aplicación nativa para móviles.
00:29:34
Como os digo, es gratuita, se está haciendo para Android, estará durante estas navidades, es un clon de la aplicación para iPhone.
00:29:38
Y una cosa muy importante, la aplicación para iPhone es código cerrado, no es open source.
00:29:46
Y es código cerrado por una historia de licenciamiento y de incompatibilidad con la tienda de Apple.
00:29:52
No lo sé exactamente a más detalle, seguramente en los foros esté explicado el motivo.
00:30:01
En cualquier caso, esto lo que implica es que no es personalizable visualmente a nivel de que no le podéis poner el branding, los colorcitos, el loguito de la universidad.
00:30:06
Ni se le puede personalizar el idioma a no ser que se haga de forma oficial.
00:30:18
Es decir, que los desarrolladores de la app oficial de una vez por todas publiquen el fichero de traducción para que la gente la pueda traducir al castellano, al catalán, al euskera o lo que sea.
00:30:21
Ahora mismo sólo está en inglés.
00:30:33
Como veis tiene sus cosillas.
00:30:35
La versión para Android sí que va a ser open source.
00:30:37
La versión para Android cualquiera se podrá hacer si le apetece ponerse a programar en Java el entorno ese de cada Android.
00:30:40
Se podrá hacer su propia versión, podrá ponerle colorcitos, iconitos, le podrá crear nuevas pestañitas y la podrá publicar en la tienda en otro enlace diferente, personalizar las cadenas y lo que sea.
00:30:49
¿Vale?
00:31:01
Pasamos al tema gráfico para móviles.
00:31:06
Ya lo tenemos en Moodle 2.2.
00:31:11
Es un tema que inicialmente se llamaba MyMobile, que subió un hombre que creo que es alemán o austriaco o no sé de por ahí.
00:31:13
Y básicamente es muy sencillo.
00:31:20
De hecho, automáticamente en Moodle, si saléis en Moodle 2.1 va a funcionar así.
00:31:25
Desde Moodle 2.1 sí.
00:31:30
Hay una opción que tú puedes establecer qué tema gráfico se ha de mostrar en función del dispositivo con el que el usuario está accediendo.
00:31:34
Y eso funciona detectando el user agent del navegador, que es una información que envía el navegador diciendo soy Firefox, soy Internet Explorer,
00:31:40
soy un navegador de un teléfono móvil o bien poniendo tus propias reglas.
00:31:46
Está muy bien porque tú puedes configurar en Moodle para que si alguien está accediendo con un móvil de pantalla de 300, me cargas este tema gráfico.
00:31:52
Si están accediendo con un tablet, me cargas este otro tema gráfico.
00:32:01
Y si no, pues dejas el tema gráfico por defecto.
00:32:04
En Moodle 2.2, si desde un móvil ponéis demo.moodle.net o www.moodle.org, veréis que ya os sale el tema gráfico de Moodle para móviles.
00:32:07
Que queda fatal en la página propia de Moodle, eso sí.
00:32:19
Porque como no está pensada para móviles, tiene unos pedazos de iconos que no se adaptan y ya está.
00:32:22
Entonces, ¿cómo han hecho este tema gráfico para Moodle sin tocar el código y sin hacer cosas raras?
00:32:27
Pues básicamente usando Javascript a porrillo.
00:32:37
¿Qué han hecho? Han usado una tecnología que se llama JQuery y una tecnología que se llama JQuery Mobile,
00:32:41
que lo que permite es que mediante Javascript, que es un lenguaje que se ejecuta del lado del cliente,
00:32:48
cuando una página de Moodle se muestra, se reformatea entera, se quitan bloques, se cargan no sé qué, para adaptarla a móviles.
00:32:52
Entonces, el JQuery Mobile lo que hace además es que detecta la resolución de tu pantalla
00:33:00
y con unas reglas de CSS3 que te permiten cambiar estilos en función de la resolución de tu pantalla
00:33:06
o de cómo la tienes orientada la pantalla, porque al girarla hay un cambio de resolución, la altura pasa a ser la anchura,
00:33:13
reformatea la apariencia visual y te lo deja muy bien adaptado a móviles.
00:33:20
Yo creo que se está aburriendo, hay uno que se ha dormido ahí.
00:33:29
Espero que no se duerma más gente.
00:33:33
La mañana ha sido muy dura. Mientras no me ronquen, yo estoy contento.
00:33:39
He llegado a estar en presentaciones con un tío roncando y eso es muy heavy.
00:33:43
Bueno, no me molesta dejarle que se eche la sesta, hombre.
00:33:47
Fijaros en que funciona con iOS, Android, BlackBerry, Bada, tal, tal, tal, tal, todo esto.
00:33:52
Vale, os lo voy a enseñar.
00:34:07
Este es menos de cartón-piedra, este es más real.
00:34:11
Ahí estamos, está funcionando.
00:34:18
Esto, lo que hay por debajo no son capturas de pantalla, es un Moodle de verdad.
00:34:24
Y esto es un Samsung, un móvil.
00:34:28
¿Veis que ya de inicio la página de lo de Moodle ya tiene presencia?
00:34:31
Vamos a entrar con estudiante 01.
00:34:38
Espero que no falle.
00:34:40
Bien, perfecto.
00:34:48
¿Veis cómo se ha adaptado totalmente Moodle?
00:34:51
Este es un Moodle estándar, luego os enseño cómo es un Moodle.
00:34:54
Es un Moodle estándar con el tema gráfico básico.
00:34:57
¿Qué ha hecho el tema gráfico este para móviles?
00:35:00
Los bloques los ha quitado y los ha dejado accesibles desde aquí.
00:35:03
La navegación la ha dejado accesible desde aquí.
00:35:06
¿Veis?
00:35:08
Y los ajustes de configuración desde aquí.
00:35:10
Es decir, si hubiese un bloque HTML, un bloque de feedback o lo que sea, estaría accesible desde aquí.
00:35:12
La configuración y navegación, que son bloques de Moodle y demás, están accesibles desde aquí.
00:35:18
En realidad la navegación es una navegación simplificada, pero como veis es interesante.
00:35:23
El espacio de mis cursos lo ha dejado aquí reformateado.
00:35:27
Y lo que es el botón de búsqueda y de buscar lo ha puesto al final de todo.
00:35:31
Y luego aquí tenéis los elementos comunes como el calendario y la mensajería de Moodle, que lo ha puesto como botones inferiores.
00:35:34
Está bien, ¿eh?
00:35:40
Le da un buen look a Moodle para hacerlo todo con JavaScript y demás.
00:35:42
Entonces, si entramos en un curso...
00:35:47
Este es el curso estándar de Moodle de Features.
00:35:50
Aquí no lo veis, pero a lo mejor he ido demasiado rápido.
00:35:53
Si le doy para atrás, ¿veis que tiene transiciones?
00:35:56
No, no se ve. Muy bien.
00:35:59
Este ordenador hace efecto de transición de página.
00:36:02
De esos que hace la página para un lado, para otro, para arriba o para abajo.
00:36:07
Es configurable, de hecho.
00:36:11
Entonces hace efecto de transición de página.
00:36:13
Y este es un curso estándar de Moodle donde veis el diagrama de temas y las diferentes actividades.
00:36:15
Este es un curso largo, por eso sale tanto scroll.
00:36:21
Yo creo que lo deberían haber hecho un poco más tarde.
00:36:24
Pero tiene un botón para ir arriba.
00:36:26
Y luego tiene el típico botón del calendario, mensajes y demás.
00:36:29
Y aquí tiene los bloques, que si le damos...
00:36:33
Te carga el listado de bloques que hay en el curso.
00:36:39
Y si pulsas sobre uno...
00:36:43
Te despliega la información que tiene el bloque.
00:36:49
Entonces, como veis, está muy bien trabajado y muy bien adaptado.
00:36:52
Si queréis volver para atrás, podéis usar, si es un Android, el botón para atrás.
00:36:55
O le das a navegación, página principal, curso de ejemplo.
00:37:00
Y devuelve a la página de inicio.
00:37:06
¿Cómo se ve un foro?
00:37:08
Espérate, que me voy al foro de ejemplo de verdad.
00:37:16
Bueno.
00:37:25
¿Qué me ha pillado?
00:37:28
Bueno, se ve bien, ¿eh?
00:37:30
¿Veis los mensajes estos de continuación?
00:37:45
¿Veis los temas, el número de respuestas en un circulito?
00:37:48
Y si le das...
00:37:51
Te despliega el tema.
00:37:53
¿Veis que adapta muy bien Moodle a lo que es la apariencia de un móvil?
00:37:56
Está muy, muy trabajado.
00:38:00
La verdad que el que lo ha hecho se lo ha currado bastante el hombre.
00:38:04
Porque yo iba mirando el código y tenía que ir página por página trabajándola.
00:38:08
Y todavía lo están mejorando además, ¿eh?
00:38:12
Por ejemplo.
00:38:16
El glosario.
00:38:21
Bueno, esta, por ejemplo, no está muy bien del todo, ¿eh?
00:38:25
Bueno.
00:38:29
¿Veis un poco cómo es la navegación, no?
00:38:30
Vamos a ver un recurso HTML.
00:38:35
Y bueno.
00:38:48
Un recurso HTML.
00:38:49
Si tienes un MP3 te lo abre para reproducir o descargar.
00:38:50
Y lo típico, como veis.
00:38:54
Si intentáis comparar esta aplicación con el cliente nativo para móviles, diréis.
00:38:58
Pues el cliente nativo para móviles no vale para nada.
00:39:02
Pero es que no hay que compararlas.
00:39:04
Es lo que os decía, son complementarias.
00:39:06
El cliente nativo para móviles es para usar las funcionalidades de Moodle.
00:39:08
Aprovechar las funcionalidades del móvil en Moodle.
00:39:13
¿Vale?
00:39:16
O de Moodle en Móvil.
00:39:17
Por decirlo de alguna forma, ¿no?
00:39:18
Tener integrado tu herramienta en tu móvil.
00:39:19
¿Vale?
00:39:22
Al igual que te integras tu correo, tus herramientas de Gmail, tu Facebook, tu Twitter o lo que sea del móvil.
00:39:23
Esa es la aproximación.
00:39:29
Esto lo que te permite es navegar de una forma muy cómoda por una instalación estándar de Moodle.
00:39:31
¿Qué desventajas tiene esto?
00:39:40
Bueno.
00:39:41
Ahora las veremos, las ventajas y los inconvenientes.
00:39:43
Pero una de ellas es que, si os fijáis, no es muy personalizable gráficamente.
00:39:46
Que tampoco tiene sentido que lo sea.
00:39:52
Porque una aplicación para móvil no tiene que tener iconos 800x600 ni 300x200.
00:39:53
Pero al menos los colores sí que podría tenerlos y demás.
00:40:00
Pero bueno.
00:40:02
Si os parece, vamos a ver las ventajas e inconvenientes.
00:40:03
Vale.
00:40:17
Bueno.
00:40:28
¿Pros y contras?
00:40:30
Vale.
00:40:33
Bueno, como veis, el formato de mi presentación, se nota que yo soy informático y demás,
00:40:34
es muy cutre respecto al que ha hecho antes Laia, mi compañera, en el taller.
00:40:37
Era súper bonito, estilizado, con efectos y demás.
00:40:40
Yo voy a lo plano porque yo entiendo ASCII y poco más.
00:40:44
Colores, conjunciones y demás se me escapan de mi esquema mental.
00:40:48
Entonces, no llego.
00:40:52
Así que yo he cogido esto.
00:40:54
Y bastante defensa que me ha quedado.
00:40:55
Que sería ponerlo en una fuente que no fuese la Sunshade.
00:40:57
Bueno.
00:41:01
Como veis, lo gráfico no es lo mío.
00:41:05
¿Pros y contras de la aplicación nativa?
00:41:09
Usa las funcionalidades del móvil.
00:41:10
Hacer fotos, grabar vídeos, un audio y vídeo.
00:41:12
Se integra o se integrará con los sistemas de notificaciones propios del Moodle.
00:41:16
Eventos del calendario, notificaciones de eventos, mensajerías, agregar contactos.
00:41:20
Trabaja offline.
00:41:24
Calificaciones, puntuar uno, ver recursos descargados, subir fotos y vídeos cuando se pasa online.
00:41:26
¿Vale?
00:41:31
¿Veis las ventajas?
00:41:32
Y bueno, la finalidad que tiene la aplicación, que como os insisto,
00:41:33
es para integrar en el uso habitual que se le da con el Moodle.
00:41:35
¿Contras?
00:41:39
Tiene un conjunto muy limitado de funciones.
00:41:40
Es decir, lo que se puede hacer.
00:41:42
Lo que se puede hacer con la aplicación en Moodle, que se puede hacer muy poco, realmente.
00:41:44
Porque no es la finalidad como os decía.
00:41:48
No es traducida.
00:41:51
Está en inglés.
00:41:52
Y los cachondos todavía no han publicado el fichero de traducción de idioma.
00:41:54
Hay una tarea en el tracker de Moodle que dice publicar el fichero de traducción.
00:41:57
Publicarlo ya, hombre, que tampoco es tanto para traducir.
00:42:01
Si tiene cuatro iconos.
00:42:03
Otra cosa es que esté preparada la aplicación por debajo para usar ficheros de idioma, claro.
00:42:05
No es personalizable gráficamente.
00:42:12
A todo el mundo le va a ser igual.
00:42:15
Con el color ese naranja, feote de Moodle.
00:42:16
Y esa página así, que tampoco es muy bonito, pero bueno.
00:42:19
La aplicación para iPhone es código cerrado.
00:42:24
Es decir, no si alguien se la quisiese modificar.
00:42:26
Y depende de las versiones Head de Moodle.
00:42:29
¿Qué significa esto?
00:42:32
Que si queréis utilizar funcionalidades de la versión del móvil avanzadas.
00:42:33
Tendréis que evolucionar a la vez que evoluciona la versión del móvil.
00:42:43
Es decir, si con la 2.3 sale la integración con el calendario.
00:42:47
Tendréis que actualizar vuestra instalación de Moodle a 2.3.
00:42:51
¿Vale?
00:42:56
Como veis eso es un inconveniente un poquito, bastante grande.
00:42:57
A no ser que alguien haga Backport.
00:43:01
Que Backport significa pasar funcionalidades de una versión nueva a una versión más antigua.
00:43:03
Y se puede hacer, pero no está muy por el amor.
00:43:09
Ya os lo digo yo.
00:43:11
Tema gráfico.
00:43:15
Se puede adaptar estéticamente.
00:43:17
Podéis cogerlo, duplicarlo, cambiarle la CSS y ponerle logotipos o lo que os dé la gana.
00:43:18
Se adapta al idioma.
00:43:24
Como comprenderéis es un Moodle estándar.
00:43:25
Las cadenas de idioma te salen en el idioma que están.
00:43:28
Te permite navegar por toda la plataforma.
00:43:31
Esto es una característica, no tanto una ventaja.
00:43:36
Prácticamente te permite usar todas las funcionalidades que soporte el navegador.
00:43:40
Y vale para cualquier dispositivo soportado por el Hotawari Mobile.
00:43:43
Que es prácticamente cualquier móvil que no sea un Alcatel.
00:43:46
De estos antiguos o un tal.
00:43:49
Pues te vale.
00:43:51
Con todo mi respeto a Alcatel.
00:43:53
Tengo un familiar que trabaja ahí.
00:43:56
Contras.
00:44:00
No funciona offline.
00:44:02
No todas las funcionalidades de Moodle van a funcionar.
00:44:04
El Filepicker seguramente nos funcione a muchos.
00:44:06
O sea, el sistema para subir archivos.
00:44:08
Y no se integra con las funcionalidades del móvil.
00:44:13
Es decir, no podéis hacer acciones del móvil y encadenarlas con Moodle.
00:44:16
Es decir, no podéis hacer una foto y otra manera de subirla a Moodle.
00:44:19
A no ser que, como el Filepicker en casi todos los sitios no funcionará.
00:44:22
Pues nos permite hacer esto.
00:44:25
Bueno.
00:44:34
Ahora hay más.
00:44:35
Gracias por asistir.
00:44:36
Y ahora entramos a más nivel.
00:44:37
Entonces.
00:44:41
Ahora os quería hacer otra encuesta.
00:44:44
Y un turno de ruegos y preguntas.
00:44:47
¿Vale?
00:44:50
Mi encuesta sería.
00:44:51
¿Alguien de aquí, en plan universidad, institución o lo que sea.
00:44:53
¿Se plantearía hacer una versión personalizada de una aplicación para móviles para ellos?
00:44:56
Cuando digo personalizada, ¿significa estéticamente y todo eso?
00:45:02
¿Levantáis la mano?
00:45:05
Ostras.
00:45:07
Valientes, ¿eh?
00:45:08
Bueno, es lo que piden, es verdad.
00:45:11
También es verdad, ¿no?
00:45:12
Es lo que piden.
00:45:13
Que lo tengas adaptado y que tal.
00:45:14
Bueno, también si os ponéis a comparar.
00:45:16
La universidad de no sé quién tiene su propia aplicación para móviles.
00:45:17
Nosotros no vamos a ser menos, ¿no?
00:45:21
Hay que hacerlo y demás.
00:45:23
Sí, Blackboard tiene también un producto que es.
00:45:27
Sí, exactamente.
00:45:34
Exactamente.
00:45:36
Vale, entonces.
00:45:37
¿Tenéis alguna pregunta, duda y demás?
00:45:40
¿Ha quedado todo claro?
00:45:45
No.
00:45:47
No, no los carga en absoluto.
00:45:52
Y no debería.
00:45:54
Bueno, a ver.
00:45:55
He hablado demasiado rápido.
00:45:56
Esperad.
00:45:57
Rectifico.
00:45:58
2.1 no carga demasiado.
00:46:00
La aplicación funciona técnicamente por web services.
00:46:03
Son pocas peticiones, en realidad.
00:46:07
Y la aplicación para móviles también usa una cache interna.
00:46:09
Es decir, si te ha hecho una aplicación a un web service para obtener el listado de cursos.
00:46:11
Esa petición la cachea y no la va a volver a hacer.
00:46:15
Porque, joder, a no ser que te hayas matriculado en ese mismo momento.
00:46:17
Pues tienes cierto margen.
00:46:21
¿Vale?
00:46:25
La versión para 2.2, el web service que te saca la estructura y los contenidos de un curso.
00:46:26
Hay un bug reportado por mí, creo.
00:46:32
Bueno, o se lo comenté al desarrollador así en petit comité.
00:46:35
Ya lo hago público, o sea que tampoco es que sea muy petit comité.
00:46:38
Que si el curso tiene muchos recursos, tarda un infierno.
00:46:42
Es decir, si alguien con la aplicación para móviles intenta ver la estructura del Moodle Features
00:46:45
o algún curso de estos que tiene 20 secciones de tema,
00:46:51
tarda una bestialidad.
00:46:54
Pero creo por algún bug de rendimiento.
00:46:56
Porque hay algo mal que les está fallando.
00:46:58
Cuando recorren todas las actividades y sacan los contenidos, falla.
00:47:01
Entonces, algo pasa por ahí.
00:47:06
Pero bueno, en principio no cargaría.
00:47:09
No tendría un efecto práctico.
00:47:11
No se notaría.
00:47:14
Bueno, espera, que le hagan el micrófono ahora.
00:47:16
Lo que quería preguntar, no has puesto en contraste del tema gráfico.
00:47:20
Lo que entiendo que también para el móvil tiene una sobrecarga de datos.
00:47:25
Porque entiendo que el móvil se tendrá que traer todos los scripts, CSS, etc.
00:47:30
Y luego procesarlo, lo que sea.
00:47:36
Tiene toda la razón.
00:47:38
A efectos de consumo de ancho de banda, tanto ancho de banda como procesamiento,
00:47:39
el tema gráfico consume recursos a dos niveles.
00:47:45
Ancho de banda, de que tiene que descargar toda la página de Moodle entera.
00:47:49
Y si hay planes de datos, una página de Moodle puede ocupar medio mega
00:47:53
y en función de la velocidad puede ser la experiencia lento.
00:47:56
Tiene toda la razón, es un punto que no consideré.
00:47:59
También yo hice pruebas con Wi-Fi, no se nota tanto.
00:48:01
Pero con planes de datos sí que se notaría.
00:48:04
Además, tener en cuenta que como la página se renderiza en el navegador
00:48:06
del dispositivo móvil y los dispositivos móviles no tienen procesadores muy potentes
00:48:17
o muy afinados, o no son todo lo creasable posible,
00:48:21
el efecto de carga o inicialización de la página en el móvil no es nada fluido.
00:48:24
No es tan fluido como lo habéis visto aquí porque esto es un ordenador
00:48:30
con un navegador avanzado.
00:48:33
Es decir, puede haber un efecto de ralentización en las transiciones
00:48:36
o en las cargas de los elementos de la página y de lentitud
00:48:41
de que si pulsas un botón, la respuesta.
00:48:44
La otra pregunta que te quería hacer es sobre hacer una aplicación nativa para IOS.
00:48:48
Has comentado que está cerrada, parece que es por el tema de licencia del Market,
00:48:55
donde sabemos que pone muchas restricciones la gente de Apple para publicar aplicaciones.
00:49:00
Y lo que te quería preguntar, a ver si alguien conoce si hay algún proyecto similar,
00:49:07
pero que sea modificable.
00:49:12
Entiendo que tendríamos que tener un Market propio o algo paralelo al de Apple
00:49:14
porque no podría ser en el suyo.
00:49:18
Es lo que os iba a presentar ahora, que es un proyecto que estoy trabajando yo.
00:49:20
Pero quería hacer precisamente...
00:49:23
Usted no estaba preparado, ¿eh?
00:49:24
Qué rapidez.
00:49:28
Sí, una preguntilla referente al tema de la autenticación con este tipo de aplicaciones.
00:49:31
Si tienes un sistema de single sign-on en tu infraestructura,
00:49:37
¿funciona bien, no funciona bien?
00:49:43
¿Están pensados?
00:49:45
¿Es fácil?
00:49:46
¿Se puede adaptar, no se puede adaptar?
00:49:47
Pero, aunque tengas single sign-on, ¿tú permites acceso directo a tu instalación de Moodle?
00:49:48
En nuestro caso, es que tenemos dos accesos.
00:49:54
Uno que es, o sea, en la entrada, como tenemos usuarios que van por single sign-on o no,
00:49:57
hacemos como una dimisión.
00:50:04
¿Pero los usuarios que acceden por single sign-on, eventualmente,
00:50:06
podrían acceder poniendo sus credenciales en Moodle?
00:50:08
No.
00:50:10
No.
00:50:11
Entonces, mal.
00:50:12
Tendrías que, claro, porque ya de inicio te pide que te tengas que identificar,
00:50:14
a no ser que hagas tú una lanzadera previa.
00:50:18
La lanzadera la podrías hacer para el tema gráfico, para móvil,
00:50:21
no tanto para la aplicación nativa.
00:50:24
¿Vale?
00:50:27
Hay un fallo.
00:50:29
Si usáis CAS, ¿alguien usa CAS aquí?
00:50:30
Sí.
00:50:33
Con la aplicación para móviles.
00:50:34
Pero creo que ya le han corregido la versión 2.2, ¿eh?
00:50:36
No sé qué exactamente daba el problema al poner las credenciales en solo y contra señal y demás.
00:50:41
En cualquier caso, vuestra única solución sería, de alguna forma,
00:50:45
que permitieses también acceso directo sin single sign-on.
00:50:49
Usando las mismas credenciales que usan para single sign-on o lo que sea.
00:50:52
Ya sé que sería una puñeta porque tendríais que estar sincronizando passwords, usuarios,
00:50:55
o tendríais una casuística.
00:50:59
A lo mejor el usuario es rarísimo o lo que sea, compleja,
00:51:00
pero tendríais que adaptaros a esa finalidad.
00:51:03
Vale. Una cosilla más.
00:51:08
Han mostrado como una especie de roadmap de las nuevas funcionalidades de la aplicación móvil.
00:51:10
¿Dónde está eso?
00:51:18
Que no lo encuentro, lo estoy buscando por ahí.
00:51:19
Eso en la aplicación, en el...
00:51:21
La wiki de...
00:51:23
A ver, yo muchas me las sé porque ya hablo directamente con Jeromí,
00:51:24
que es uno de los que la hacen, ¿eh?
00:51:27
Pero creo que en el wiki están.
00:51:29
Que no lo he encontrado.
00:51:31
No está aquí, en dev-mobile-app, no está el...
00:51:33
Vamos, no lo he visto.
00:51:36
Bueno, tenéis esto de future versions, pero creo que no hablan todo.
00:51:42
Sí, mira, aquí tenéis calificaciones, mensajes, notificaciones,
00:51:45
calendario, sí.
00:51:50
Las tenéis aquí, ¿vale?
00:51:54
Es en el wiki de desarrolladores, no en el de documentación.
00:51:56
No sé si ves la dirección bien.
00:52:00
Vale, vale.
00:52:02
¿Vale?
00:52:03
Gracias.
00:52:04
Docs, Moodle, tal, tal, tal.
00:52:05
Bueno, de todas formas, en Moodle no hay secretismo.
00:52:07
Sabéis que todo es muy abierto.
00:52:09
O sea que, si tenéis cualquier duda, os podéis ir al foro de Mobile, Moodle, y preguntar.
00:52:11
Y en el tracker de Moodle, el tracker de Moodle es donde se registran las incidencias y características,
00:52:17
también están un listado de funcionalidades pendientes de ser y para cuándo están planificadas.
00:52:22
Entonces hay muchas que están muy bien.
00:52:28
¿Alguien tiene más dudas?
00:52:31
¿Y preguntas?
00:52:33
¿Dudas?
00:52:35
¿Comentarios?
00:52:37
Vale.
00:52:39
Bueno, pues entonces, en esta media hora más o menos que falta,
00:52:41
lo que voy a hacer es presentaros un proyecto en el que he estado trabajando,
00:52:46
que creo que es interesante para todos aquellos que quieren hacer la personalización de su aplicación móvil,
00:52:55
y que básicamente consiste en un clon de la aplicación oficial para móviles de Moodle,
00:53:01
pero desarrollada con tecnologías web de tal forma que es multiplataforma.
00:53:07
O sea, que funciona en iPhone, en iOS, en el sistema operativo de Apple, funciona en BlackBerry,
00:53:10
y también debería funcionar en Android.
00:53:20
De hecho, funciona en Android porque ahora tengo instalada mi móvil y me funciona.
00:53:22
O sea, que funciona bien.
00:53:25
Entonces, os voy a presentar esta aplicación que la publiqué ayer en el Common Country,
00:53:27
en el listado de Moodle.
00:53:35
Previamente ya había anunciado por Twitter, un poquito para crear expectativas y en plan animador,
00:53:37
que estaba trabajando en ello, y ya en el foro de móviles había cierta discusión.
00:53:43
Y si os parece, ahora os la voy a presentar, la aplicación para móviles y un poco cuál es su finalidad y demás.
00:53:47
¿Vale?
00:53:54
Os enseñaré a capturar desde pantalla porque en mi netbook me dejó de funcionar
00:53:56
por un problema que tengo de versiones con el Chrome, que se me actualizó sola.
00:54:03
Y el emulador que uso funciona bajo Chrome, entonces sin emulador no os lo puedo enseñar.
00:54:08
¿Vale?
00:54:13
Pero tengo las capturas de pantalla que publiqué en los foros y entonces por ahí podemos tirar.
00:54:15
¿Vale?
00:54:19
Entonces, cargo la página del wiki de esta aplicación y os la enseño.
00:54:21
Y os cuento un poco el rollo de que va la cosa.
00:54:34
Está en inglés, mi cutre inglés, pero bueno.
00:54:49
Como veis el nombre es súper original.
00:54:54
Es una aplicación oficial para móviles para Moodle.
00:54:57
¿Vale?
00:55:01
¿Cuál es el objetivo de esta aplicación?
00:55:03
A ver, lo primero, esta aplicación no es un reemplazo, no es una mejora ni una sustitución de las aplicaciones nativas
00:55:06
que saldrán para iPhone y para Android, ¿no?
00:55:13
Sino que de alguna forma está diseñada y la he desarrollado para que cualquier institución
00:55:17
con los recursos que actualmente tiene y conocimientos de tecnologías, HTML5, CSS3,
00:55:28
bueno, a lo mejor no todos dominan esas tecnologías, pero bueno, son accesibles,
00:55:34
puedan desarrollar sus propias versiones de la aplicación personalizadas a sus necesidades.
00:55:39
¿Vale?
00:55:46
La aplicación funciona en Android, en BlackBerry.
00:55:49
En iPhone no la he podido probar porque te requiere que te crees un certificado y un montón de historias,
00:55:53
pero debería funcionar porque es un framework de trabajo.
00:56:00
Y bueno, básicamente para que os hagáis una idea, esto ya es una parte más técnica, ¿vale?
00:56:03
Estas son las tecnologías con las que ha sido desarrollada.
00:56:09
¿Vale?
00:56:14
Básicamente es HTML5, CSS3 y Javascript.
00:56:16
PhoneGap, que esto es el framework de alto nivel que lo que te permite es,
00:56:21
con estas tecnologías, usar las funcionalidades del teléfono móvil.
00:56:26
Es decir, que una aplicación hecha en Javascript y HTML puede usar la cámara,
00:56:30
puede usar el audio, poder, bueno, en general, la agenda de contactos y todo lo que sea.
00:56:33
Jotacuery y Jotacuery Mobile.
00:56:40
¿Sabéis que antes hemos hablado de Jotacuery Mobile?
00:56:43
Bueno, pues para montar la parte del layout visual también usa Jotacuery Mobile.
00:56:46
Jotacuery Mobile lo que hace es que tú generas un HTML estándar que son cinco líneas,
00:56:52
ahora os enseñaré un trozo de código, y con esto lo que te permite es,
00:56:57
de alguna forma, generar de una forma muy rápida aplicaciones que funcionan en todas estas plataformas.
00:57:01
¿Vale?
00:57:08
Entonces, ¿qué es lo bueno de esta aplicación?
00:57:10
Ahora os enseño unas pantallas para que veáis lo que tiene.
00:57:14
Lo bueno es que no requiere que instales nada en tu Moodle,
00:57:19
sino que como es un clon de la aplicación oficial funciona utilizando los mismos web service que la aplicación oficial,
00:57:23
excepto que hay que habilitar algunos protocolos adicionales,
00:57:29
porque mientras la aplicación oficial usa XMLRPC para el acceso a los web services,
00:57:33
esta aplicación por simplicidad y por ser Javascript usa REST.
00:57:38
Hay que hacer unos cambios de configuración de Moodle,
00:57:44
pero que no tiene mayor implicación que el igual que cuatro cambios de configuración.
00:57:48
¿Vale?
00:57:53
Entonces, os voy a enseñar unas capturas de pantalla de la aplicación,
00:57:55
para que podáis ver su apariencia.
00:58:01
No sé si más o menos se ven bastante bien.
00:58:06
Si os fijáis, es que es un clon,
00:58:10
solo que no quería usar los mismos iconos porque no sabía el licenciamiento que tenían,
00:58:13
y me cogí estos que son más cutrongo, pero bueno, están bien.
00:58:18
Entonces, si os fijáis, las funcionalidades son exactamente las mismas,
00:58:22
solo que la aplicación oficial usa XMLRPC para el acceso a los web services,
00:58:26
y bueno, están bien.
00:58:30
Entonces, si os fijáis, las funcionalidades son exactamente las mismas,
00:58:32
solo que incluso visualmente es muy parecido,
00:58:36
si os acordáis de la aplicación para iPhone que tengo por aquí abierta.
00:58:39
Esto no se puede...
00:58:45
¿Estaba aquí? Sí.
00:58:52
Bueno, si os fijáis, esta es la...
00:58:54
Bueno, veis las pantallas que son muy parecidas.
00:59:11
Es porque no me quería complicar mucho la vida, la verdad,
00:59:15
y para no pensar, y bueno,
00:59:18
si os fijáis, básicamente está como respondería esta pantalla.
00:59:20
Es que las pantallas son prácticamente iguales.
00:59:28
Aquí hay más capturas de pantalla porque,
00:59:35
como la aplicación está pensada para que sea fácilmente customizable,
00:59:39
tiene algunas cuestiones adicionales que son un poco extrañas,
00:59:44
tiene algunas cuestiones adicionales que son útiles para desarrolladores.
00:59:47
Tienes un modo de depuración que te permite en todo momento
00:59:52
tracear lo que estás haciendo usando una función del sistema,
00:59:55
es como el console lock del Firefox o lo que sea,
00:59:58
te permite deshabilitar las transiciones de página por temas de rendimiento,
01:00:02
te permite purgar las cachés,
01:00:06
o establecer tiempos de vida de cachés diferentes
01:00:08
para que cuando estéis desarrollando, por ejemplo, no uséis cachés y demás.
01:00:10
Además de eso, también, justo cuando salió la versión 2.2
01:00:13
con todo el tema de Curso Contents,
01:00:17
también yo añadiría la funcionalidad que te permite,
01:00:20
como podéis ver aquí, navegar por los contenidos del curso
01:00:24
y descargarlos.
01:00:28
Ahora mismo,
01:00:30
la aplicación,
01:00:34
las funcionalidades que tiene son las mismas que la aplicación oficial para móviles.
01:00:37
Y mi idea es mantenerla.
01:00:41
Tiene una carencia, que es que en modo offline
01:00:43
no tiene una descarga directa modo offline de todos los recursos,
01:00:46
pero vamos, estoy trabajando en ello,
01:00:51
de todas formas no es del todo importante,
01:00:53
la aproximación se podría hacer de varias formas,
01:00:55
pero por lo demás es una aplicación que es muy sencilla de adaptar por cualquiera.
01:00:57
Os voy a explicar un poco la tecnología con la que está hecha,
01:01:04
con lo que digo, está entrando una parte más tecnológica,
01:01:07
para que quien quiera aventurarse a trabajar sobre ella,
01:01:11
pues mira, se lance.
01:01:17
Yo he encantado la vida de que alguien lo use,
01:01:19
porque para eso lo he hecho, ¿no?
01:01:21
Os voy a enseñar
01:01:26
cómo funciona.
01:01:29
Lo primero de todo, indicaros que,
01:01:31
aunque si no os queréis complicar mucho la vida
01:01:33
y darle mucho la vuelta a la aplicación,
01:01:37
hay unas cosas que se pueden hacer de forma muy sencilla
01:01:40
y que os permitirían tener la aplicación funcionando en cuestión de horas.
01:01:44
Por ejemplo,
01:01:49
cambiar el nombre y descripciones, editar un fichero XML,
01:01:51
cambiar el icono y sustituir unos ficheros .icon
01:01:56
que están en un paquete zip,
01:01:59
cambiar la hoja de estilo y destocar el CSS,
01:02:03
y con eso ya la tendríais personalizada, por ejemplo,
01:02:06
visualmente o estéticamente con vuestra imagen.
01:02:09
No tiene un soporte multidioma nativo,
01:02:14
sino que las cadenas están puestas tal cual.
01:02:17
Para lo bueno y para lo malo es un clon de la aplicación oficial,
01:02:21
pero son pocas cadenas y están localizadas en los ficheros.
01:02:25
Es decir, se podrían cambiar directamente los ficheros.
01:02:27
Mi idea es usar Json para hacer ficheros idioma traducibles,
01:02:30
siendo como un recurso que se usa,
01:02:34
y eso es lo que voy a añadir.
01:02:37
Seguramente estos días que tengo vacaciones,
01:02:39
me pondría emocionante,
01:02:41
si me pongo a hacer aquí tal,
01:02:43
es como me lo paso bien, pues lo hago.
01:02:45
Entonces,
01:02:47
seguramente le añada todo el tema de la configuración de idioma,
01:02:49
que es lo que más a la gente le interesaba inicialmente.
01:02:53
¿Vale?
01:02:55
Entonces, solo con esto,
01:02:57
ya podríais tener la aplicación funcionando para esos tres,
01:03:00
para iPhone, para Android y para BlackBerry.
01:03:04
Y ahora me diréis,
01:03:07
¿pero cómo yo genero una aplicación nativa con Connecto?
01:03:09
Porque esto es código HTML y CSS.
01:03:12
Bueno, pues,
01:03:14
hay una empresa que se llama PhoneGap,
01:03:16
que la han hecho muy bien,
01:03:18
porque en pocos meses les compró Adobe,
01:03:20
y esta empresa,
01:03:23
lo que te permite
01:03:25
es, mediante un servicio
01:03:27
online,
01:03:30
subir una aplicación en JavaScript, CSS, HTML
01:03:34
y automáticamente te genera los binarios
01:03:38
para Android,
01:03:40
para iPhone y para BlackBerry.
01:03:42
Es una máquina,
01:03:47
es un servicio online
01:03:49
y es una pasada,
01:03:51
porque yo lo que hago es que tengo el código en GitHub,
01:03:52
que es un repositorio de código.
01:03:55
Si tú aquí le dices cuál es tu
01:03:57
enlace de GitHub,
01:03:59
él automáticamente
01:04:01
se descarga de GitHub el código
01:04:03
y te rehace
01:04:05
la aplicación.
01:04:07
Te permite además añadir los certificados
01:04:10
para que la firmes y la distribuyas.
01:04:12
¿Vale?
01:04:15
Si no queréis usar esto,
01:04:17
siempre os podéis bajar los SDKs locales,
01:04:19
los SDKs de Android y de iPhone,
01:04:20
le instaláis un desarrollo de PhoneGap,
01:04:22
que es un plugin, pero eso es el local,
01:04:24
y compiláis nativamente.
01:04:26
Pero yo no lo haría,
01:04:28
porque si tienes un servicio online que es gratuito,
01:04:30
para aplicaciones open source,
01:04:32
si son cerradas es de pago, pero es barato.
01:04:34
Aquí tenéis las tarifas.
01:04:36
Oye, pues encantado de la vida.
01:04:39
¿Vale?
01:04:42
Para que os hagáis una idea,
01:04:45
yo la aplicación la he hecho en unas 40 o 60 horas.
01:04:47
El clon.
01:04:49
Ojo, cuento con ventaja.
01:04:51
¿Vale?
01:04:53
Mi ventaja es que llevo trabajando con Moodle desde 2003,
01:04:55
con los web service había trabajado ya muchísimo,
01:04:57
y me los sé de memoria,
01:04:59
o sea que no hay fallo ni error,
01:05:01
o sea, no me detengo en error o fallo,
01:05:03
porque lo conozco toda la herramienta,
01:05:05
y HTML5, CSS3 y tal, tal,
01:05:07
también he trabajado desde ya hace un año,
01:05:09
aproximadamente.
01:05:11
Entonces son todas tecnologías que yo conocía muy bien,
01:05:13
que tenía muy depuradas,
01:05:15
y lo que hice fue trabajo.
01:05:16
Trabajo como a tiro hecho, por decirlo de alguna forma.
01:05:18
¿Vale?
01:05:20
Prácticamente no me encontré.
01:05:22
Si hubiese sido más horas no habría tenido tiempo,
01:05:24
pero el tiempo libre es muy limitado,
01:05:26
y en una semana hay poco más.
01:05:28
¿Vale?
01:05:30
Entonces,
01:05:32
el mantenimiento de esta aplicación,
01:05:37
ya que tengo aquí a Jordi,
01:05:39
le voy a decir,
01:05:43
voy a proponer que lo mantenga CVA,
01:05:44
Consulting,
01:05:46
mantenimiento,
01:05:48
que lo sponsorice bajo horas de la empresa,
01:05:50
y aquí no habrá ningún problema,
01:05:52
porque ya lo hemos comentado.
01:05:54
Entonces, seguramente esta aplicación
01:05:56
la mantendré en horas de la empresa,
01:05:58
¿vale?
01:06:00
Como una contribución a Moodle,
01:06:02
por parte de nuestros partners,
01:06:04
o sea que de alguna forma tendrá recorrido,
01:06:06
¿vale?
01:06:08
Tendrá ciertas garantías,
01:06:10
es decir que no se va a quedar ahí en el tintero.
01:06:12
Visto que es muy sencillo
01:06:14
compilar aplicaciones nativos y demás,
01:06:16
os voy a enseñar el código,
01:06:18
a grandes rasgos,
01:06:20
un poco para que veáis
01:06:22
cómo está hecha la aplicación,
01:06:24
y veáis que es muy sencillo.
01:06:26
¿Vale?
01:06:28
Bueno, esto lo he hecho para Moodle,
01:06:34
pero esta tecnología,
01:06:36
el PhoneApps se puede usar para cualquier cosa,
01:06:38
es decir, si queréis hacer una aplicación
01:06:40
para móviles para la universidad,
01:06:42
podéis hacerlo,
01:06:44
es muy sencillo de hacer.
01:06:46
Por eso la he comprado Adobe también,
01:06:48
hay que entender las cosas, ¿no?
01:06:50
Porque han visto yo un filo
01:06:52
y han dicho, joder, esto es una maravilla.
01:06:54
Entonces, esta es mi cuenta de GeekCat,
01:06:57
aquí tenéis todas las contribuciones
01:06:59
que he hecho
01:07:01
para proyectos Open Source
01:07:03
que mantengo,
01:07:05
que son propios míos,
01:07:07
¿vale?
01:07:09
Algunos a lo mejor lo conocéis.
01:07:11
Este, que a lo mejor os suena poco,
01:07:12
algo, configurable repos,
01:07:15
¿alguien lo usa? ¿alguien lo conoce?
01:07:17
Éxito total, ¿no?
01:07:19
Bueno, pues es el quinto plugin más descargado de Moodle,
01:07:21
¿vale? para que os hagáis una idea,
01:07:23
porque es una herramienta de creación
01:07:25
de informes personalizados en Moodle.
01:07:27
¿Vale?
01:07:29
Los anglosajones lo usan más que aquí,
01:07:31
no sé por qué,
01:07:33
si lo he promocionado poco o lo que sea.
01:07:35
¿Vale?
01:07:37
De hecho, en el foro de contrib hay un foro propio
01:07:38
para este plugin.
01:07:41
Entonces, lo mantengo,
01:07:43
veréis que hay bastante actividad.
01:07:45
Y, bueno, los demás,
01:07:47
a lo mejor os suena alguno,
01:07:49
pero bueno.
01:07:51
Este es el GitHub.
01:07:53
Y, bueno,
01:07:59
os voy a enseñar un poco
01:08:01
cómo es la estructura de una página.
01:08:03
Hecha con PhoneGap y JQuery Mobile
01:08:04
para que os hagáis una idea.
01:08:07
Vamos a hablar al principio
01:08:10
de la página de inicio,
01:08:12
que es la página,
01:08:14
esta se llama My Site.
01:08:16
¿Vale?
01:08:18
Se ve bien,
01:08:20
no hay problemas de indentación.
01:08:22
Como veis es HTML estándar.
01:08:25
¿Vale?
01:08:28
Y, bueno,
01:08:30
como veis es HTML estándar.
01:08:31
¿Vale?
01:08:35
Aquí se incluye una serie
01:08:37
de bibliotecas Javascript,
01:08:39
que básicamente es
01:08:41
el PhoneGap, el JQuery,
01:08:43
el JQuery Mobile
01:08:45
y algunas que yo uso como herramientas auxiliares,
01:08:47
que es un poco eso de
01:08:49
xml, ajson, kifeyo,
01:08:51
una herramienta de MD5
01:08:53
y demás.
01:08:55
Entonces, luego,
01:08:57
el contenido de la página
01:08:59
se muestra,
01:09:02
se hace utilizando
01:09:04
código HTML
01:09:06
de JQuery Mobile.
01:09:08
Esto que veis aquí,
01:09:10
que os sonará raro,
01:09:12
que se llama data role,
01:09:14
es una cosa de HTML5,
01:09:16
que es una especie de atributos
01:09:18
que son como atributos personalizados
01:09:20
que tú puedes utilizar
01:09:22
para luego formatear
01:09:24
código sin romper el
01:09:26
xhtml estricto.
01:09:28
Y JQuery Mobile se basa en eso
01:09:29
para definir una página.
01:09:31
Una página de JQuery Mobile
01:09:33
se compone de
01:09:35
una capa
01:09:37
con este elemento
01:09:39
que se llama page,
01:09:40
la parte central se llama content
01:09:42
y el pie
01:09:44
se llama
01:09:46
como lo veis aquí.
01:09:48
Entonces,
01:09:50
la anatomía de una página
01:09:51
de este estilo
01:09:52
siempre es muy similar.
01:09:53
Tiene una cabecera,
01:09:55
tiene un contenido
01:09:57
y el pie opcionales.
01:09:58
Entonces,
01:10:00
el pie,
01:10:01
si os fijáis,
01:10:02
es muy sencillo de definir.
01:10:03
Pie
01:10:05
y luego
01:10:06
tú pones enlaces
01:10:07
y los enlaces automáticamente
01:10:08
JQuery Mobile
01:10:09
te los convierte
01:10:10
en botones de móvil
01:10:11
y te añade los efectos.
01:10:13
Entonces,
01:10:15
tú haces HTML estándar
01:10:16
y por debajo
01:10:18
todo lo auxiliar
01:10:19
te lo va transformando
01:10:20
en algo que se ve para móviles
01:10:21
de una forma muy interesante.
01:10:22
¿Vale?
01:10:24
Entonces,
01:10:25
esa página
01:10:26
particularmente
01:10:28
tiene código muy feo
01:10:29
porque no conseguí hacerlo
01:10:30
de otra forma,
01:10:31
pero bueno,
01:10:32
por un bug de JQuery Mobile,
01:10:33
pero básicamente
01:10:34
esta página
01:10:35
es esta de aquí.
01:10:36
Esta es la página
01:10:45
que saca
01:10:46
estas cuatro cabeceras
01:10:47
y ahora os voy a enseñar
01:10:48
por ejemplo
01:10:49
la página de mis cursos.
01:10:50
¿Vale?
01:10:51
Para que veáis
01:10:52
lo sencillo que es utilizarlo.
01:10:53
La persona participando.
01:10:59
Si os fijáis,
01:11:03
este es el código
01:11:06
más un Javascript
01:11:07
que se utiliza
01:11:08
para conseguir
01:11:09
la página
01:11:10
que te saca
01:11:11
por web service
01:11:12
el listado de tus cursos
01:11:13
y te los muestra.
01:11:14
Anatomía de la página.
01:11:15
Página,
01:11:17
cabecera,
01:11:19
contenido
01:11:20
y pie.
01:11:21
Bueno,
01:11:22
esta página
01:11:23
no tiene pie,
01:11:24
como veis.
01:11:25
Cabecera.
01:11:26
Veis que la cabecera
01:11:27
básicamente es un H1
01:11:28
y un enlace
01:11:31
que tiene
01:11:32
una indicación
01:11:33
de que el icono
01:11:34
es un icono
01:11:35
de volver atrás.
01:11:36
Con este etiquetado
01:11:38
automáticamente
01:11:39
la aplicación
01:11:40
te saca
01:11:41
este aspecto
01:11:42
de página.
01:11:43
Veis que es
01:11:44
etiquetado mínimo
01:11:45
y sin complicarte
01:11:46
en estilos,
01:11:47
ni historias,
01:11:48
ni demás.
01:11:49
Entonces,
01:11:50
la parte central
01:11:51
veis que es un ul,
01:11:52
que esto es una lista
01:11:53
en HTML
01:11:54
que inicialmente
01:11:55
esta la hacía.
01:11:56
¿Por qué?
01:11:57
Porque yo,
01:11:58
por Javascript,
01:11:59
cargo
01:12:00
dinámicamente
01:12:01
y cargo la página.
01:12:02
Os voy a enseñar
01:12:03
el código Javascript
01:12:04
que veréis
01:12:05
que es mínimo.
01:12:06
Tened en cuenta
01:12:07
que como yo esto lo he diseñado
01:12:08
como un framework
01:12:09
para que sea muy fácilmente
01:12:10
ampliable,
01:12:11
las llamadas
01:12:12
a web services
01:12:13
se hacen con una línea
01:12:14
de código
01:12:15
y recibís el retorno
01:12:16
de todos los datos,
01:12:17
la gestión de errores
01:12:18
y todo eso ya me encargo
01:12:19
y toda la parte fea
01:12:20
ya está hecha.
01:12:21
Es decir,
01:12:22
si queréis llamar un web service
01:12:23
es una línea de código.
01:12:24
Es una función
01:12:25
que maneja la respuesta.
01:12:26
La respuesta viene en Json.
01:12:27
No hay XML,
01:12:28
es Json.
01:12:29
Está todo convertido.
01:12:30
¿Vale?
01:12:31
Es como todo alto nivel
01:12:32
para que
01:12:33
sea muy fácilmente
01:12:34
customizable.
01:12:35
Entonces,
01:12:36
la página,
01:12:37
el código Javascript
01:12:38
notaréis que
01:12:39
lo ejecuto
01:12:40
al final de la página
01:12:41
y no en la cabecera.
01:12:42
¿Por qué?
01:12:43
Porque tal y como funciona
01:12:44
el framework
01:12:45
de JotaQuery Mobile,
01:12:46
esta parte de arriba
01:12:47
solo se carga una vez,
01:12:48
cuando se carga
01:12:49
la página de inicio,
01:12:50
cuando se carga
01:12:51
la página de inicio
01:12:52
para las sucesivas páginas
01:12:53
solo se carga
01:12:54
lo que es el DOM
01:12:55
de la parte del body,
01:12:56
o sea,
01:12:57
la parte central.
01:12:58
Por lo tanto,
01:12:59
este código Javascript
01:13:00
no se ejecutará
01:13:01
de nuevo,
01:13:02
sino que solo se ejecuta
01:13:03
lo que está
01:13:04
en el body.
01:13:05
¿Vale?
01:13:06
Entonces,
01:13:07
fijaros,
01:13:08
ese es el código
01:13:09
que te saca
01:13:10
el listado de cursos
01:13:11
para un participante
01:13:12
y te monta
01:13:13
la lista.
01:13:14
Aquí es poco código.
01:13:15
¿Vale?
01:13:16
Entonces,
01:13:17
el código Javascript
01:13:18
no se ejecutará
01:13:19
de nuevo,
01:13:20
sino que
01:13:21
también yo
01:13:23
me manejo muy bien
01:13:24
con JotaQuery.
01:13:25
Ese es otro truco.
01:13:26
Si no conoces
01:13:27
JotaQuery,
01:13:28
pues tardas más.
01:13:29
Pero casi todo el mundo
01:13:30
conoce ya JotaQuery.
01:13:31
Es como un estándar
01:13:32
de Javascript.
01:13:33
Entonces,
01:13:34
si os fijáis,
01:13:35
bueno,
01:13:38
esto es una encapsulación
01:13:39
por temas
01:13:40
de contexto.
01:13:41
Esto está en el Javascript.
01:13:42
Yo lo que hago
01:13:45
es que cuando detecto
01:13:46
que la página
01:13:47
de participantes
01:13:48
se está mostrando,
01:13:49
Live
01:13:51
es una función
01:13:52
de JotaQuery
01:13:53
que te permite
01:13:54
hacer un bind
01:13:55
de eventos,
01:13:56
un vincular eventos,
01:13:57
y este es un evento
01:13:58
que lanza
01:13:59
JotaQuery Mobile,
01:14:00
cuando la página
01:14:01
ya se está preparando
01:14:02
para renderizarse,
01:14:03
¿qué hago?
01:14:04
Llamo
01:14:07
a una función
01:14:08
que se llama
01:14:09
SetupPage,
01:14:10
que hace cuestiones
01:14:11
de inicializar
01:14:12
el registro,
01:14:13
login
01:14:14
y cosas de más.
01:14:15
Bueno,
01:14:16
interesante.
01:14:17
Logueo información
01:14:18
Esto,
01:14:20
si tenéis habilitado
01:14:21
lo que os he enseñado
01:14:22
antes de depuración,
01:14:23
saldría por pantalla
01:14:24
y
01:14:26
esta función
01:14:27
se ejecuta
01:14:28
posteriormente.
01:14:29
Obtengo
01:14:31
la lista
01:14:34
del sitio actual
01:14:35
y el usuario actual
01:14:37
que, como veis,
01:14:39
uso esto,
01:14:40
que esto es HTML5,
01:14:41
que es la base
01:14:42
de datos local
01:14:43
del browser.
01:14:45
Sabéis que HTML5
01:14:46
incorpora un SQL
01:14:47
interno.
01:14:48
Entonces,
01:14:49
uso
01:14:50
como
01:14:52
casi todos los navegadores
01:14:53
del iPhone,
01:14:54
el iPad y
01:14:55
BlackBerry son WebKit,
01:14:56
ellos ya tienen implementado
01:14:58
lo que es el LocalStorage.
01:15:00
Entonces,
01:15:01
con el LocalStorage
01:15:02
me evito,
01:15:03
ya tengo un sistema
01:15:04
en base a KeyItems
01:15:06
de almacenamiento
01:15:07
y es
01:15:08
el almacenamiento físico,
01:15:09
donde almaceno todo.
01:15:10
Serializo la información
01:15:12
en JSON y la almaceno ahí.
01:15:13
Entonces,
01:15:14
tengo el usuario
01:15:15
y tu sitio actual,
01:15:17
porque la aplicación soporta
01:15:18
múltiples sitios de Moodle,
01:15:19
puedes estar en cinco sitios
01:15:20
de Moodle
01:15:21
y fijaros
01:15:23
la llamada
01:15:24
WebService.
01:15:25
Le pasas
01:15:26
el nombre
01:15:27
del WebService,
01:15:28
data,
01:15:29
son los parámetros
01:15:30
que requiere
01:15:31
el WebService,
01:15:32
que en este caso
01:15:33
es el UserId,
01:15:34
simplemente es un objeto
01:15:35
JSON,
01:15:36
bueno,
01:15:37
es un objeto
01:15:38
Javascript,
01:15:39
perdón,
01:15:40
y esta es la función
01:15:41
de callback.
01:15:42
Es decir,
01:15:43
cuando se ejecute
01:15:44
automáticamente
01:15:45
se ejecuta esta función
01:15:46
con los resultados
01:15:47
de WebService.
01:15:48
Esta función
01:15:49
MoodleWscall,
01:15:50
si veis el código,
01:15:51
hace toda la parte
01:15:53
de ponerte
01:15:54
el uploading,
01:15:55
el icono de espera,
01:15:56
gestionar errores,
01:15:58
todo lo feo.
01:15:59
¿No?
01:16:00
¿Para qué?
01:16:01
Para que tú,
01:16:02
simplemente,
01:16:03
cuando se ha ejecutado todo
01:16:04
en la función ListCourse,
01:16:05
recibes los cursos
01:16:06
en JSON ya,
01:16:07
porque ya me he encargado
01:16:09
yo del XML
01:16:10
y transformarlo a JSON
01:16:11
para que vosotros
01:16:12
no tengáis que hacer eso,
01:16:13
que estéis con 2.1.
01:16:14
Con 2.2
01:16:15
viene nativo el soporte
01:16:16
y tú lo único
01:16:17
que tienes que hacer es,
01:16:18
con tus conocimientos
01:16:19
de jQuery,
01:16:20
usas la función
01:16:21
each de jQuery,
01:16:22
que es una maravilla,
01:16:23
que es lo que te permite
01:16:24
recorrer los cursos
01:16:25
y, básicamente,
01:16:26
como veis,
01:16:27
lo único que hago es
01:16:28
elementos de la lista
01:16:29
y,
01:16:31
y, bueno,
01:16:33
y vinculo.
01:16:35
Eso está,
01:16:36
eso se podía haber hecho mejor,
01:16:37
me acabo de dar cuenta ahora,
01:16:38
¿eh?
01:16:39
Pero, bueno,
01:16:40
lo corregiré.
01:16:41
Es que la vinculación
01:16:43
la hago dentro del each,
01:16:44
lo podía haber hecho de otra forma,
01:16:45
¿vale?
01:16:46
Unir los eventos,
01:16:47
pero, bueno,
01:16:48
ya lo corrijo.
01:16:49
Es que, de hecho,
01:16:50
está bien hecho en otra página,
01:16:51
no sé por qué se ha quedado así.
01:16:52
Bueno, en cualquier caso,
01:16:53
lo que hago es que
01:16:54
vinculo
01:16:55
la acción
01:16:56
de clicar un enlace
01:16:57
con otra página,
01:16:58
¿vale?
01:17:00
Entonces,
01:17:01
lo que estoy diciendo
01:17:03
es que cuando,
01:17:04
una vez que se ha sacado
01:17:05
el listado de usuarios,
01:17:06
cuando alguien,
01:17:08
esta es la página
01:17:09
del listado de usuarios,
01:17:10
que antes,
01:17:11
no, ¿estos son cursos?
01:17:12
Sí,
01:17:14
listo cursos,
01:17:15
y lo que digo es
01:17:16
que cuando alguien
01:17:17
haga clic
01:17:18
en un usuario,
01:17:19
como pasar parámetros
01:17:20
entre páginas
01:17:21
javascript
01:17:22
es un poco
01:17:23
rollo,
01:17:24
porque lo tendrías que hacer
01:17:25
con las cedillas,
01:17:26
como tal o tal,
01:17:27
yo lo que hago
01:17:28
es que uso
01:17:29
el local storage,
01:17:30
¿vale?
01:17:32
Para fijar
01:17:33
cuál es el curso actual
01:17:34
que se está viendo.
01:17:35
Es como una cookie de sesión.
01:17:36
De hecho,
01:17:37
esto se podía haber hecho
01:17:38
en sesión storage,
01:17:39
tampoco podemos
01:17:41
que lo he hecho en 40 horas,
01:17:42
leñes.
01:17:43
Entonces,
01:17:44
guardo el curso actual
01:17:45
de tal forma
01:17:46
que cuando alguien
01:17:47
pulse
01:17:48
y vaya a la página
01:17:49
users,
01:17:50
en la página users,
01:17:51
yo me cojo
01:17:52
del datastore,
01:17:53
de la base de datos,
01:17:54
cojo la página actual
01:17:55
que me han solicitado,
01:17:56
el curso actual
01:17:57
que me han solicitado
01:17:58
y llamo al webservice
01:17:59
que tiene los usuarios.
01:18:00
¿Vale?
01:18:01
Que para que os hagáis
01:18:02
una idea,
01:18:03
este de aquí,
01:18:05
y como veis,
01:18:09
veis aquí ya está bien hecho
01:18:10
porque lo meto
01:18:11
fuera del itch,
01:18:12
la vinculación
01:18:13
y lo hago por
01:18:14
aquí está bien hecho.
01:18:16
Entonces,
01:18:17
si os fijáis,
01:18:18
la página de listar
01:18:19
los usuarios de un curso
01:18:20
viene a ser lo mismo.
01:18:21
Cojo
01:18:22
del sistema de almacenamiento
01:18:25
el curso actual,
01:18:27
genero
01:18:29
una estructura
01:18:31
de webservice
01:18:32
que es
01:18:33
los parámetros
01:18:34
que especifica
01:18:35
Moodle.
01:18:36
Estos parámetros
01:18:37
no me los estoy inventando,
01:18:38
son los propios de Moodle.
01:18:39
Esto si hacéis una salida
01:18:40
del soap
01:18:41
o del
01:18:42
Moodle
01:18:43
son los que pide,
01:18:44
llamo al webservice
01:18:45
y le digo
01:18:46
el callback,
01:18:47
la llamada de vuelta
01:18:48
es esta.
01:18:49
Aquí recibo
01:18:50
un listado de usuarios
01:18:51
y lo único que debo hacer es
01:18:52
con la información
01:18:57
que he recibido
01:18:58
ir componiendo por pantalla.
01:18:59
Como veis,
01:19:01
con muy pocas líneas de código
01:19:02
consigues una funcionalidad
01:19:03
muy interesante.
01:19:04
Claro,
01:19:05
que por detrás está
01:19:06
toda la parte fea
01:19:07
que es el
01:19:08
esto que llamé
01:19:11
CommonJS
01:19:12
y que no me gusta el nombre
01:19:13
pero bueno,
01:19:14
que es todo el código
01:19:15
de toda esta gestión.
01:19:16
Por ejemplo,
01:19:19
toda la llamada
01:19:20
de
01:19:21
MoodleWS
01:19:22
webservice call
01:19:23
pues gestiona todo esto
01:19:24
es lo que os digo.
01:19:25
Yo aquí ya gestiono errores,
01:19:26
gestiono errores
01:19:28
de conectividad,
01:19:29
gestiono
01:19:30
todo el parseado
01:19:31
de XML a JSON,
01:19:32
hago una cache intermedia
01:19:35
y demás
01:19:36
porque si os fijáis además
01:19:37
el sistema es tan avanzado
01:19:39
que si tú llamas aquí
01:19:43
a un webservice
01:19:49
automáticamente
01:19:51
la salida de ese webservice
01:19:54
queda cacheado
01:19:55
para que si alguien
01:19:56
lo vuelve a pedir
01:19:57
no se le hace la llamada
01:19:58
al webservice
01:19:59
hasta que expira la cache.
01:20:00
Quiero decir,
01:20:02
también yo gestiono la cache.
01:20:03
O sea,
01:20:04
también es el framework
01:20:05
que hace todo el tema de caching.
01:20:06
Es decir,
01:20:07
si alguien vuelve a pedir esta página
01:20:08
no se le hace una nueva petición
01:20:09
al webservice
01:20:10
sino que se sirve por cache.
01:20:11
¿Vale?
01:20:12
Y la cache tiene un tipo de expiración
01:20:13
que definís vosotros.
01:20:14
Como hay páginas
01:20:16
donde no interesa
01:20:17
que haya cache,
01:20:18
por ejemplo,
01:20:19
esta,
01:20:29
tú puedes pasarle un flag
01:20:30
y le dices
01:20:31
no cachea uno.
01:20:32
Eso significa
01:20:33
que a este webservice
01:20:34
que es un webservice
01:20:35
de tipo POST
01:20:36
o un webservice
01:20:37
de tipo GET
01:20:38
no me lo caches
01:20:39
y el resto sí.
01:20:40
Entonces,
01:20:42
os adaptaréis totalmente
01:20:43
y la aplicación
01:20:45
lo hace todo por vosotros.
01:20:46
Hace cache,
01:20:47
hace gestión de errores,
01:20:48
hará traducción de idiomas
01:20:50
y demás.
01:20:51
Entonces vosotros
01:20:52
lo único que tenéis que hacer
01:20:53
es añadir botones
01:20:54
o que sea
01:20:55
el estilo.
01:20:56
Añadir un botón
01:20:58
puede ser un contenido estático,
01:20:59
puede ser una nota de aviso
01:21:00
o puede ser una llamada
01:21:02
a un webservice propio
01:21:03
de Moodle que os habéis hecho
01:21:04
o una llamada
01:21:05
a un webservice de Moodle
01:21:06
ya existente y demás.
01:21:07
Como esto está desarrollado
01:21:09
para funcionar
01:21:10
sobre webservice de Moodle,
01:21:11
si queréis añadir,
01:21:12
por ejemplo,
01:21:13
un webservice
01:21:14
que liste datos
01:21:15
de vuestro internet
01:21:16
dentro de Moodle
01:21:17
o dentro de donde sea,
01:21:18
si lo hacéis siguiendo
01:21:19
el formato de Moodle,
01:21:20
automáticamente podéis usar
01:21:21
el framework
01:21:22
para obtener datos
01:21:24
y ganar todo el tema
01:21:25
del caching,
01:21:26
gestión de errores
01:21:27
y demás,
01:21:28
depuración y demás.
01:21:29
Porque si tú activas
01:21:30
la depuración de esto,
01:21:31
la depuración
01:21:32
es súper exhaustiva
01:21:33
y te dice
01:21:34
en todo momento
01:21:35
lo que está.
01:21:36
Estoy consultando
01:21:37
un webservice
01:21:38
desde caché,
01:21:39
la caché ha expirado,
01:21:40
la reinicio,
01:21:41
tal, tal, tal, tal, tal.
01:21:42
Hay todo un framework
01:21:43
por detrás
01:21:44
que te permite
01:21:45
de alguna forma tal.
01:21:46
Incluso la información
01:21:47
que se guarda
01:21:48
al data store,
01:21:49
hay otros sistemas
01:21:50
de subcaché
01:21:51
por debajo también
01:21:52
y de serialización
01:21:53
que te permite
01:21:54
tenerlo todo
01:21:55
muy organizado.
01:21:56
¿Vale?
01:21:57
O sea,
01:21:58
la aplicación
01:21:59
tiene unas,
01:22:00
lo que digo,
01:22:01
unas 40 horas
01:22:02
de trabajo
01:22:03
de pensar son más.
01:22:04
Pero esas no las cuento
01:22:05
porque yo pienso
01:22:06
mientras estoy paseando
01:22:07
con el carrito
01:22:08
a mi hija,
01:22:09
se echa la siesta,
01:22:10
cuando yo,
01:22:11
veis, es un friki,
01:22:12
me pongo a pensar
01:22:13
en estas cosas,
01:22:14
en cómo hacer análisis
01:22:15
y aplicaciones
01:22:16
y sus sistemas
01:22:17
interesantes,
01:22:18
pues en eso estoy.
01:22:19
Entonces,
01:22:21
nada,
01:22:22
hay documentación
01:22:24
en la página de la wiki
01:22:26
está documentado
01:22:27
un primer nivel
01:22:28
cómo podríais
01:22:29
trabajar,
01:22:34
construir y demás.
01:22:35
Bueno,
01:22:37
todavía no me han validado
01:22:38
el plugin,
01:22:39
no me lo han activado
01:22:40
pero habrá un foro
01:22:41
para el plugin,
01:22:42
castellano-inglés
01:22:43
diferente.
01:22:44
Y ahí está.
01:22:46
Para quien le sea de interés,
01:22:47
yo creo que es una buena
01:22:48
aproximación
01:22:49
si no os queréis
01:22:50
dejar los huesos
01:22:51
haciendo aplicaciones
01:22:52
nativas para cada tal.
01:22:53
A ver,
01:22:54
no es todo tan bonito
01:22:55
como parece
01:22:56
porque luego
01:22:57
el framework
01:22:58
que hay por debajo,
01:22:59
PhoneGap
01:23:00
y por lo demás,
01:23:01
tiene ciertas limitaciones.
01:23:02
Os voy a enseñar
01:23:03
el API que tiene PhoneGap
01:23:04
y terminamos con eso.
01:23:05
Para que veáis un poco
01:23:15
desde Javascript
01:23:16
a qué funciones
01:23:17
podéis acceder.
01:23:18
Bueno,
01:23:19
os voy a enseñar
01:23:20
por ejemplo
01:23:21
cómo se hace
01:23:22
la captura de una foto
01:23:23
para que veáis
01:23:24
cómo se usa el PhoneGap.
01:23:25
Como veis aquí
01:23:34
hay más código
01:23:35
porque ya nos metemos
01:23:36
en PhoneGap.
01:23:37
Pero es muy sencillo.
01:23:38
Vale, aquí está.
01:23:49
Por ejemplo,
01:23:50
lo que hace PhoneGap
01:23:51
es que a nivel
01:23:52
de la estructura Javascript,
01:23:53
no me acuerdo cómo se llama
01:23:54
el espacio de nombres
01:23:55
Javascript,
01:23:56
no sé exactamente
01:23:57
Javascript,
01:23:58
no sé cómo es el nombre,
01:23:59
a nivel del objeto
01:24:00
Navigation
01:24:01
es
01:24:02
el objeto
01:24:03
que se llama
01:24:04
Javascript
01:24:05
y es el objeto
01:24:06
que se llama
01:24:07
Javascript
01:24:08
y es el objeto
01:24:09
que se llama
01:24:10
Javascript
01:24:11
y es el objeto
01:24:12
que se llama
01:24:13
Javascript
01:24:14
y es el objeto
01:24:15
que se llama
01:24:16
Navigation
01:24:17
él mete
01:24:18
nuevas funcionalidades adicionales.
01:24:19
Vale, entonces
01:24:21
Si queréis
01:24:23
tomar una foto
01:24:24
es tan sencillo
01:24:25
la llamada
01:24:26
como esto.
01:24:27
Sio la cámara
01:24:28
get picture
01:24:29
le ponéis
01:24:30
las funciones
01:24:31
de callback
01:24:32
en caso de éxito o fracaso
01:24:33
y le paséis los settings.
01:24:34
Cuando
01:24:37
PhoneGap
01:24:38
PhoneGap automáticamente
01:24:39
te abre la cámara
01:24:40
del móvil
01:24:41
¿Haces una foto?
01:24:42
Y cuando se echó
01:24:43
la foto
01:24:44
se te llama
01:24:45
con un icono aquí definido
01:24:46
y te pasa como parámetro
01:24:49
una URI
01:24:51
que es la imagen
01:24:52
de la foto
01:24:53
en base 64 codificada.
01:24:54
Tú puedes decirle
01:24:56
que te las pase
01:24:57
en otros formatos también.
01:24:58
Y tú ya con eso
01:25:00
haces lo que quieras.
01:25:02
Yo en este caso
01:25:03
fijaos lo que hago.
01:25:04
Por CSS la cargo
01:25:05
de fondo
01:25:06
y ya está
01:25:07
y no hago nada más.
01:25:08
¿Veis?
01:25:09
El API es muy sencilla
01:25:10
de manejar
01:25:11
y es muy potente a la vez.
01:25:12
Es muy interesante.
01:25:13
Por ejemplo
01:25:14
añadir un contacto
01:25:15
básicamente
01:25:16
lo que hago es
01:25:17
este es el código
01:25:18
y digo
01:25:20
créame un objeto
01:25:23
de tipo
01:25:24
contacto
01:25:25
le meto los
01:25:27
los valores
01:25:28
le meto campos adicionales
01:25:32
y le pongo
01:25:35
el nombre
01:25:36
y le pongo
01:25:37
el nombre
01:25:38
y le pongo
01:25:39
el nombre
01:25:40
y le pongo
01:25:41
el nombre
01:25:42
y le pongo
01:25:43
y
01:25:45
lo guardo
01:25:46
y esto es la función
01:25:48
de éxito
01:25:49
y esta es la función
01:25:50
de error.
01:25:51
Que directamente
01:25:52
como era poco código
01:25:53
lo puse aquí
01:25:54
como funciones declaradas.
01:25:55
Y ya está.
01:25:58
Y así accedéis al API
01:25:59
del teléfono.
01:26:00
Es muy potente.
01:26:01
Entonces este es el API
01:26:02
de PhoneGap.
01:26:03
Entonces tenéis
01:26:08
acceso al acelerómetro
01:26:09
tenéis acceso
01:26:11
a la cámara
01:26:12
tenéis acceso
01:26:13
a la captura de streaming
01:26:14
de vídeo y de audio
01:26:15
compás
01:26:17
que es lo que es la brújula
01:26:18
para saber dónde apunta
01:26:19
el navegador
01:26:20
tenéis acceso
01:26:21
para saber si el móvil
01:26:22
está conectado o no
01:26:23
esto lo uso yo
01:26:24
por ejemplo
01:26:25
para detectar
01:26:26
si estamos online
01:26:27
y offline
01:26:28
porque yo por ejemplo
01:26:29
si estás trabajando
01:26:30
offline
01:26:31
y ha expirado la caché
01:26:32
aunque haya expirado
01:26:33
la caché
01:26:34
como estás offline
01:26:35
tiro de ella
01:26:36
para sacar datos
01:26:37
y tal
01:26:38
tienes el API
01:26:39
para contactos
01:26:40
información del dispositivo
01:26:41
eventos
01:26:42
por ejemplo
01:26:43
si alguien toca el menú
01:26:44
el botón de menú
01:26:45
del Android
01:26:46
puedes recibir un evento
01:26:47
tienes acceso
01:26:49
al sistema de archivos
01:26:50
del móvil
01:26:51
para guardar
01:26:53
el SD card
01:26:54
lo que quieras
01:26:55
geolocalización
01:26:56
media
01:26:57
que es
01:26:58
abrir un
01:27:00
reproductor de MP3
01:27:01
y todo eso
01:27:02
notificaciones
01:27:03
que eso es
01:27:04
lo de
01:27:05
sacar el típico
01:27:06
PIP
01:27:07
en la barra superior
01:27:08
de Android
01:27:09
o el típico
01:27:10
y almacenamiento
01:27:12
que esto
01:27:13
en realidad
01:27:14
es
01:27:15
la implementación
01:27:16
de
01:27:17
esto es para
01:27:18
dispositivos móviles
01:27:19
que no tienen navegadores
01:27:20
WebKit
01:27:21
implementa
01:27:22
la especificación
01:27:23
WWTC
01:27:24
de local storage
01:27:25
de almacenamiento local
01:27:26
de hecho
01:27:28
si os molan
01:27:29
las especificaciones
01:27:30
de WWTC
01:27:31
y miráis esto
01:27:32
veréis que
01:27:33
esta
01:27:34
es la especificación
01:27:35
del WWTC
01:27:36
de gestión de archivos
01:27:37
en local
01:27:38
de HTML5
01:27:39
y lo hace muy bien
01:27:41
porque han hecho el API
01:27:42
compatible
01:27:43
para cuando todos los navegadores
01:27:44
lo soporten
01:27:45
ir quitándose ellos cosas
01:27:46
y está muy bien
01:27:47
es un proyecto OpenSource
01:27:50
lo compró Adobe
01:27:51
y ahora mismo
01:27:52
está en el incubator
01:27:53
de Apache
01:27:54
de la fundación Apache
01:27:55
porque se va a gestionar
01:27:57
desde la fundación Apache
01:27:58
o sea que tiene cierto recorrido
01:27:59
he hecho una hora y media
01:28:03
exacta
01:28:04
y bueno
01:28:05
espero que haya sido útil
01:28:06
la presentación
01:28:07
y bueno
01:28:08
un poco
01:28:09
consideraciones
01:28:11
y demás
01:28:12
nada
01:28:13
haceros hincapié
01:28:14
en que
01:28:15
no penséis que la aplicación
01:28:17
para móviles
01:28:18
nativa
01:28:19
y el tema gráfico
01:28:20
son
01:28:21
se tienen que pelear
01:28:22
hay que buscar diferencias
01:28:23
entre ellos
01:28:24
son compatibles
01:28:25
y de hecho
01:28:26
su finalidad es diferente
01:28:27
y por otro lado
01:28:30
si queréis hacer algo
01:28:31
nativo
01:28:32
bueno
01:28:33
queréis hacer algo
01:28:34
a una aplicación para móviles
01:28:35
propia de vuestra universidad
01:28:36
sin que os supongo
01:28:38
una trabajera
01:28:39
de hacer una versión de Android
01:28:40
de hacer una versión iPhone
01:28:41
y de hacer una versión Blackberry
01:28:42
o lo que sea
01:28:43
pues tenéis esto
01:28:45
que es un framework
01:28:46
de más alto nivel
01:28:47
que ya está
01:28:48
lo suficientemente avanzado
01:28:49
para que se pueda trabajar
01:28:50
sobre él
01:28:51
y que procuraré mantener
01:28:52
en medio de lo posible
01:28:53
gracias a la empresa
01:28:54
y nada
01:28:57
animaros
01:28:58
que yo estaré por ahí
01:28:59
por los foros
01:29:00
si queréis
01:29:01
si tenéis cualquier duda
01:29:02
y consulta
01:29:03
ya os advierto
01:29:04
que el camino
01:29:05
es difícil
01:29:06
hasta que os habituéis
01:29:07
con las tecnologías
01:29:08
no con las herramientas
01:29:09
porque si no habéis
01:29:12
trabajado antes
01:29:13
con CSS
01:29:14
Javascript
01:29:15
HTML
01:29:16
a ya más cierto nivel
01:29:17
os vais a encontrar
01:29:18
en algunos caminos
01:29:19
que como no tengáis
01:29:20
cierto bagaje
01:29:21
os va a costar salir
01:29:22
pero para eso
01:29:23
hay que ir a los foros
01:29:24
y yo creo
01:29:25
que esto es el futuro
01:29:26
hay muchas aplicaciones
01:29:27
hechas con PhoneGap
01:29:28
la BBC
01:29:29
tiene una aplicación
01:29:30
de noticias
01:29:31
hecha con PhoneGap
01:29:32
hay muchos ejemplos
01:29:33
casos de uso
01:29:34
si buscáis información
01:29:35
en Google
01:29:36
veréis que es la aplicación
01:29:37
que casi todo el mundo
01:29:38
recorrerá
01:29:39
la combinación
01:29:40
PhoneGap
01:29:41
JQuery Mobile
01:29:42
es lo que casi todo el mundo
01:29:43
recomienda
01:29:44
hay ciertas
01:29:45
cuestiones
01:29:46
a tener en cuenta
01:29:47
sobre todo
01:29:48
como el modelo
01:29:49
de JQuery Mobile
01:29:50
manipula el DOM
01:29:51
lo que os he dicho
01:29:52
que la parte de la cabecera
01:29:53
solo se carga
01:29:54
en la primera ejecución
01:29:55
de la página
01:29:56
y no en el resto
01:29:57
que os pueden llevar a confusión
01:29:58
pero con un poquito
01:29:59
de prueba, error, ensayo
01:30:00
y demás
01:30:01
siendo unas cuantas horas
01:30:02
se pueden hacer cosas
01:30:03
según una cosa
01:30:04
así vais a tardar
01:30:05
la curva de aprendizaje
01:30:06
va a ser igual
01:30:07
bueno, muchísimo menor
01:30:08
que para
01:30:09
si os tenéis que poner
01:30:10
a hacer aplicaciones
01:30:11
para Android
01:30:12
o para iPhone
01:30:13
si ya venís de este mundo
01:30:14
y vais a tener
01:30:15
algo mantenible
01:30:16
en el futuro
01:30:17
que no se va a quedar estancado
01:30:18
la versión para móviles
01:30:19
1.0
01:30:20
que ahí se quedó
01:30:21
y se terminó
01:30:22
vale y nada
01:30:23
os animo a
01:30:24
que participéis en los foros
01:30:25
el plugin
01:30:26
como os dije
01:30:27
lo publiqué ayer
01:30:28
porque os quería
01:30:29
y no me lo han aprobado todavía
01:30:30
supongo que me lo aprobarán
01:30:31
porque ya me lo han dicho
01:30:32
nada
01:30:34
que sepáis que
01:30:35
que tuvo buena acogida
01:30:37
y bueno
01:30:42
si veis
01:30:43
los mensajes del foro
01:30:44
bueno este es
01:31:00
el público de Moodle
01:31:01
el propio Duyamas
01:31:02
dijo que
01:31:03
que esta era una buena forma
01:31:04
de
01:31:05
esta era la forma
01:31:06
en la que
01:31:07
esta es la forma
01:31:08
en la que va a tener
01:31:09
la aplicación para móviles
01:31:10
a futuro
01:31:11
o sea yo hablando
01:31:12
con gente de Moodle.org
01:31:13
con el Yorome
01:31:14
con
01:31:15
principalmente
01:31:16
me dijo
01:31:17
que ellos
01:31:18
la quieren hacer
01:31:19
en HTML5
01:31:20
pero que no lo ven
01:31:21
suficientemente maduro
01:31:22
todavía
01:31:23
por las cosas
01:31:24
de que hay que usar
01:31:25
frameworks
01:31:26
pero de aquí a dos años
01:31:27
seguramente
01:31:28
esté hecho en HTML5
01:31:29
dos o tres años
01:31:30
mientras tanto
01:31:31
si no que
01:31:32
os queréis aventurar
01:31:33
yo en el momento
01:31:34
que se haga para
01:31:35
HTML5
01:31:36
discontinúo el proyecto
01:31:37
porque ya no tendrá sentido
01:31:38
la idea es esta
01:31:39
así que eso es todo
01:31:42
gracias por asistir
01:31:43
bueno en el curso
01:31:56
perdonad
01:31:57
están todos los materiales
01:31:58
colgados
01:31:59
está todo
01:32:01
visible
01:32:02
los simuladores
01:32:03
son accesibles
01:32:04
y
01:32:06
el pdf está colgado
01:32:08
pondré una referencia
01:32:12
al proyecto este
01:32:13
y ya está
01:32:14
- Valoración:
- Eres el primero. Inicia sesión para valorar el vídeo.
- 1
- 2
- 3
- 4
- 5
- Idioma/s:
- Autor/es:
- Moodle Moot 2011
- Subido por:
- EducaMadrid
- Licencia:
- Reconocimiento - No comercial - Sin obra derivada
- Visualizaciones:
- 1308
- Fecha:
- 5 de enero de 2012 - 11:27
- Visibilidad:
- Público
- Enlace Relacionado:
- Moodle Moot 2011
- Duración:
- 1h′ 32′ 27″
- Relación de aspecto:
- 4:3 Hasta 2009 fue el estándar utilizado en la televisión PAL; muchas pantallas de ordenador y televisores usan este estándar, erróneamente llamado cuadrado, cuando en la realidad es rectangular o wide.
- Resolución:
- 640x480 píxeles
- Tamaño:
- 642.34 MBytes