Prévia do material em texto
Questão 1/10 - Tópicos Avançados em Programação
Para navegar de uma tela para outra no aplicativo deve ser chamado o método startActivity(intent).
Ao clicar no botão voltar, a tela atual será destruída e a MainActivity, assinale a sequência correta que
será utilizada para reiniciar a MainActity
Nota: 10.0
A onRestart > onStart > onResume
Você acertou!
A resposta correta é a letra A, conforme item 2.2 Tema 2 da AULA 5.
B onCreate > onStart > onResume
C onCreate > onResume > onStart
D onRestart > onResume > onStart
E onStart > onCreate > onResume
Questão 2/10 - Tópicos Avançados em Programação
1 – onCreate(bundle)
2 – onStart()
3 – onRestart()
4 – onResume()
5 – onPause()
6 – onStop()
7 – onDestroy()
Relacione cada item acima com sua respectiva definição:
( ) chamado sempre que a tela da activity fechar.
( ) realizar a inicialização necessária para executar o aplicativo.
( ) quando chamado encerra a execução de uma activity. Ele pode ser chamado automaticamente pelo
sistema operacional para liberar recursos ou pode ser chamado pelo aplicativo com o método finish() da
classe Activity.
( ) chamado quando uma activity foi parada temporariamente e está sendo iniciada outra vez.
( ) chamado quando a activity está no topo da pilha “activity stack” e, dessa forma, já está executando
como a activity principal e interagindo com o usuário.
( ) chamado logo depois do método onPause() e indica que a activity está sendo encerrada e não está
mais visível ao usuário.
( ) raramente utilizado, chamado quando a activity ficará visível ao usuário é já tem um view.
A sequência correta é:
Nota: 10.0
A 5, 1, 7, 3, 4, 6, 2
Você acertou!
A reposta correta é a letra A, conforme explicado na introdução do TEMA 1 da AULA 5.
B 7, 3, 4, 6, 2, 5, 1
C 5, 1, 7, 4, 3, 6, 2
D 6, 2, 5, 1, 7, 4, 3
E 5, 1, 7, 2, 6, 3, 4
Questão 3/10 - Tópicos Avançados em Programação
Com base no trecho de código apresentado na imagem acima, avalie coloque V ou F sobre a passagem
de objeto como parâmetro:
( ) É uma boa prática passar a variável "nome" isoladamente, mesmo que seja necessário passar outros
dados do usuário, como o e-mail.
( ) Se tivermos muitos parâmetros, será necessário adicionar várias linhas e isso pode até resultar em
algum erro de lógica.
( ) A boa prática recomenda a criação de um objeto, que pode ser chamado de Usuário, que contenha os
atributos que são os parâmetros que deseja ser passado.
( ) Para que seja possível passar o objeto Usuário como parâmetro é necessário marcar o objeto com
Serializable.
Baseado nas suas respostas, a sequência correta é:
Nota: 10.0
A V V F V
B F V V V
Você acertou!
A reposta correta é a letra B, conforme explicado no item 3.1 do TEMA 3 da AULA 5.
C V V V F
D F V F F
E V F F F
Questão 4/10 - Tópicos Avançados em Programação
1 – Classe Controller
2 – Data classe
3 – Classe Service
Relacione cada item acima com sua respectiva definição:
( ) a classe que contem a lógica do negócio.
( ) a classe activity deve ser um intermediador entre a view/layout e a lógica de negócios
( ) a classe de dados que contem os atributos do objeto.
A sequência correta é
Nota: 10.0
A 3, 2, 1
B 1, 3, 2
C 3, 1, 2
Você acertou!
Gabarito: A reposta correta é a letra C, conforme explicado no item 4.1 do TEMA 4 da AULA 4.
D 1, 2, 3
E 2, 1, 3
Questão 5/10 - Tópicos Avançados em Programação
Ao girar a tela do celular da vertical para a horizontal, o Android vai destruir a activity atual e recriá-la logo
em seguida. O Android faz isso porque ele precisa recriar todas as views e aplicar espaçamentos e
margens adequadas para a nova orientação (vertical ou horizontal).
Sobre o método onSaveInstanceState(bundle), assinale a alternativa correta:
Nota: 10.0
A Esse método recebe um objeto do tipo android.os.Bundle como argumento que deve ser utilizado para armazenar os dados em uma estrutura de String.
B Mesmo que o aplicativo salve valores no Bundle (estrutura de chave e valor) lá no método onSaveInstanceState(bundle), não é possível recuperar esses
valores no bundle que vem como parâmetro no método onCreate(bundle?).
C Se for a primeira vez que a activity é executada, o parâmetro bundle pode não estar nulo, por isso ele contém a sintaxe da interrogação (? – pode ser nulo).
D Se o aplicativo faz uma busca em um web service para mostrar uma lista de produtos, caso o usuário gire a tela do celular, a lista não será perdida, mesmo
com a tela sendo destruída e recriada.
E Pode ser salvar uma lista dentro do bundle (HashTable), e depois pode recuperar essa lista já pronta quando o método onCreate(bundle) for chamado.
Você acertou!
A Resposta correta é a letra E, conforme item 2.1 do Tema 2 da AULA 5.
Questão 6/10 - Tópicos Avançados em Programação
Sobre o arquivo AndroidManifest.xml, avalie as assertivas abaixo:
I. Se chamarmos o método finish() a tela é encerrada;
II. Para Removermos o botão de voltar da AppBar é necessário remover a a tag parentActivityName no
arquivo de Manifesto.
III. Ao clicar no botão voltar nativo do Android, o aplicativo não é fechado, pois não existe nenhuma activity
atrás desta.
São corretas:
Nota: 10.0
A Apenas I.
B Apenas II.
C Apenas I e III.
D Apenas I e II.
Você acertou!
Gabarito: A letrar D é a correta, conforme o explicado no item 4.2 Tema 4, da AULA 4.
E Todas estão corretas.
Questão 7/10 - Tópicos Avançados em Programação
Avalie o trecho de código acima e assinale a alternativa incorreta sobre os métodos do ciclo de vida de
uma activity:
Nota: 10.0
A Sempre que sobrescrever um método da classe Activity, chame o método da classe-mãe com o super; caso contrário, uma exceção será lançada em tempo de
execução.
B No início da classe, foi declarada a propriedade className e foi sobrescrito o método get() para que ela tenha um retorno, facilitando o seu uso no código.
C Essa classe imprime um log quando algum método do ciclo de vida é chamado, por exemplo o método onCreate(bundle).
D O log é criado com a tag “android”, portanto, é necessário criar um filtro para essa tag na janela do LogCat. Também deve ser alterado a classe MainActivity
para ser filha de LogActivity, assim, ela vai herdar todos os métodos que foram customizados na sua classe-mãe.
E Na primeira vez que o aplicativo executar os métodos onResume(), onCreate() e onStart() são chamados exatamente nesta sequência.
Você acertou!
A letra E é a incorreta, conforme explicado na introdução do TEMA 2 da AULA 5.
Questão 8/10 - Tópicos Avançados em Programação
Sobre Solicitação de permissões do usuário, avalie as assertivas abaixo:
I.Quando o usuário responder, o método onRequestPermissionsResult() é chamado para validar as
permissões
II. O alerta de permissão do usuário é mostrado e não fica aguardado a resposta do usuário, podemos
deixar neste momento um botão invisível até a resposta do usuário
III. Para permissão de utilização de câmera funcionar é necessário adicionar a linha “” no AndroidManisfest.xml
IV. Por questões de segurança, a partir do Android 7 (Nougat), o Android não permite que a câmera ou
qualquer outro aplicativo salve arquivos na pasta privada do aplicativo sem darmos acesso
São corretas:
Nota: 10.0
A Apenas I e IV
B Apenas II e III
C Apenas I, III e IV
Você acertou!
A letra C é a correta, conforme o explicado no item 4.3 Tema 4 e TEMA 5, da AULA 5.
D Apenas I e II
E Apenas II, III e IV
Questão 9/10 - Tópicos Avançados em Programação
A classe Activity representa uma tela do aplicativo e é responsável por controlar os eventos e a lógica
dessa tela.
Marque a alternativa incorreta sobre a criação de uma Activity:
Nota: 10.0
A Para criar uma activity, devemos ter uma classe filha de Activityou AppCompatActivity.
B Criando uma classe filha de Activity, como é embarcada no sistema operacional terá uma versão diferente do código em um Android 5.0 e um Android 10.
C O Google criou um pacote que é chamado de biblioteca de compatibilidade, porém não recomenda que as classes desse pacote sejam utilizadas no lugar das
nativas.
Você acertou!
Gabarito: A reposta incorreta é a letra C, conforme explicado na introdução do TEMA 1 da AULA 4.
D Ao criarmos o projeto com wizard, o Android Studio cria a MainActivity como filha de AppCompatActivity.
E A vantagem de utilizar a biblioteca de compatibilidade é que ela é adicionada no arquivo app/build.gradle e pode ser atualizada sempre que o Google lançar
versões mais novas.
Questão 10/10 - Tópicos Avançados em Programação
Com base no trecho de código apresentado na imagem acima, avalie coloque V ou F sobre a visualização
de erros no LogCat:
( ) No Android, sempre que o aplicativo travar e encerrar, significa que uma exceção foi tratada e lançada,
com isso podemos visualizar todos os detalhes desses logs usando o LogCat.
( ) Comentando a configuração da HomeActivity do arquivo de manifesto, pois vamos adicionar um bug
proposital apenas para aprendermos a visualizar os logs. Um comentário em XML começa com ''.
( ) Será lançada uma exceção, e inclusive a mensagem é bastante clara: "ActivityNotFoundException:
Unable to find explicit activity class {HomeActivity}; have you declared this activity in your
AndroidManifest.xml?".
( ) O Android não auxilia muito com as mensagens de erro, pois depois de não encontrar a configuração
da HomeActivity, ele não pergunta se fizemos a configuração dessa activity no arquivo de manifesto.
Baseado nas suas respostas, a sequência correta é:
Nota: 10.0
A V V F V
B F V V F
Você acertou!
Gabarito: A reposta correta é a letra B, conforme explicado no item 3.1 do TEMA 3 da AULA 4.
C V V V F
D F V V V
E V F F F