Buscar

Simulado PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS EM ANDROID

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 6 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 6 páginas

Prévia do material em texto

Disc.: PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS EM ANDROID 
Acertos: 10,0 de 10,0 18/04/2022 
 
 
 
 
1a 
 Questão 
Acerto: 1,0 / 1,0 
 
Em relação à hierarquia de componentes nativos, é correto afirmar que: 
 
 
Um componente só pode ser contêiner de outros componentes do mesmo tipo. 
 
Um componente não pode ser usado como contêiner. Consequentemente, ele 
não pode ter nenhum outro componente aninhado em si. 
 
A regra de hierarquias ou de componentes que podem ser utilizados em conjunto 
é bastante flexível. Entretanto, no caso de componentes de diferentes tipos 
serem utilizados em conjunto, não é possível estilizá-los individualmente, 
havendo apenas a possibilidade de que os filhos herdem os mesmos estilos dos 
elementos-pai. 
 
Embora os componentes possam ser usados como contêiner de outros, há uma 
restrição para esse regra em relação ao componente View, que só pode ser 
utilizado para outros componentes do mesmo tipo. 
 A hierarquia de componentes em React Native é bastante flexível. Com isso, é 
possível utilizar em conjunto diferentes componentes, inclusive como contêineres 
de outros componentes. 
Respondido em 18/04/2022 10:34:19 
 
Explicação: 
A resposta certa é: A hierarquia de componentes em React Native é bastante flexível. Com 
isso, é possível utilizar em conjunto diferentes componentes, inclusive como contêineres de 
outros componentes. 
 
 
2a 
 Questão 
Acerto: 1,0 / 1,0 
 
Em relação ao ambiente de programação para dispositivos móveis, marque a alternativa 
verdadeira. 
 
 
O Android Studio é a única IDE que pode ser usada para a codificação de 
aplicativos em React Native. 
 
Quando utilizamos o Expo CLI para criarmos nossas aplicações, não é possível, 
em um mesmo computador/ambiente, criar aplicações utilizando o React Native 
CLI. 
 É possível existir um ambiente de desenvolvimento heterogêneo, não havendo 
restrições quanto à utilização apenas de um gerenciador de pacotes, de uma 
mesma IDE ou mesmo de uma única forma de desenvolver e testar nossos 
aplicativos. 
 
Para testar aplicativos Android, é necessário ter um dispositivo móvel que utilize 
tal sistema operacional. 
 
A utilização de gerenciadores de pacotes facilita a configuração do ambiente de 
desenvolvimento. Com eles, nenhuma configuração se faz necessária em termos 
de softwares ou mesmo de configurações no sistema operacional. 
Respondido em 18/04/2022 10:34:29 
 
Explicação: 
A resposta certa é: É possível existir um ambiente de desenvolvimento heterogêneo, não 
havendo restrições quanto à utilização apenas de um gerenciador de pacotes, de uma 
mesma IDE ou mesmo de uma única forma de desenvolver e testar nossos aplicativos. 
 
 
3a 
 Questão 
Acerto: 1,0 / 1,0 
 
Indique qual afirmativa está correta em relação aos componentes de lista disponíveis 
em React Native. 
 
 
Os componentes de lista disponíveis só podem ser utilizados individualmente, 
não sendo possível a combinação deles ou até a utilização de um mesmo tipo de 
forma aninhada. 
 
Os componentes de lista são containers simples, como as View, com a única 
diferença de que permitem a exibição, dentro de um laço de repetição, usando o 
código JS com o componente React, de seu conteúdo. 
 
Embora sejam otimizados em relação à adaptação da janela de rolagem, os 
componentes de lista possuem problemas de performance no que diz respeito ao 
consumo de memória. 
 
Os componentes de lista só permitirão a exibição de dados desde que seja 
possível determinar, antes da renderização deles, sua quantidade. 
 Os componentes de lista são elementos otimizados para a exibição de dados 
nesse formato, possuindo diversas otimizações, que vão desde o consumo de 
memória até a renderização e a atualização da janela para a exibição dos itens. 
Respondido em 18/04/2022 10:35:20 
 
Explicação: 
A resposta certa é: Os componentes de lista são elementos otimizados para a exibição de 
dados nesse formato, possuindo diversas otimizações, que vão desde o consumo de 
memória até a renderização e a atualização da janela para a exibição dos itens. 
 
 
4a 
 Questão 
