| Pacote | flash.media |
| Classe | public class CameraUI |
| Herança | CameraUI EventDispatcher Object |
| Versão da linguagem: | ActionScript 3.0 |
| Versões de runtime: | AIR 2.5 |
O método launch() solicita que o dispositivo abra o aplicativo de câmera padrão. A imagem ou o vídeo capturado fica disponível no objeto MediaEvent despachado para o evento complete. Visto que o aplicativo de câmera padrão pode salvar a imagem ou vídeo em uma variedade de formatos, não há nenhuma garantia de que o objeto de mídia retornado poderá ser carregado e exibido pelo tempo de execução do AIR.
Em algumas plataformas, o objeto de mídia retornado pela câmera é acessível como uma promessa de mídia baseada em arquivo. Em outras, a promessa de mídia não é baseada em arquivo e as propriedades file e relativePath do objeto MediaPromise são null. Não use estas propriedades em código usado em mais de uma plataforma.
No Android, o aplicativo de câmera padrão não é aberto se o cartão de armazenamento externo não estiver disponível (como quando o usuário monta o cartão como um dispositivo USB de armazenamento em massa). Além disso, o aplicativo AIR que inicia a câmera perde o foco. Se o dispositivo começar a ficar sem recursos, o aplicativo AIR pode ser terminado pelo sistema operacional antes da conclusão da captura de mídia.
Em algumas plataformas, o objeto de mídia é armazenado automaticamente na biblioteca de mídia do dispositivo. Nas plataformas em que as imagens e o vídeo não são armazenados automaticamente pelo aplicativo de câmera padrão, você pode usar a função CameraRoll addBitmapData() para armazenar o objeto de mídia.
Suporte a perfil do AIR: este recurso conta com suporte em dispositivos móveis, mas não é compatível com sistemas operacionais para desktop nem com dispositivos AIR for TV. Você pode testar o suporte em tempo de execução usando a propriedade CameraUI.isSupported. Consulte Suporte a perfil do AIR para obter mais informações sobre o suporte de API através de múltiplos perfis.
Saiba mais
| Propriedade | Definido por | ||
|---|---|---|---|
![]() | constructor : Object
Uma referência ao objeto de classe ou à função de construtor de uma determinada ocorrência de objeto. | Object | |
| isSupported : Boolean [estático] [somente leitura]
Indica se há suporte à classe CameraUI no dispositivo atual. | CameraUI | ||
| permissionStatus : String [estático] [somente leitura]
Determina se o aplicativo recebeu permissão para usar a câmera. | CameraUI | ||
| Método | Definido por | ||
|---|---|---|---|
CameraUI()
Cria um objeto CameraUI. | CameraUI | ||
![]() | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registra um objeto de ouvinte de evento em um objeto EventDispatcher, de forma que o ouvinte receba a notificação de um evento. | EventDispatcher | |
![]() |
Envia um evento para o fluxo de eventos. | EventDispatcher | |
![]() |
Verifica se o objeto EventDispatcher tem ouvintes registrados para um tipo específico de evento. | EventDispatcher | |
![]() |
Indica se um objeto tem uma propriedade especificada definida. | Object | |
![]() |
Indica se uma ocorrência da classe Object está na cadeia de protótipos do objeto especificado como o parâmetro. | Object | |
Inicia o aplicativo de câmera padrão no dispositivo. | CameraUI | ||
![]() |
Indica se a propriedade especificada existe e é enumerável. | Object | |
![]() |
Remove um ouvinte do objeto EventDispatcher. | EventDispatcher | |
Solicita permissão para acessar a IU da câmera. | CameraUI | ||
![]() |
Define a disponibilidade de uma propriedade dinâmica para operações de repetição. | Object | |
![]() |
Retorna a representação da string deste objeto, formatado segundo as convenções específicas para a localidade. | Object | |
![]() |
Retorna a representação de string do objeto especificado. | Object | |
![]() |
Retorna o valor primitivo do objeto especificado. | Object | |
![]() |
Verifica se um ouvinte de evento está registrado nesse objeto EventDispatcher ou em qualquer um de seus ancestrais para o tipo de evento especificado. | EventDispatcher | |
| Evento | Resumo | Definido por | ||
|---|---|---|---|---|
![]() | [transmissão de evento] Despachado quando o Flash Player ou o aplicativo do AIR ganha o foco do sistema operacional e está se tornando inativo. | EventDispatcher | ||
| O evento cancel é despachado quando o usuário fecha a interface de usuário da Câmera sem salvar uma imagem ou vídeo. | CameraUI | |||
| O evento complete é despachado quando o usuário captura um imagem estática ou vídeo na interface de usuário da Câmera. | CameraUI | |||
![]() | [transmissão de evento] Despachado quando o Flash Player ou o aplicativo do AIR perde o foco do sistema operacional e está se tornando inativo. | EventDispatcher | ||
| O evento error é despachado quando a câmera padrão não pode ser aberta. | CameraUI | |||
| Será despachado quando o aplicativo solicitar permissão para acessar a IU da câmera. | CameraUI | |||
isSupported | propriedade |
isSupported:Boolean [somente leitura] | Versão da linguagem: | ActionScript 3.0 |
| Versões de runtime: | AIR 2.5 |
Indica se a classe CameraUI conta com suporte no dispositivo atual. No momento, o recurso conta somente com suporte em aplicativos AIR no Android.
Implementação
public static function get isSupported():Boolean permissionStatus | propriedade |
CameraUI | () | Construtor |
public function CameraUI()| Versão da linguagem: | ActionScript 3.0 |
| Versões de runtime: | AIR 2.5 |
Cria um objeto CameraUI.
launch | () | método |
public function launch(requestedMediaType:String):void| Versão da linguagem: | ActionScript 3.0 |
| Versões de runtime: | AIR 2.5 |
Inicia o aplicativo de câmera padrão no dispositivo.
Você pode capturar imagens estáticas ou vídeo com esta classe. A captura de vídeo usa o perfil de câmara "Baixa qualidade" no dispositivo.
Quando o método launch() é chamado, o aplicativo de câmera padrão no dispositivo é chamado. O aplicativo AIR perde o foco e espera até que usuário capture uma imagem estática ou termine de capturar o vídeo. Depois que a mídia desejada tiver sido capturada pelo usuário, o aplicativo AIR recupera o foco e esse objeto CameraUI emite um evento complete. Se o usuário cancelar a operação, este objeto CameraUI emite, em vez disso, um evento cancel.
Note: é possível que o aplicativo AIR seja fechado pelo sistema operacional Android enquanto estiver em segundo plano esperando que o usuário capture uma imagem ou vídeo. Se isto acontecer, o usuário deve reiniciar o aplicativo. O aplicativo AIR não emite um evento media para a captura de imagem anterior.
Você pode acessar o arquivo de mídia capturado usando a propriedade data do objeto MediaEvent despachado para o evento complete. Esta propriedade é uma instância da classe MediaPromise, que você pode carregar no seu aplicativo usando o método loadFilePromise() da classe Loader. Observe que a câmera do dispositivo pode salvar a mídia capturada em vários formatos. O vídeo é especialmente problemático nesse sentido. Pode não ser possível exibir a mídia capturada no AIR.
Parâmetros
requestedMediaType:String — O tipo de objeto de mídia a ser capturado. Os valores válidos deste parâmetro são definidos na classe MediaType:
|
Eventos
complete: — Despachado quando um objeto de mídia é capturado.
| |
cancel: — Despachado quando o usuário sai da câmera nativa sem capturar um objeto de mídia.
| |
error: — Despachado se o aplicativo de câmera padrão já estiver sendo usado.
| |
error: — Despachado se o aplicativo AIR estiver em segundo plano ao chamar esta função.
|
Lança
PermissionError — O aplicativo não tem permissão para usar a câmera.
|
Elementos da API relacionados
requestPermission | () | método |
public function requestPermission():void| Versão da linguagem: | ActionScript 3.0 |
| Versões de runtime: | AIR 24.0 |
Solicita permissão para acessar a IU da câmera.
Eventos
PermissionStatus: — despachado quando a permissão solicitada é concedida/negada pelo usuário.
|
cancel | Evento |
flash.events.Eventpropriedade Event.type =
flash.events.Event.CANCEL| Versão da linguagem: | ActionScript 3.0 |
| Versões de runtime: | AIR 2.5 |
O evento cancel é despachado quando o usuário fecha a interface de usuário da Câmera sem salvar uma imagem ou vídeo.
Event.CANCEL define o valor da propriedade type de um objeto de evento cancel.
Esse evento tem as seguintes propriedades:
| Propriedade | Valor |
|---|---|
bubbles | false |
cancelable | false; não há comportamento padrão a ser cancelado. |
currentTarget | O objeto que está processando ativamente o objeto Event com um ouvinte de evento. |
target | Uma referência ao objeto no qual a operação é cancelada. |
complete | Evento |
flash.events.MediaEventpropriedade MediaEvent.type =
flash.events.MediaEvent.COMPLETE| Versão da linguagem: | ActionScript 3.0 |
| Versões de runtime: | AIR 2.5 |
O evento complete é despachado quando o usuário captura uma imagem estática ou vídeo na interface de usuário da Câmera.
complete.
Define o valor da propriedade type de um objeto de evento MediaEvent. Esse evento tem as seguintes propriedades:
| Propriedade | Valor |
|---|---|
bubbles | false |
cancelable | false; não há comportamento padrão a ser cancelado. |
currentTarget | O objeto que está processando ativamente o objeto Event com um ouvinte de evento. |
dados | O objeto MediaPromise da instância de mídia disponível. |
error | Evento |
flash.events.ErrorEventpropriedade ErrorEvent.type =
flash.events.ErrorEvent.ERROR| Versão da linguagem: | ActionScript 3.0 |
| Versões de runtime: | AIR 2.5 |
O evento error é despachado quando a câmera padrão não pode ser aberta.
type de um objeto de evento error.
Esse evento tem as seguintes propriedades:
| Propriedade | Valor |
|---|---|
bubbles | false |
cancelable | false; não há comportamento padrão a ser cancelado. |
currentTarget | O objeto que está processando ativamente o objeto Event com um ouvinte de evento. |
target | O objeto que está passando por uma falha de operação na rede. |
text | Texto a ser exibido como uma mensagem de erro. |
permissionStatus | Evento |
flash.events.PermissionEventpropriedade PermissionEvent.type =
flash.events.PermissionEvent.PERMISSION_STATUS| Versão da linguagem: | ActionScript 3.0 |
| Versões de runtime: | AIR 24.0 |
Será despachado quando o aplicativo solicitar permissão para acessar a IU da câmera. Verifique o valor da propriedade status para confirmar se a permissão for concedida ou recusada
Elementos da API relacionados
package {
import flash.desktop.NativeApplication;
import flash.display.Loader;
import flash.display.MovieClip;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.ErrorEvent;
import flash.events.Event;
import flash.events.IOErrorEvent;
import flash.events.MediaEvent;
import flash.media.CameraUI;
import flash.media.MediaPromise;
import flash.media.MediaType;
public class CameraUIStillImage extends MovieClip{
private var deviceCameraApp:CameraUI = new CameraUI();
private var imageLoader:Loader;
public function CameraUIStillImage() {
this.stage.align = StageAlign.TOP_LEFT;
this.stage.scaleMode = StageScaleMode.NO_SCALE;
if( CameraUI.isSupported )
{
trace( "Initializing camera..." );
deviceCameraApp.addEventListener( MediaEvent.COMPLETE, imageCaptured );
deviceCameraApp.addEventListener( Event.CANCEL, captureCanceled );
deviceCameraApp.addEventListener( ErrorEvent.ERROR, cameraError );
deviceCameraApp.launch( MediaType.IMAGE );
}
else
{
trace( "Camera interface is not supported.");
}
}
private function imageCaptured( event:MediaEvent ):void
{
trace( "Media captured..." );
var imagePromise:MediaPromise = event.data;
if( imagePromise.isAsync )
{
trace( "Asynchronous media promise." );
imageLoader = new Loader();
imageLoader.contentLoaderInfo.addEventListener( Event.COMPLETE, asyncImageLoaded );
imageLoader.addEventListener( IOErrorEvent.IO_ERROR, cameraError );
imageLoader.loadFilePromise( imagePromise );
}
else
{
trace( "Synchronous media promise." );
imageLoader.loadFilePromise( imagePromise );
showMedia( imageLoader );
}
}
private function captureCanceled( event:Event ):void
{
trace( "Media capture canceled." );
NativeApplication.nativeApplication.exit();
}
private function asyncImageLoaded( event:Event ):void
{
trace( "Media loaded in memory." );
showMedia( imageLoader );
}
private function showMedia( loader:Loader ):void
{
this.addChild( loader );
}
private function cameraError( error:ErrorEvent ):void
{
trace( "Error:" + error.text );
NativeApplication.nativeApplication.exit();
}
}
}
Wed Jun 13 2018, 11:10 AM Z
Ocultar propriedades públicas herdadas
Mostrar propriedades públicas herdadas