D1. Per aggiungere funzionalità, componenti e autorizzazioni alla tua app Android, quale file deve essere modificato?
AndroidManifest.xml
Componenti.xml
AppManifest.xml
ComponentManifest.xml
D2. Quale attributo XML deve essere utilizzato per rendere accessibile una visualizzazione immagine?
android:talkBack
android:labelFor
androide:suggerimento
android:contentDescription
D3. Avvii la tua app e quando passi a una nuova schermata si blocca, quale azione NON ti aiuterà a diagnosticare il problema?
Impostare i punti di interruzione e quindi scorrere il codice riga per riga
Utilizza gli strumenti di profiler in Android Studio per rilevare anomalie della CPU e dell'utilizzo della rete.
Aggiungere una chiamata Thread.sleep() prima di iniziare la nuova attività.
ispezionare i registri in Logcat.
D4. Perché le notifiche push potrebbero smettere di funzionare?
tutte queste risposte
Il token del dispositivo non viene inviato correttamente al provider push.
Google Play Services non è installato sul deivce/emulatore.
L'ottimizzazione della batteria è attivata sul dispositivo.
D5. Qual è il set corretto di classi di componenti necessario per implementare un RecyclerView di elementi che visualizza un elenco di widget verticalmente?
D6. Il sistema Android uccide il processo quando ha bisogno di liberare memoria. La probabilità che il sistema uccida un determinato processo dipende dallo stato del processo e dall'attività in quel momento. Con la combinazione di processo e stato di attività è più probabile che venga ucciso?
Processo:In background; Attività:Viene interrotto
Processo:In background; Attività:È in pausa
Processo:In primo piano; Attività:Viene avviato
Processo:In primo piano; Attività:È in pausa
D7. È stata creata una classe NextActivity che si basa su una stringa contenente alcuni dati che passano all'interno dell'intento Quale frammento di codice consente di avviare l'attività?
D8. Si desidera includere i moduli di informazioni e impostazione nel progetto. Quali file riflettono accuratamente la loro inclusione?
in build.gradle:include ':app',':about' ':settings'
in settings.gradle:include ':app',':about' ':settings'
in settings.gradle:include ':about',':settings'
in gradle.properties:include ':app',':about' ':settings'
D9. Qual è il vantaggio di utilizzare @VisibleForTesting annotazione?
per indicare che una classe, un methos o un campo ha la sua visibilità rilassata per rendere il codice testabile
per indicare che una classe, un metodo o un campo è visibile solo nel codice del test
per indicare che una classe, un metodo o un campo ha la sua visibilità aumentata per rendere il codice meno testabile
per generare un errore di runtime se si accede in modo errato a una classe, a un methos o a un campo con questa annotazione
D10. Come si specifica nel file build.gradle che l'app richiede almeno il livello API 21 per l'esecuzione, ma che può essere testata al livello API 28?
D12. Devi rimuovere un evento in base al suo ID dalla tua API, Quale snippet di codice definisce quella richiesta in Retrofit?
@DELETE("eventi"
fun deleteEvent(@Path("id") id: Long): Chiama<Unit>
@DELETE("events/{id}")
fun deleteEvent(@Path("id") id: Long): Chiama<Unit>
@REMOVE("events/{id}")
fun deleteEvent(@Path("id") id: Long): Chiama<Unit>
@DELETE("events/{id}")
fun deleteEvent(@Path("id") id: Long): Chiama<Unit>
D13. Quando useresti un sapore di prodotto nella tua configurazione di costruzione?
quando è necessario avere le stringhe dell'app presenti in più lanuage
quando devi fornire versioni diverse della tua app in base alle dimensioni del dispositivo fisico
quando vuoi fornire versioni diverse della tua app in base alla densità dello schermo del dispositivo
quando vuoi fornire una versione diversa della tua app con configurazione e risorse personalizzate
D14. Dato il frammento riportato di seguito, come si otterrebbe l'accesso a un oggetto TextView con un ID di text_home contenuto nel file di layout di una classe Fragment?
private lateinit var textView: TextView
override fun onCreateView(...): View? {
val root = inflator.inflator(R>layout.fragment_home, container, false)
textView = ??
return root
}
root.getById(R.id.text_home)
findViewByID(R.id.text_home)
root.findViewById(R.id.text_home)
root.find(R.id.text_home)
D15. Perché usi AndroidJUnitRunner quando esegui i test dell'interfaccia utente?
Avviso: AndroidJUnitRunner ci consente di eseguire test in stile JUnit3 / 4 su dispositivi Android
Il test runner facilita il caricamento del pacchetto di test e dell'app sottoposta a test su un dispositivo o un emulatore, esegue il test e segnala i risultati.
Il test runner che crea schermate di ogni schermata visualizzata durante l'esecuzione dei test.
Il test runner facilita la parallelizzazione delle classi di test fornendo per ogni classe di test.
Il test runner facilita l'interazione con gli elementi visibili su un dispositivo, indipendentemente dall'attività o dal frammento che ha lo stato attivo.
D16. Cosa consente di ripristinare correttamente lo stato di un utente quando un'attività viene riavviata?
D17. Data la definizione di seguito. come si otterrebbe l'accesso a un TextView con un ID di text_home contenuto nel file di layout thr di una classe Fragment?
root.find(R.id.text_home)
findViewById(R.id.text_home)
root.getById(R.id.text_home)
root.findViewById(R.id.text_home)
D18. SE il thread principale è bloccato per troppo tempo, il sistema visualizza la finestra di dialogo _?
Thread non risponde
Applicazione in pausa
Applicazione non risponde
Applicazione bloccata
D19. Come si recupera il valore dell'e-mail di un utente da SharedPreferences assicurando al contempo che il valore restituito non sia null?
Spiegazione: Nel metodo "getDefaultSharedPrefarances(this).getString()" viene passato il secondo parametro in modo che possa essere restituito, nel caso in cui la chiave non esista. Quindi dobbiamo passare una stringa vuota da restituire nel caso in cui la chiave non esista.
D20. Perché è problematico definire le dimensioni utilizzando i pixel su Android?
Sebbene la densità dei pixel dello schermo vari, ciò non influisce sull'uso dei pixel per definire le dimensioni.
I dispositivi di grandi dimensioni hanno sempre più pixel, quindi gli elementi dell'interfaccia utente saranno e=interessati se li definisci con pixel.
Lo stesso numero di pixel può corrispondere a dimensioni fisiche diverse, influenzando l'aspetto degli elementi dell'interfaccia utente.
Diversi dispositivi hanno una diversa comprensione di cosa sia un pixel , influenzando l'aspetto degli elementi dell'interfaccia utente
D21. È necessario ottenere un elenco di dispositivi collegati al computer con l'abilitazione del debug USB. Quale comando verrebbe eseguito utilizzando Android Debug Bridge?
elenca i dispositivi
dispositivi adb
lista avd
dispositivi dir
D22. Quale definizione disegnabile ti consente di ottenere la forma sottostante?
D23. Per mantenere una piccola raccolta di dati chiave-valore, cosa dovresti usare?
archiviazione file esterna
SharedPereferences
SQLite
memoria file interna
D24. È necessario recuperare un elenco di foto da un'API. Quale frammento di codice definisce una richiesta HTML GET in Retrofit?
@GET("photo/{id}"}
fun listPhotos(@Path("id") id:Long?) : Chiama<Photo>
@LIST("foto")
fun listPhotos() : Call<List<Photo>>
@GET("foto")
fun listPhotos() : Chiama<Photo>
@GET("foto")
fun listPhotos() : Call<List<Photo>>
D25. Data la classe di test riportata di seguito, quale frammento di codice sarebbe un'asserzione corretta?
assertThat(resultAdd).is(2.0)
assertNotNull(resultAdd)
assertThat(resultAdd).isWqualTo(2.0)
assertThat(resultAdd)
D26. Quale tag è necessario utilizzare per aggiungere un componente di visualizzazione riutilizzabile a un file di layout?
<merge/>
<include/>
<layout/>
<add/>
D27. Si desidera fornire un drawable diverso per i dispositivi che sono in modalità orizzontale e la cui lingua è impostata su francese. quale directory è denominata correttamente?
fr-land-drawable
drawable-fr-land
drawable-french-land
francese-terra-disegnabile
D28. Perché potrebbe essere necessario includere l'autorizzazione seguente per la tua app?
android.permission.ACCESS_NETWORK_STATE
per monitorare la posizione dei dispositivi in modo da non tentare di effettuare chiamate di rete quando l'utente è fermo
per richiedere la possibilità di effettuare chiamate di rete dalla tua app
per monitorare lo stato della rete del dispositivo in modo da poter visualizzare un banner in-app per l'utente
per monitorare lo stato della rete dei dispositivi in modo da non tentare di effettuare chiamate di rete quando la rete non è disponibile
D29. Quale immagine corrisponde meglio alla seguente LinearLayout?
D30. Si desidera aprire l'app Dialer predefinita su un dispositivo. Cosa c'è di sbagliato in questo codice?
val dialerIntent = Intent()
val et = findViewById(R.id.some_edit_text)
dialerIntent.action = Intent.ACTION_DIAL
dialerIntent.data = Uri.parse("tel:" + et.getText()?.toString())
startActivity(dialerIntent)
startActivityWithResult() dovrebbe essere usato al posto di startActivity() quando si utilizza Intent.ACTION_DIAL.
Per Intent.ACTION_DIALLe Intent opzione Intent.FLAG_ACTIVITY_NEW_TASK deve essere aggiunto quando si utilizza questo dialerIntent.
Il dialerIntent causerà la visualizzazione di un'eccezione ActivityNotFoundException su dispositivi che non supportano Intent.ACTION_DIAL.
Il permesso android.permission.CALL_PHONE deve essere richiesto prima Intent.ACTION_DIAL può essere utilizzato.
D31. Quando è necessario archiviare i file nella finestra di dialogo /assets directory?
quando è necessario accedere ai nomi dei file e alla gerarchia di file originali (Riferimento)
quando è necessario accedere al file con il suo resource IDcome R.assets.filename
quando si dispone di file XML che definiscono animazioni di interpolazione
quando è necessario accedere al file nella sua forma grezza utilizzando Resources.openRawResource()
D32. Vuoi consentire agli utenti di scattare foto nella tua app. Che è non un vantaggio della creazione di un appropriato intent, invece di richiedere direttamente l'autorizzazione della fotocamera?
Gli utenti possono selezionare le loro app fotografiche preferite per scattare foto.
Non è necessario effettuare una richiesta di autorizzazione nell'app per scattare una foto.
Hai il pieno controllo sull'esperienza utente. L'app che gestisce la fotocamera intent rispetterà le tue scelte progettuali.
Non è necessario progettare l'interfaccia utente. L'app che gestisce la fotocamera intent fornirà l'interfaccia utente.
D33. Quando useresti il ActivityCompat.shouldShowRequestPermissionRationale() funzione?
quando un utente apre per la prima volta la tua app e vuoi fornire una spiegazione per l'uso di una determinata autorizzazione
quando un utente ha precedentemente negato la richiesta di una determinata autorizzazione e seleziona "Dimmi di più"
quando un utente ha precedentemente negato la richiesta di una determinata autorizzazione e si desidera fornire una spiegazione per il suo utilizzo
quando un utente ha precedentemente negato la richiesta di una determinata autorizzazione e ha selezionato "Non chiedere più", ma è necessaria l'autorizzazione per il funzionamento dell'app
D34. Desideri abilitare il monitoraggio analitico solo in release costruisce. Come è possibile creare un nuovo campo nel generato BuildConfig per memorizzare quel valore?
D36. È stato creato il codice per effettuare una chiamata di rete e si è verificato che funzioni nell'ambiente di sviluppo. Tuttavia, quando lo si pubblica nella console di riproduzione, la chiamata di rete non funziona. Cosa sarà non aiutarti a risolvere questo problema?
verifica se ProGuard -keepclassmembers sono stati aggiunti agli oggetti di trasferimento dati di rete (DTO) in questione
utilizzando gli strumenti profiler in Android Studio per rilevare anomalie nell'utilizzo della CPU, della memoria e della rete
verifica della presenza di eccezioni nei registri del server o nella console del server
verifica che l'oggetto di trasferimento dati di rete abbia @SerizlizedName applicato alle relative proprietà membro
D37. Quale snippet di codice raggiungerebbe il layout visualizzato di seguito?
Spiegazione: I filtri intento vengono usati per rendere le attività accessibili ad altre app usando gli intenti. Quindi dobbiamo scegliere l'opzione che non ha alcun filtro intento per assicurarci che non sia accessibile dall'intento
D40. Per preservare la memoria sul dispositivo, come è possibile determinare che il dispositivo dell'utente dispone di funzionalità di archiviazione limitate?
Utilizzare il comando ActivityManager.isLowRamDevice() per scoprire se un dispositivo si definisce come "RAM insufficiente".
Utilizzare il comando Activity.islowRam() per scoprire se un dispositivo si definisce come "RAM insufficiente".
Utilizzare il comando ConnectivityManager.hasLowMemory() per scoprire se un dispositivo si definisce come "RAM insufficiente".
Effettuare una richiesta di download di immagini e controllare l'utilizzo rimanente della memoria del dispositivo.
D41. Cos'è _not_ un buon modo per riutilizzare il codice Android?
Utilizzare un modulo Gradle comune condiviso da diversi progetti Android.
Preferisci creare visualizzazioni o frammenti personalizzati rispetto alle attività.
Preferisci costruire attività invece di frammenti.
Suddividi i layout dell'interfaccia utente in elementi comuni e usa <include/> per includerli in altri file XML di layout.
D42. Qual è il layout migliore per gerarchie grandi e complesse?
LinearLayout
VincoloLayout
FrameLayout
RelativeLayout
D43. È necessario eseguire l'aggiornamento all'ultima versione del plug-in Gradle per Android. Quale file modificare?
%OPTION% Intent(this, AboutActivity::class).also { intent ->
startActivity(intento)
}
Spiegazione: Intent(Context packageContext, Class<?> cls)
Avviso: Classe non KClass
D59. Qual è l'uso del file AndroidManifest.xml?
Descrive il componente dell'applicazione
Dichiara il livello minimo dell'API Android richiesta dall'applicazione
Facilita la fornitura di un nome univoco per l'applicazione specificando il nome del pacchetto
Tutto quanto sopra
D60. Quale attributo dell'elemento <uses-sdk> viene utilizzato per specificare il livello API minimo richiesto per l'esecuzione dell'applicazione?
android:targetSdkVersion
androide: minSdkVersion
androide:maxSdkVersion
Nessuno dei precedenti
D61. Per ridurre il codice nelle build di rilascio, quale strumento utilizza Android Studio?
R8
ProGuard
Termoretraitore
D8
Spiegazione: Quando si compila il progetto utilizzando il plug-in Android Gradle 3.4.0 o versione successiva, il plug-in non utilizza più ProGuard per eseguire l'ottimizzazione del codice in fase di compilazione. Invece, il plugin funziona con il compilatore R8 per gestire
D64. Devi fornire agli utenti alcune funzionalità della tua app on-demand o come esperienze istantanee tramite Google Play. Che tipo di modulo dovresti creare?