Acerto: 1,0 / 1,0 
 
O Stack Navigator permite criar uma ''pilha de telas''. Em relação a seu modelo de 
navegação, é correto afirmar: 
 
 
Após navegar para determinada tela, não é possível voltar à tela anterior sem 
antes recarregar todo o aplicativo. 
 
A navegação no modelo Stack Navigator é realizada apenas por meio do botão 
de voltar no topo da tela. 
 
As opções de navegação ficam dispostas em um menu, que, por padrão, fica 
escondido à esquerda da tela. 
 
Os botões de navegação nesse modelo ficam, por padrão, alocados na parte 
inferior da tela. 
 O Stack Navigator permite a navegação pelas telas do aplicativo por meio do 
método ''navigate'' ou do botão de voltar, inserido por default no topo de cada 
tela. Com isso, é possível acessar qualquer uma das telas que tenha sido incluída 
em seus ''screens''. 
Respondido em 18/04/2022 10:35:26 
 
Explicação: 
A resposta certa é: O Stack Navigator permite a navegação pelas telas do aplicativo por 
meio do método ''navigate'' ou do botão de voltar, inserido por default no topo de cada 
tela. Com isso, é possível acessar qualquer uma das telas que tenha sido incluída em seus 
''screens''. 
 
 
5a 
 Questão 
Acerto: 1,0 / 1,0 
 
Observe o fragmento de código apresentado a seguir, parte de um aplicativo criado na 
plataforma React Native. 
 
 
Qual será o resultado da execução desse trecho de código? 
 
 
Uma conexão será obtida de forma síncrona, sendo utilizada, em seguida, para 
gerar uma transação e, a partir dela, alterar os dados do aluno 120076. 
 
Será efetuada uma conexão com o banco de dados, configurado para o arquivo 
''Escola.db'', e na sequência a tabela ALUNOS é gerada no banco. 
 
Será criado um banco de dados com o nome ALUNOS, e na sequência os 
registros 120076 e ''Luiz Paulo'' serão removidos da tabela ''Escola.db''. 
 Uma conexão será obtida de forma assíncrona, sendo utilizada, a seguir, para 
iniciar uma transação e, a partir dela, inserir um registro no banco de dados. 
 
Será criada uma tabela com o nome ''Escola.db'', sendo inserido um registro com 
o nome ALUNOS, e valores indefinidos, devido ao uso de interrogações. 
Respondido em 18/04/2022 10:35:39 
 
Explicação: 
A resposta certa é: Uma conexão será obtida de forma assíncrona, sendo utilizada, a 
seguir, para iniciar uma transação e, a partir dela, inserir um registro no banco de dados. 
 
 
6a 
 Questão 
Acerto: 1,0 / 1,0 
 
O banco de dados Realm é manuseado, no React Native, a partir de uma classe com o 
mesmo nome, concentrando todos os métodos necessários para consultar e modificar 
os objetos de qualquer coleção incluída no esquema de criação. Qual método da classe 
Realm seria utilizado para acrescentar um objeto a uma coleção do banco? 
 
 
write 
 create 
 
objectForPrimaryKey 
 
commitTransaction 
 
beginTransaction 
Respondido em 18/04/2022 10:35:56 
 
Explicação: 
A resposta certa é: create 
 
 
7a 
 Questão 
Acerto: 1,0 / 1,0 
 
A conexão remota realizada em aplicativos escritos com o framework React Native 
através de bibliotecas como Fetch API, Axios, entre outras, implementa o padrão AJAX. 
Tal padrão caracteriza-se pelo uso do objeto XMLHttpRequest para se comunicar com os 
recursos disponíveis remotamente. Em relação a essa tecnologia, é correto afirmar: 
(Adaptado de: Ano: 2019 - Banca: Questões Inéditas - Prova: Questões Inéditas - SOE 
- Sem Órgão Específico - Carreiras TI - 2º Simulado) 
Em relação a essa tecnologia, podemos afirmar que 
 
 
As requisições possuem natureza síncrona, refletindo automaticamente no 
aplicativo o estado do servidor de aplicação remoto. 
 
Para que seja possível a sua execução, a linguagem JavaScript (ou Typescript) 
deve ser utilizada tanto no front-end como no back-end. 
 
