android中的全局对象非常类似于javaWeb中的Application域,除非是android应用程序清楚内存,否则全局对象将一直可以访问。
android中有一个application类,是基类。创建自己的应用的时候需要继承这个基类,并实现onCreate方法,该方法在application被调用的时候就会启动。
创建自己的application类:
package com.example.intent;
import android.app.Application;
public class MyApp extends Application {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
/**
* @param args
*/
@Override
public void onCreate() {
// TODO Auto-generated method stub
super.onCreate();
this.name="mayi";
this.age=23;
}
}
创建了自己的app后,必须在AndroidManifest.xml中定义自己的应用,
<application
android:name=".MyApp" //定义自己的app
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
在其他activity中调用app:
package com.example.intent;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;
public class OtherActivity extends Activity {
private MyApp myapp;
private TextView textview;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.other);
textview = (TextView)this.findViewById(R.id.msg);
myapp = (MyApp)getApplication(); //获得APP
textview.setText("name: "+myapp.getName()+"\n"+"age: "+myapp.getAge());
}
}