È context.getSystemService()
una chiamata costosa?Context.getSystemService() è una chiamata costosa?
I.e. Ho creato una piccola libreria di rete http (so che ci sono altre librerie di rete http disponibili) che usa ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
per verificare (prima di eseguire una richiesta http) se l'utente è connesso a Internet (tipo strategia di fail fast).
La mia domanda è: devo salvare lo ConnectivityManager
come variabile di istanza (campo classe) della mia libreria http o dovrei chiamare ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
ogni volta prima di avviare una richiesta http per recuperare un "nuovo" ConnectivityManager? È la stessa istanza ConnectivityManager restituita ogni volta che chiamo getSystemService(Context.CONNECTIVITY_SERVICE)
(in altre parole, la memorizzazione di un ConnectivityManger in un campo classe può causare problemi poiché la mia libreria http è una vita lunga -> vivi finché viene eseguita l'applicazione)