10

Sto provando a utilizzare la videocamera Android, per API 23 o versioni successive, richiede il permesso in fase di runtime. Secondo lo documentation, posso farlo usando, ActivityCompat o ContextCompat. Non capisco quali sono le differenze tra i due e i loro trade-off.Qual è la differenza tra ActivityCompat e ContextCompat?

Grazie per il tempo.

+1

ActivityCompat estende ContextCompat – tachyonflux

+1

Aggiunta informazioni utili [qui] (https://inthecheesefactory.com/blog/things-you-need-to-know-about en -android-m-permission-developer-edizione /). Chiaro e breve. –

risposta

13

Non capisco che cosa sono la differenza tra i due ed i loro compromessi

Non c'è nessun trade-off davvero. Non sono sicuro del motivo per cui l'hanno scritto: ContextCompat è un metodo e è sottoclasse (figlio) di ContextCompat in modo da poter passare uno qualsiasi quando è richiesto l'oggetto della classe ContextCompat.

gerarchia di ereditarietà (docs):

enter image description here

+0

Grazie Marcin! Hai risposto alla mia domanda. Non sapevo che ActivityCompat fosse un figlio diretto di ContextCompat. – Antuan

+1

Felice di averlo aiutato. Ma puoi sempre controllare la gerarchia delle classi nella documentazione di ogni classe, cioè controlla [Documenti ActivityCompat] (https://developer.android.com/reference/android/support/v4/app/ActivityCompat.html) e vedi (in alto) che estende 'ContextCompat' che estende' Object'. –

+0

L'ho appena fatto. Non l'avevo notato. molte grazie ancora :-) – Antuan

Problemi correlati