Saltar navegación

Activa JavaScript para disfrutar de los vídeos de la Mediateca.

Moodle y dispositivos móviles

Ajuste de pantalla

El ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:

Subido el 5 de enero de 2012 por EducaMadrid

1308 visualizaciones

Moodle y dispositivos móviles

Descargar la transcripción

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
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, 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
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
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
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
la implementación 01:27:16
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
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
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:
  • 1
  • 2
  • 3
  • 4
  • 5
Eres el primero. Inicia sesión para valorar el vídeo.
Idioma/s:
es
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

Del mismo autor…

Ver más del mismo autor


EducaMadrid, Plataforma Educativa de la Comunidad de Madrid

Plataforma Educativa EducaMadrid