Prévia do material em texto
Questão 1/12 - Tópicos Avançados em Programação Para adicionar o id em uma view, utilizamos o atributo android:id, a sintaxe que deve ser utilizada é : A android:id=“@+id/codigoIdAqui” Você assinalou essa alternativa (A) B android:id=“codigoIdAqui” C android:id=“+id/codigoIdAqui” D android:id=“@id/codigoIdAqui” E android:id=“/codigoIdAqui” Questão 2/12 - Tópicos Avançados em Programação Na criação de um Formulário de Login é utilizado um layout simples com poucos campos. Sobre a criação de Layout do Formulário é correto afirmar: A O TextView é um campo de texto e o EditText é o label. B No campo senha utiliza-se o atribuito “android:inputType="textPassword” para apresentar o caracter “@” quando digitar a senha. C Para adicionar um espaçamento dentro do formulário, vamos adicionar a propriedade android:padding="16cm" no LinearLayout. D Adicionando a propriedade layout_gravity="central" no botão para ele ficar centralizado na tela. E Podemos colocar gerenciadores de layout dentro dos outros, ou seja, ter um LinearLayout vertical raiz (que é chamado de layout root) e um LinearLayout filho. Você assinalou essa alternativa (E) Questão 3/12 - 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: 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ê assinalou essa alternativa (C) 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 4/12 - Tópicos Avançados em Programação Sobre o arquivo AndroidManifest.xml, avalie as assertivas abaixo: I. Se chamarmos o método finish() no arquivo AndroidManifest.xml 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: Você não pontuou essa questão A Apenas I. B Apenas II. C Apenas I e III. D Apenas I e II. Você assinalou essa alternativa (D) E Todas estão corretas. Questão 5/12 - Tópicos Avançados em Programação 1. Higher-Order Functions e Lambdas 2. Extensões 3. Coleções e lambdas: map e filter 4. Null Safety Relacione cada recurso de funções com sua respectiva definição: ( ) permitem adicionar métodos em classes sem utilizar herança. ( ) permite que funções recebam outras funções como parâmetro, além de permitir que uma função retorne outra função. ( ) não permite que variáveis e objetos tenham valores nulos, a não ser que isso seja explicitamente indicado no código para isso é obrigatório declarar o seu tipo e utilizar o operador da interrogação '?'. ( ) Há várias funções nativas da linguagem que são criadas para processar e filtrar listas, sets, mapas, dentre outras coisas. Ao utilizar lambdas, a sintaxe fica muito simples. A sequência correta é A 1, 4, 2, 3 B 3, 2, 1, 4 C 4, 1, 2, 3 D 2, 1, 4, 3 Você assinalou essa alternativa (D) E 1, 2, 4, 3 Questão 6/12 - Tópicos Avançados em Programação Sobre classe e orientação a objeto em Kotlin avalie as acertivas abaixo: I. O construtor primário em Kotlin não pode ter nenhum código, portanto o código foi inicializado com a palavra init (bloco de inicialização). Para criar uma instância de um objeto, não é preciso utilizar o famoso operador new como no Java. II. Para herdar de uma classe, basta utilizar a sintaxe dos dois-pontos, seguida do nome da classe-mãe. Para que a herança possa ser realizada, a classe mãe foi anotada como open, pois, no Kotlin, todas as classes são final por padrão, ou seja, não é possível utilizar herança. O mesmo vale para métodos. III. Data Classes têm uma sintaxe resumida e não implementa automaticamente as funções: equals() e hashcode(), toString() e copy(). IV. Métodos estáticos – ou métodos de classe, como são chamados – não permitem criar métodos que podem ser chamados diretamente com a sintaxe "Classe.metodo()". V. Um singleton é um padrão que permite que uma classe tenha apenas uma instância (objeto) em memória. Para criar um singleton em Java, são necessárias várias linhas de código, mas, em Kotlin, basta utilizar a palavra reservada object em lugar de class. VI. Se quisermos que o Kotlin crie essa lista para nós, é possível utilizar a função mutableListOf(), que retorna uma lista mutável, ou seja, que pode ser alterada. Mas podemos utilizar as funções mutableListOf() (mutável) ou listOf() (imutável), conforme a necessidade. São corretas: A I, II, III e VI B I, II, V e VI Você assinalou essa alternativa (B) C II, IV, V e VI D III, IV e V E Todas estão corretas. Questão 7/12 - 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 A onRestart > onStart > onResume Você assinalou essa alternativa (A) B onCreate > onStart > onResume C onCreate > onResume > onStart D onRestart > onResume > onStart E onStart > onCreate > onResume Questão 8/12 - Tópicos Avançados em Programação Java Platform, Micro Edition (Java ME) oferece um ambiente robusto e flexível para aplicativos executados em dispositivos móveis e integrados: celulares, set-top boxes, reprodutores de discos Blu-ray, dispositivos de mídia digital, módulos M2M, impressoras etc. A tecnologia Java ME foi originalmente criada para lidar com as restrições associadas à criação de aplicativos para pequenos dispositivos. Para essa finalidade, a Oracle definiu o básico para a tecnologia Java ME para acomodar esse ambiente limitado e possibilitar a criação de aplicativos Java executados em dispositivos pequenos com memória, vídeo e capacidade de processamento limitados. Fonte:https://www.java.com/pt-BR/download/help/whatis_j2 me_pt-br.html Marque a alternativa INCORRETA sobre celulares que utilizavam J2ME: A A ideia do J2ME era usufruir do grande lema da linguagem Java (Write Once Run Everywhere – escreva uma vez, execute em qualquer lugar) e criar uma plataforma única de desenvolvimento que executasse em diversos dispositivos, independentemente do fabricante. B Os celulares Java eram embarcados com uma JVM (Java Virtual Machine) capaz de executar esses aplicativos. C O J2ME tinha um problema: era uma especificação, e não uma implementação. D Na especificação (criada pela Sun Microsystems – criadora do Java e hoje comprada pela Oracle), apenas citava-se que, para criar a interface do aplicativo, era preciso existir um componente de Botão, outro para um Campo de Texto, Checkbox, Imagem etc., porém cada fabricante podia implementar esses componentes visuais como quisesse. E A interface de um botão e checkbox de um celular do fabricante X ficava diferente do celular que foi feito pelo fabricante Y, e isso era aceitável por grandes empresas e as empresas queria que existissem essas diferenças. Você assinalou essa alternativa (E) Questão 9/12 - Tópicos Avançados em Programação Um dos principais arquivos de configuração do projeto é o AndroidManifest.xml, também conhecido como “arquivo de manifesto”. A imagem acima é um arquivo Manifesto do projeto criado a partir do Wizard do Androi Studio, com base nestas informações é incorreto afirmar que: A A declaração datag <application> onde são incluídas as configurações globais do aplicativo. B Quando criada uma nova activities deve ser incluída a tag <activity> correspondente. C Quando criamos uma activity é criada uma dupla de arquivos: Classe Activity + Arquivo Xml de Layout. D As declarações de permissões do sistema não são realizadas no arquivo de Manifesto, por isso não existe a tag <uses-permission>. Você assinalou essa alternativa (D) E A tag <intent-filter> possui algumas configurações, entre elas a classe de ponto de entrada do aplicativo e indicação do que ícone que ficará visível na Home do Android para o usuário abrir o aplicativo. Questão 10/12 - Tópicos Avançados em Programação O operador ternário existente em várias linguagens e é utilizado para evitar o uso do if/else em várias linhas. Existe outro operador o Elvis para responder a pergunta: se valor da variável for nullo qual valor eu mostro. Sobre a utilização do operador ternário e Elvis, marque a alternativa correta: A Como no Java deve ser utilizado interrogação '?' seguida de dois-pontos ‘:’’, não sendo possível escrever todo if/else na mesma linha. B Quando a função tem apenas uma linha podemos colocar o símbolo “?” logo após a declaração da função. C O operador Elvis é identificado por “?:”, quando utilizado se o valor da variável não for nulo, usa seu próprio valor; caso contrário, use outro valor padrão do kotlin. D Nos parâmetros da função também pode ser utilizado o operador “?”, após o tipo do parâmetro “String?”, é para aceitar valores nulos e caso não seja informado nenhum valor. Você assinalou essa alternativa (D) E Não é possível utiliza default arguments em Kotlin. Questão 11/12 - Tópicos Avançados em Programação (questão opcional) 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: A findViewById(id.tLogin) B findViewById(R.tLogin) as <TextView> C findViewById<TextView>(R.id) D findViewById<TextView>(R.id.tLogin) Você assinalou essa alternativa (D) E id.findViewById<View>(tLogin) Questão 12/12 - Tópicos Avançados em Programação (questão opcional) A plataforma Android tem toda uma pilha bem definida e com base no Linux. Sobre as camadas dessa pilha podemos afirmar: I. Na Camada Native Libraries temos os componentes de hardware, como áudio, bluetooth, câmera e sensores, e que fornecem uma interface padrão de comunicação com as APIs do sistema. II. A camada HAL consiste em módulos de biblioteca, que implementam uma interface para um tipo específico de componente de hardware, como o módulo de câmera ou Bluetooth. III. Android Runtime, que é a máquina virtual capaz de executar os aplicativos Android, distribuídos por um arquivo com a extensão APK. IV. Android Framework consiste em um conjunto de APIs que os desenvolvedores utilizam para acessar todos os recursos disponíveis no Android. Na Camada Linux Kernel temos os aplicativos de sistema e nossos próprios aplicativos todos eles são construídos da mesma forma, com as linguagens Java ou Kotlin e utilizando o Android SDK. São corretas: A Apenas II. B Apenas I e II. C Apenas II, III e IV. Você assinalou essa alternativa (C) D Apenas II e III. E Todas estão corretas.