Vaga de [Remoto] Desenvolvedor iOS Sênior (R$100/hora) | Binnovation, Remoto, Brasil

[Remoto] Desenvolvedor iOS Sênior (R$100/hora) | Binnovation

Não Informado

📍 Remoto, Brasil Frontendbr

Descrição da Vaga

Sobre a Empresa

A binnovation é uma empresa com sede em Brasília mas com toda a operação remota, desenvolvemos soluções para diversas empresas públicas e privadas, mais informações em:

http://binnovation.co/

Valor

Para esta vaga estamos pagando R$100/hora, e trabalhamos com o prazo inicial de 14 dias para finalizar o desenvolvimento para testes.

Obrigatórios
  • Conhecimento sênior em desenvolvimento na plataforma iOS (Objetive-C/Swift).
Desejáveis
  • Conhecimento prévio em Capacitor, para facilitar a criação do plugin.
Informações Adicionais
  • Boa comunicação assíncrona.
Descrição da Vaga

Hoje possuímos a versão Android do plugin para Ionic escrito utilizando o framework Capacitor de comunicação com uma smartband (pulseira inteligente), esta vaga é para criar também a versão iOS do mesmo plugin.

*Sobre o plugin*

  • A comunicação com as pulseiras é feita através de uma biblioteca, desenvolvido por uma empresa Chinesa, portanto um complicador para o desenvolvimento é que a documentação fornecida está em chinês, mas a tradução pelo Google Translate até o momento foi satisfatória.
  • SDKs de exemplo (Android/iOS) podem ser baixado em: https://drive.google.com/drive/u/0/folders/1oWgwGVDjTf6sMkKrC4ekPl989Pe0dY2O

*Fluxo básico*

1. Capacitor registra um callback para receber informações de um dispositivo bluetooth sempre que um novo for encontrado pelo plugin.

2. Capacitor solicita conexão via bluetooth passando um endereço para o plugin.

3. Plugin realiza a conexão bluetooth e informa para o Capacitor que a conexão foi feita com sucesso.

4. Capacitor solicita informações sobre a pulseira.

*Sobre o Capacitor*

O Capacitor é um runtime nativo cross-platform que facilita a construção de aplicativos da web que são executados nativamente no iOS, Android e na web.

A documentação completa do Capacitor pode ser encontrada aqui.

*Recursos do Capacitor*

Todas as callbacks abaixo devem ser suportadas pelo plugin, são exatamente as mesmas que já estão funcionando para o Android.

  • _Retorna uma callback?_ identifica se o método deve marcar o método como callback. No Android é feito com a annotation `@PluginMethod(returnType = PluginMethod.RETURN_CALLBACK)` antes da declaração do método.
  • _É uma callback persistente?_ define se a callback será chamado mais de uma vez (para informar dispositivos bluetooth, por exemplo). No Android é utilizado o método `call.setKeepAlive(true);`.

| Método | Descrição | Retorna uma callback? | É uma callback persistente? |

| :---: | :---: | :---: | :---: |

| iniciarScan | Informa para a lib bluetooth iniciar o scan de dispositivos | sim | sim |

| pararScan | Informa para a lib bluetooth parar o scan de dispositivos | não | não |

| conectar | Solicita a lib bluetooth para conectar a um determinado dispositivo | não | não |

| quandoDispositivoConectar | Registra uma callback que será chamada quando um novo dispositivo for conectado via bluetooth | sim | sim |

| registrarMedicaoBpmSubscriber | Registra um callback que será chamado sempre que a pulseira informar uma leitura de BPM | sim | sim |

| registrarMedicaoTemperaturaSubscriber | Registra um callback que será chamado sempre que a pulseira informar uma leitura de Temperatura | sim | sim |

| registrarMedicaoOxigenacaoSubscriber | Registra um callback que será chamado sempre que a pulseira informar uma leitura de Oxigenação | sim | sim |

| registrarMedicaoPressaoArterialSubscriber | Registra um callback que será chamado sempre que a pulseira informar uma leitura de Pressão Arterial | sim | sim |

| registrarStepSubscriber | Registra um callback que será chamado sempre que um novo registro de passos diários for recuperado | sim | sim |

| registrarSleepSubscriber | Registra um callback que será chamado sempre que um novo registro de sono for recuperado | sim | sim |

| iniciarMedicaoBpm | Solicita para a lib da pulseira a medição de BPM (A callback deve morrer após responder a medição) | sim | não |

| iniciarMedicaoTemperatura | Solicita para a lib da pulseira a medição de Temperatura (A callback deve morrer após responder a medição) | sim | não |

| iniciarMedicaoOxigenacao | Solicita para a lib da pulseira a medição de Oxigenação (A callback deve morrer após responder a medição) | sim | não |

| iniciarMedicaoPressaoArterial | Solicita para a lib da pulseira a medição de Pressão Arterial (A callback deve morrer após responder a medição) | sim | não |

| pararMedicaoTemperatura | Solicita para a lib parar a leitura de Temperatura | não | não |

| pararMedicaoBpm | Solicita para a lib parar a leitura de BPM | não | não |

| pararMedicaoPressaoArterial | Solicita para a lib parar a leitura de Pressão Arterial | não | não |

| pararMedicaoOxigenacao | Solicita para a lib parar a leitura deOxigenação | não | não |

| sincronizarTesteAutomaticoTemperatura | Informa para a pulseira qual deve ser o período de teste automático da leitura de temperatura | não | não |

| nivelBateria | Solicita para a pulseira o nível da bateria | sim | não |

| sincronizarDadosPulseira | Solicita a pulseira todo o histórico de medições que está gravado no banco de dados da pulseira | não | não |

Posição

Sênior

Como aplicar

Iremos buscar os contatos pelo perfil do Github que manifestar interesse na vaga.

Contato

pedro.papadopolis@binnovation.co


Publicado há 4 anos

Outras buscas que podem te interessar:

📚 Aprimore seus conhecimentos

Desenvolva novas habilidades e destaque-se no mercado de trabalho com cursos especializados