1、全局获取Context
自定义Application
public class MyApplication extends Application {
private static Context context;
@Override
public void onCreate() {
context = getApplicationContext();
}
public static Context getContext() {
return context;
}
}
在清单文件中配置
<application
android:name="com.example.networktest.MyApplication"
…… >
……
</application>
获取Context
MyApplication.getContext()
2、在LogCat中打印活动名
Log.d("BaseActivity", getClass().getSimpleName());
3、随时退出程序
建立工具类,活动容器ActivityCollector
静态域:List类型的activities
静态方法:addActivity、removeActivity、finishAll
public static void finishAll() {
for (Activity activity : activities) {
if (!activity.isFinishing()) {
activity.finish();
}
}
建立Activity的基类BaseActivity
public class BaseActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.d("BaseActivity", getClass().getSimpleName());
ActivityCollector.addActivity(this);
}
@Override
protected void onDestroy() {
super.onDestroy();
ActivityCollector.removeActivity(this);
}
}
4、启动活动快捷写法
目标Activity
public class SecondActivity extends BaseActivity {
public static void actionStart(Context context, String data1, String data2) {
Intent intent = new Intent(context, SecondActivity.class);
intent.putExtra("param1", data1);
intent.putExtra("param2", data2);
context.startActivity(intent);
}
……
}
启动目标Activity
SecondActivity.actionStart(FirstActivity.this, "data1", "data2");