Pode enviarinformações somente no formato XML. 
 
Para verificar se a requisição foi realizada com sucesso, devemos observar se a 
propriedade 'status' do XMLHttpRequest possui o valor 'OK'. 
 Pode receber informações em uma variedade de formatos, incluindo JSON, 
XML e Texto puro. 
Respondido em 18/04/2022 10:42:31 
 
Explicação: 
No framework React Native está disponível, nativamente, um componente que permite a 
conexão com recursos remotos, o Fetch API. Neste é possível consumir e enviar dados 
utilizando os diferentes métodos HTTP (GET, POST etc) e em diferentes formatos: JSON, 
XML, texto puro. 
 
 
8a 
 Questão 
Acerto: 1,0 / 1,0 
 
O HTTP é um protocolo da camada de Aplicação do modelo OSI (acrônimo do inglês 
Open System Interconnection). O HTTP, base para a comunicação Web, define em sua 
estrutura um conjunto de métodos de requisição. Marque a opção abaixo que 
corresponda a um dos métodos HTTP: 
 
 
STP 
 PUT 
 
IMAP 
 
RSTP 
 
. POP 
Respondido em 18/04/2022 10:36:25 
 
Explicação: 
O protocolo HTTP define alguns métodos como, por exemplo, PUT, GET e POST. 
 
 
9a 
 Questão 
Acerto: 1,0 / 1,0 
 
Ao efetuar a persistência em banco de dados, pode ser necessário ocultar informações 
de determinados campos, com a possibilidade de recuperação posterior, ou seja, devem 
ser adotados algoritmos de criptografia simétrica, em que o AES tem sido a principal 
opção para as plataformas móveis mais populares. Tendo como base a biblioteca 
CryptoJS, como podemos utilizar o algoritmo AES no desenvolvimento com React 
Native? 
 
 
Não é possível trabalhar com o algoritmo AES no React Native, pois a biblioteca 
CryptoJS não fornece um gestor apropriado para ele. 
 
Basta invocar a classe Base64, pois os valores já são codificados no formato 
AES. 
 
É necessário instanciar um objeto do tipo Cipher, com a passagem do algoritmo 
AES, chave e IV, e utilizar os métodos encrypt e decrypt do objeto. 
 Devemos invocar o método encrypt, fornecendo o valor original, chave AES e 
IV, ou o método decrypt, com o valor criptografado, chave e IV, sempre por 
meio do módulo AES. 
 
Precisamos utilizar o método digestStringAsync, fornecendo chave AES e IV, 
tanto para a criptografia quanto para a recuperação da informação. 
Respondido em 18/04/2022 10:36:31 
 
Explicação: 
A biblioteca CryptoJS fornece os gestores de criptografia simétrica por meio de módulos, 
em que estão incluídos AES, DES, TripleDES, Rabbit e RC4, referindo-se aos algoritmos 
adotados por cada um. Qualquer que seja o gestor escolhido, os métodos encrypt e decrypt 
ficam disponíveis, respectivamente, para criptografia e recuperação da informação, sendo 
necessário fornecer a chave e o IV. 
 
 
10a 
 Questão 
Acerto: 1,0 / 1,0 
 
Entre os requisitos de segurança da plataforma Android, atualmente não é aceitável que 
o mesmo IV seja utilizado na geração sequencial de chaves. Ao utilizar a biblioteca 
CryptoJS, portada para React Native de sua verão NodeJS, qual comando seria utilizado 
para criar um IV formado por valores aleatórios? 
 
 
CryptoJS.IV.getVector(128) 
 CryptoJS.lib.WordArray.random(16) 
 
CryptoJS.lib.ByteArray.createIV([128,16]) 
 
CryptoJS.lib.generateIV(128/8) 
 
CryptoJS.lib.IV.createFrom(''randomBytes'') 
Respondido em 18/04/2022 10:36:41 
 
Explicação: 
Com o módulo lib, oferecido na biblioteca CryptoJS, temos diversas classes e métodos 
utilitários para as atividades acessórias de processos criptográficos, como geração de 
números aleatórios, que podem ser utilizados na construção do IV e do SALT. O método 
random, de WordArray, acessado no módulo lib de CryptoJS, retorna um vetor de números 
aleatórios de 32 bits (Word), com o tamanho sendo fornecido como parâmetro.

Continue navegando