Prévia do material em texto
Questão 1/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 2/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 3/10 - Tópicos Avançados em Programação
Com a utilização do LogCat pode ser categorizado os logs utilizando tags, também pode ser
selecionado o nível de severidade.
Sobre a utilização do LogCat é CORRETO afirmar:
Nota: 10.0
A Não é necessário fazer o import da classe Log: import android.util.Log
B Por padrão, o LogCat não mostra todos os logs do sistema operacional do Android e o que precisamos é encontrar a mensagem que foi escrita com a tag criada no código.
C Na janela do LogCat, clique no combo que filtra os logs (lá na direita), e selecione a opção Verbose, onde é realizada a criação do Filtros.
D Também podemos logar mensagens no LogCat com outros níveis de severidade, exemplo, Log.i (info), Log.w (warning), Log.d (debug), Log.v (verbose), Log.e (erro).
Você acertou!
Gabarito: A resposta incorreta é a letra D, conforme introdução Tema 3 da AULA 4.
E No centro da janela do LogCat, você verá um combo que está escrito Verbose, onde pode ser criados os filtros com apenas o nível de severidade que estamos interessados.
Questão 4/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 5/10 - Tópicos Avançados em Programação
Sobre os itens circulados na imagem acima, referente ao debug do código, avalie as assertivas
abaixo:
I. Foi adicionado um breakpoint na linha 40.
II. Para executar o debug através do Botão Debug , automaticamente o breakpoint será
acionado quando o trecho do código for chamado.
III. No canto inferior esquerdo, Janela Pilha, é apresentada a pilha com as chamadas do código
IV. Na Janela variables podemos ver o valor das variáveis e depurar o código passo a passo
Baseado nas suas respostas são corretas:
Nota: 10.0
A Apenas I,II e IV
B Apenas II e IV
Você acertou!
Gabarito: A reposta correta é a letra B, conforme explicado no item 3.2 do TEMA 3 da AULA 4.
C Apenas II e III
D Todas estão corretas
E Apenas a I
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
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
Questão 8/10 - Tópicos Avançados em Programação
Para leitura dos textos que são digitados pelo usuário na tela é necessário a criação de um
identificado para cada View que será realizada a leitura do valor.
Sobre a localização dos identificadores na classe activity, assinale a alternativa que contem o
código correto para encontrar a view:
Nota: 10.0
A findViewById(id.tLogin)
B findViewById(R.tLogin) as
C findViewById(R.id)
D findViewById(R.id.tLogin)
Você acertou!
Gabarito: A Resposta correta é a letra D, conforme introdução do Tema 2 da AULA 4.
E id.findViewById(tLogin)
Questão 9/10 - Tópicos Avançadosem Programação
Mostrar um alerta comunicando o usuário sobre determinadas situações é muito comum nos
celulares.
Sobre mensagens de alerta em celulares é correto afirmar:
Nota: 10.0
A Não é necessário fazer import da classe AlertDialog
B Criar uma constante que recebe o valor da chamada AlertDialog.Builder(View?).create()
C Para mostrar o alert incluímos o cógido abaixo no método onClick():
Você acertou!
Gabarito: A resposta correta é a letra C, conforme item 2.1 Tema 2 da AULA 4.
D Pode ser criada uma extensão, adicionando métodos em uma classe porém ainda existe a necessidade de criar classes filhas. Para isso a extensão tem uma declaração de método da
seguinte forma:
E Caso seja criada uma extensão, para utilizar a mesma na classe activity não é necessário fazer o importe do método “alert”.
Questão 10/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 Activity ou 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.