在开发应用程序时,我多次遇到需要从不扩展 Activity 的类内部执行某些操作(需要上下文为 Activity 类型)的情况。
例如:创建 AlarmManager 事件、创建广播或操作系统服务。
创建一个静态 Activity 作为执行操作的实用程序类是个好主意吗?
好处是可以从整个应用程序类访问它。
另外,我发现我的 self 复制代码从一个 Activity 到另一个 Activity 。
最佳答案
public class MyApplication extends Application {
public static MyApplication instance = new MyApplication();
private static Context context;
@Override
public Context getApplicationContext() {
// TODO Auto-generated method stub
return super.getApplicationContext();
}
@Override
public void onCreate() {
// TODO Auto-generated method stub
super.onCreate();
context = this;
}
public static Context getContext() {
return context;
}
}
您可以简单地通过MyApplication.getContext();
来调用它
并将此标记添加到 AndroidManifest.xml 中,以便在应用程序启动时初始化此类。
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:name="com.example.application.MyApplication"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
关于java - 创建扩展 Activity 的实用程序类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21075290/