2012-03-22 15 views
10

Ho letto sull'oggetto applicazione nel sito di Android ma non ho potuto capire.oggetto applicazione Android

Che cos'è l'oggetto dell'applicazione Android?
Qual è l'uso di oggetto applicazione
Quando dovremmo usare oggetto applicazione

Si prega di spiegare con l'esempio.

Grazie.

risposta

21

L'oggetto dell'applicazione è un oggetto il cui ciclo di vita è uguale alla nostra applicazione.

All'avvio dell'applicazione questo oggetto viene creato automaticamente da Android Framework.

Quando si desidera condividere dati tra più attività della propria applicazione o si desidera conservare qualcosa a livello di applicazione. In tale scenario è possibile utilizzare l'oggetto Applicazione come un archivio globale per l'applicazione.

Esempio ::

// this is your Application Object Class 
public class MyApplication extends Application{ 
} 

Nella tua menzione manifesta nel modo seguente ::

<application android:name="yourpkgname.MyApplication"/> 

Per accedere oggetto applicazione in uno qualsiasi dei activities.Use il seguente codice.

MyApplication app = (MyApplication) getApplication(); 

Penso che questo sia abbastanza per afferrare il concetto di oggetto dell'applicazione.

+0

Grazie per la risposta. ma possiamo fare la stessa cosa con l'aiuto della variabile statica. Non è vero? – user861973

+3

Classe applicazione che è possibile utilizzare non solo per mantenere la variabile statica, ma si ha un riferimento ad essa sulla classe di attività e passa le variabili dinamiche. – goodm

+0

Sì, hai ragione, googdm. –

5
q1. What is an Android application Object? 

A. Secondo docs sviluppatori oggetto applicazione Android è

"Classe di base per coloro che hanno bisogno di mantenere lo stato di applicazione globale. È possibile fornire la propria implementazione specificandone il nome nella tag di AndroidManifest.xml, che farà sì che classe da un'istanza per voi quando il processo per l'applicazione/pacchetto è creato"

q2. What is the use of Application Object? 

A. La classe Application viene utilizzata principalmente per alcuni callback a livello di applicazione e per il mantenimento dello stato di Global Application.

Quindi, in pratica qui è un'idea attuativa

public class MyApp extends Application { 

@Override 
public void onConfigurationChanged(Configuration newConfig) { 
    super.onConfigurationChanged(newConfig); 
} 

@Override 
public void onCreate() { 
    super.onCreate(); 
} 

@Override 
public void onLowMemory() { 
    super.onLowMemory(); 
} 

@Override 
public void onTerminate() { 
    super.onTerminate(); 
} 

}

q3. When should you use Application Object? 

A.When si desidera memorizzare i dati, come le variabili globali che devono essere accessibili da molteplici attività, a volte in tutto il mondo entro l'applicazione. In questo caso, l'oggetto Application ti aiuterà.

3

Si supponga di avere una classe Application chiamata MyMainApp.Classe Quindi è possibile utilizzarlo in questo modo:

private MyMainApp my; 

@Override 
public MyActivity (Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    my = (MyMainApp)getApplication(); 
} 

e ora è possibile utilizzare il "mio" oggetto per impostare o ottenere variabili che si desidera condividere con altre attività.