Este documento describe cómo insertar un video en una aplicación Android usando VideoView. Primero se crea un nuevo proyecto y una carpeta raw para almacenar el video. Luego se agrega un VideoView al layout de la actividad principal y se reproduce el video al iniciar la actividad mediante VideoView.start(). Finalmente, se agregan controles de medios para permitir al usuario controlar la reproducción del video.
Built for performance: the UIElements Renderer – Unite Copenhagen 2019Unity Technologies
In this technical talk, we will describe the science behind the UIElements rendering system, built from the ground up for retained-mode UI. It uses every CPU/GPU trick in the book to render thousands of different elements onscreen in a fraction of a millisecond, all on one thread. This powerful UI performance and optimization tool also supports complex features like clipping and vector graphics, even on low-end devices.
Speaker: Wessam Bahnassi – Unity
Watch the session on YouTube: https://youtu.be/zeCdVmfGUN0
Built for performance: the UIElements Renderer – Unite Copenhagen 2019Unity Technologies
In this technical talk, we will describe the science behind the UIElements rendering system, built from the ground up for retained-mode UI. It uses every CPU/GPU trick in the book to render thousands of different elements onscreen in a fraction of a millisecond, all on one thread. This powerful UI performance and optimization tool also supports complex features like clipping and vector graphics, even on low-end devices.
Speaker: Wessam Bahnassi – Unity
Watch the session on YouTube: https://youtu.be/zeCdVmfGUN0
* SlideShare에서 특정 폰트로 쓰인 글자가 보이지 않는 경우가 있습니다. 다운로드 하셔서 PDF 리더로 보시는 것을 권해드립니다. -> 기존 폰트를 모두 나눔고딕으로 변경하였습니다.
OSS 포럼 개발 교육으로 진행한 Git, GitHub 강의 자료입니다.
(http://onoffmix.com/event/67081)
간단한 로또 번호 생성기 프로그램을 작성하면서 Git, GitHub에 대해 배웁니다.
1. Git과 Github
- 버전 관리?
- Git은 어쩌다 세상에 나왔나?
- Github?
2. Git 시작하기 - 실습
- 실습 준비 : Github, Goorm IDE 가입하기
- 리눅스 명령어와 친해지기
- Git 필수 개념 집고 넘어가기
- Step by Step Git 명령어 실습 (커밋, 브랜치, 원격 저장소 등)
- 옆자리 분과 Fork하고, Pull Request
3. Git과 Github 맛깔나게 활용하기
- Github의 협업 기능 살펴보기
- Github Page
- Gitbook
4. 있어보이는 Git 활용
- .git 디렉토리 살펴보기
- Git Branch 전략
- Commit Message 활용
Uma breve apresentação sobre este fantástico Sistema Gerenciador de Banco de Dados Objeto-Relacional.
Razões para adotá-lo, curiosidades e características.
Curso introdutório de ReactJS.
ReactJS é uma ferramente de desenvolvimento Web criada pelo Facebook.
No curso abordaremos uma abordagem introdutória ao assunto, explorando o básico para desenvolver um site somente com front-end
Material recopilado de internet y modifica para la imparticion de la materia de mantenimiento correctivo a jovenes de la especialidad en soporte de equipo.
* SlideShare에서 특정 폰트로 쓰인 글자가 보이지 않는 경우가 있습니다. 다운로드 하셔서 PDF 리더로 보시는 것을 권해드립니다. -> 기존 폰트를 모두 나눔고딕으로 변경하였습니다.
OSS 포럼 개발 교육으로 진행한 Git, GitHub 강의 자료입니다.
(http://onoffmix.com/event/67081)
간단한 로또 번호 생성기 프로그램을 작성하면서 Git, GitHub에 대해 배웁니다.
1. Git과 Github
- 버전 관리?
- Git은 어쩌다 세상에 나왔나?
- Github?
2. Git 시작하기 - 실습
- 실습 준비 : Github, Goorm IDE 가입하기
- 리눅스 명령어와 친해지기
- Git 필수 개념 집고 넘어가기
- Step by Step Git 명령어 실습 (커밋, 브랜치, 원격 저장소 등)
- 옆자리 분과 Fork하고, Pull Request
3. Git과 Github 맛깔나게 활용하기
- Github의 협업 기능 살펴보기
- Github Page
- Gitbook
4. 있어보이는 Git 활용
- .git 디렉토리 살펴보기
- Git Branch 전략
- Commit Message 활용
Uma breve apresentação sobre este fantástico Sistema Gerenciador de Banco de Dados Objeto-Relacional.
Razões para adotá-lo, curiosidades e características.
Curso introdutório de ReactJS.
ReactJS é uma ferramente de desenvolvimento Web criada pelo Facebook.
No curso abordaremos uma abordagem introdutória ao assunto, explorando o básico para desenvolver um site somente com front-end
Material recopilado de internet y modifica para la imparticion de la materia de mantenimiento correctivo a jovenes de la especialidad en soporte de equipo.
GUIA DE LABORATORIO PHONE GAP JQUERY MOBILE CARGADO DE_DATOS_DE_REGISTROS...Ivan Petrlik
GUIA DE LABORATORIO PHONE GAP JQUERY MOBILE CARGADO DE_DATOS_DE_REGISTROS_REMOTAMENTE_A_TRAVES_DE_UNA_CONEXION REMOTA CON PHP Y MYSQL ANDROID ING IVAN PETRLIK AZABACHE
1. CETis 109
Alumna:
González Reyna Irene
Elizabeth
4 AM Aula: 27
Especialidad: Programación
Como insertar un video
Materia: Desarrolla
Aplicaciones Web
Facilitadora: Margarita Romero
Alvarado
2. CREACIÓN DE PROYECTO
Para comenzar crearemos un nuevo proyecto llamado ReproducirVideo, en
el que crearemos una actividad llamada MainActivity.java con un
layout activity_main.xml.
3. Una vez creado veremos en el Package Explorer el nuevo proyecto con la siguiente
estructura.
4. Como segundo paso debemos de crear una nueva carpeta
llamada raw/ dentro del directorio res/.
La carpeta raw la utilizaremos para almacenar recursos adicionales,
normalmente en formato distinto a XML, que no se incluyan en el
resto de carpetas de recursos.
Ahora nos descargaremos el vídeo de prueba (PSD) y lo
incluiremos en la carpeta recién creada.
Nota: Disponemos en la página oficial de Android Developers todos
los formatos que reproduce el sistema además de otras
recomendaciones. Los dispositivos actuales suelen incluir más
codecs que nos permiten reproducir multitud de formatos de vídeo.
IMPLEMENTACIÓN
En primer lugar crearemos un control VideoView que ocupe toda la
pantalla donde visualizaremos el vídeo de Mono Agency. Lo
definiremos en el layout de la Activity.
activity_main.xml
01 <?xml version="1.0" encoding="utf-8"?>
02 <RelativeLayout
5. xmlns:android="http://schemas.android.com/apk/res/android"
03 android:layout_width="match_parent"
04 android:layout_height="match_parent"
05 android:background="#FFFFFFFF" >
06
07 <VideoView
08 android:id="@+id/videoView_video"
09 android:layout_width="wrap_content"
10 android:layout_height="wrap_content"
11 android:layout_alignParentBottom="true"
12 android:layout_alignParentTop="true"
13 android:layout_centerInParent="true" />
14
15 </RelativeLayout>
Desde la Activity creamos un objeto VideoView y lo enlazamos con
el control del layout mediante la sentencia findViewById(). El
objeto Uri se lo pasamos a VideoView de forma que le indiquemos la
ruta del vídeo.
Por último iniciamos la reproducción mediante videoView.start(). De
ésta forma conseguimos que al iniciar la actividad el vídeo empiece
a reproducirse.
MainActivity.java
01 package com.example.reproducirvideo;
02
03 import android.app.Activity;
04 import android.net.Uri;
05 import android.os.Bundle;
06 import android.widget.VideoView;
07
6. 08 public class MainActivity extends Activity {
09
10 @Override
11 public void onCreate(Bundle savedInstanceState) {
12 super.onCreate(savedInstanceState);
13 setContentView(R.layout.activity_main);
14
15
VideoView videoView = (VideoView)
findViewById(R.id.videoView_video);
16
17
Uri path =
Uri.parse("android.resource://com.example.reproducirvideo/"
18 + R.raw.intromono);
19
20 videoView.setVideoURI(path);
21 videoView.start();
22 }
23 }
Al ejecutar el proyecto veremos el vídeo introducción de Mono
Agency.
7. Si nos fijamos podemos ver las barras de estado del dispositivo,
pero ésto no nos interesa. No queda elegante. Podemos ocultarlas
desde el código de la actividad o añadiendo unos atributos en el
AndroidManifest.xml.
Utilizaremos la segunda técnica. Le añadimos los
atributos screenOrientation y theme a cada una de las actividades
que deseemos ocultar las barras de estado.
AndroidManifest.xml
01 <?xml version="1.0" encoding="utf-8"?>
02
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
03 package="com.example.reproducirvideo"
04 android:versionCode="1"
9. AMPLIACIÓN
Si queremos aprovechar éste código para crear un reproductor.
Podemos añadir unos controles para el usuario. Android nos provee
de un sencillo control de los vídeos. Modificar el código
deMainActivity.java. Mediante la clase MediaControler añadimos
los nuevos controles.
01 package com.example.reproducirvideo;
02
03 import android.app.Activity;
04 import android.net.Uri;
05 import android.os.Bundle;
06 import android.widget.MediaController;
10. 07 import android.widget.VideoView;
08
09 public class MainActivity extends Activity {
10
11 @Override
12 public void onCreate(Bundle savedInstanceState) {
13 super.onCreate(savedInstanceState);
14 setContentView(R.layout.activity_main);
15
16
VideoView videoView = (VideoView)
findViewById(R.id.videoView_video);
17
18
Uri path =
Uri.parse("android.resource://com.example.reproducirvideo/"
19 + R.raw.intromono);
20
21 //AMPLIACIÓN
22 MediaController mc = new MediaController(this);
23 videoView.setMediaController(mc);
24
25 videoView.setVideoURI(path);
26 videoView.start();
27 }
28 }
Controlador del vídeo se nos mostrará durante unos segundos y se
ocultará de modo que si el usuario pulsa sobre el vídeo se le volverá
a mostrar