2012-07-03 13 views
13

Ho un'estensione della classe Application che ho bisogno di ottenere riferimento in un BroadcastReceiver che ho creato. Il contesto passato in "onReceive" è un contesto limitato. C'è un modo per ottenere un riferimento al contesto reale dell'applicazione?Come ottenere il contesto dell'applicazione dal ricevitore broadcast?

+0

Cosa ti fa dire che è limitato. Cosa stai specificatamente cercando di fare con il contesto? – FoamyGuy

+0

Poiché la classe effettiva del contesto per onReceive è di tipo ReceiverRestrictedContext. Possiedo un'estensione dell'applicazione che mi consente di ottenere riferimenti non statici a diversi oggetti di cui ho bisogno. – predhme

risposta

28

chiamata getApplicationContext() sul Context fornito a voi in onReceive(), proprio come si farebbe chiamare getApplicationContext() su un Activity.

Ho un'estensione dell'applicazione che mi consente di ottenere il riferimento non statico a diversi oggetti di cui ho bisogno.

Mentre sintatticamente Application non è statico, ha lo stesso impatto, in particolare per quanto riguarda le perdite di memoria.

+1

Grazie. Ci proverò appena posso rispondere alla tua risposta. – predhme

+0

Questo ha funzionato grazie. Ho giurato che ci ho già provato, ma credo di no. – predhme

0

BroadcastReceiver fornisce già il contesto. Guarda il suReceive.

public void onReceive(Context context, Intent intent) 
Problemi correlati