# Inicializando o Manager

Este guia explica como instanciar a classe `PeripheralsManager`. Esta classe serve como o controlador central para todas as operações de hardware, incluindo impressão, escaneamento e configuração do dispositivo.

O `PeripheralsManager` lida com a conexão de baixo nível com o hardware do terminal. Você não precisa abrir ou fechar conexões manualmente; o manager lida com isso automaticamente na instanciação.

## Passo 1: Criar a Instância do Manager

Para começar a usar a biblioteca, você deve criar uma instância do `PeripheralsManager`. O construtor requer o `Context` atual do aplicativo ou da activity.

```
import com.redsys.peripherals.PeripheralsManager; // Example package import

// Inside your Activity or Service
PeripheralsManager manager = new PeripheralsManager(this);
```

Uma vez inicializada, a conexão com o terminal é estabelecida automaticamente.

## Boas Práticas

### Use um Padrão Singleton

É altamente recomendável manter uma **única instância** do `PeripheralsManager` durante todo o ciclo de vida do seu aplicativo. Criar múltiplas instâncias pode levar a conflitos de recursos ou problemas de estabilidade de conexão.

**Abordagem Recomendada:**

Inicialize o manager uma vez (por exemplo, na sua classe `Application` ou usando um framework de injeção de dependência como Dagger/Hilt) e passe essa referência para as activities ou fragments que precisarem dela.

### Exemplo: Inicialização em Nível de Aplicativo

```
public class MyApplication extends Application {
    private PeripheralsManager peripheralsManager;

    @Override
    public void onCreate() {
        super.onCreate();
        // Initialize once with Application context
        peripheralsManager = new PeripheralsManager(this);
    }

    public PeripheralsManager getPeripheralsManager() {
        return peripheralsManager;
    }
}
```

## Próximos Passos

Agora que você tem um manager inicializado, você pode prosseguir para:

* [Impressão de Bitmaps](/pt/get-smart/peripheralslib-integration-guide/guides/printing-bitmaps)  
* [Escaneamento de Códigos de Barras](/pt/get-smart/peripheralslib-integration-guide/guides/scanning-barcodes)  
* [Configuração do Modo Quiosque do Terminal](/pt/get-smart/peripheralslib-integration-guide/guides/configuring-terminal-kiosk-mode)