如何访问应用程序的开始(不是 Activity)
How to access a start of Application (not Activity)
我需要在应用程序启动时实现非常具体的代码。
我的意思是,不是在 activity(onCreate() 或 onStart())的开始,而是在应用程序的开始。
我有一个对我不利的解决方案,即有一个名为 "MyBaseActivity" 的基础 activity,然后在我的所有活动中从它扩展。
这个方案对我来说不好,因为这个方案让我在每个activity的onCreate中只能做一件特定的事情activity(我讲的具体代码),这不是我想要的。
我希望每个 activity 能够根据他们的 onCreate() 函数做不同的事情,并且除了做我上面谈到的特定代码。
因此,我需要访问应用程序的启动,或者您有其他解决方案。
谢谢!
I need to implement very specific code in the start of the application.
每次 Android "gets a request" 启动您的任何应用程序组件时(Activity, Service, BroadcastReceiver) 而你的应用还不是 运行,它分叉了 app_process
(a.k.a zygote
),将其名称更改为 AndroidManifest.xml 中定义的 your.package.name
,初始化一个 Application实例,调用它的onCreate()
方法,然后实例化请求的组件并调用它的生命周期方法(Activity的onCreate()
, Service 的 onCreate()
或 BroadcastReceiver 的 onReceive()
).
只有一个 Application
class 的实例存在,直到应用进程结束。也就是说,您在 extended Application
class 中创建的任何 class 个实例也将一直存在,直到应用程序进程被系统终止。
当您的 application/package 的进程是创建。
您需要扩展应用程序 class.
public class AppApplication extends Application{
@Override
public void onCreate() {
super.onCreate();
//Do whatever you want
}
}
并且这个 AppApplication class 应该包含在清单文件中。
<application
android:allowBackup="true"
android:name=".AppApplication"
android:icon="@mipmap/ic_launcher"
我需要在应用程序启动时实现非常具体的代码。
我的意思是,不是在 activity(onCreate() 或 onStart())的开始,而是在应用程序的开始。
我有一个对我不利的解决方案,即有一个名为 "MyBaseActivity" 的基础 activity,然后在我的所有活动中从它扩展。 这个方案对我来说不好,因为这个方案让我在每个activity的onCreate中只能做一件特定的事情activity(我讲的具体代码),这不是我想要的。
我希望每个 activity 能够根据他们的 onCreate() 函数做不同的事情,并且除了做我上面谈到的特定代码。
因此,我需要访问应用程序的启动,或者您有其他解决方案。
谢谢!
I need to implement very specific code in the start of the application.
每次 Android "gets a request" 启动您的任何应用程序组件时(Activity, Service, BroadcastReceiver) 而你的应用还不是 运行,它分叉了 app_process
(a.k.a zygote
),将其名称更改为 AndroidManifest.xml 中定义的 your.package.name
,初始化一个 Application实例,调用它的onCreate()
方法,然后实例化请求的组件并调用它的生命周期方法(Activity的onCreate()
, Service 的 onCreate()
或 BroadcastReceiver 的 onReceive()
).
只有一个 Application
class 的实例存在,直到应用进程结束。也就是说,您在 extended Application
class 中创建的任何 class 个实例也将一直存在,直到应用程序进程被系统终止。
当您的 application/package 的进程是创建。 您需要扩展应用程序 class.
public class AppApplication extends Application{
@Override
public void onCreate() {
super.onCreate();
//Do whatever you want
}
}
并且这个 AppApplication class 应该包含在清单文件中。
<application
android:allowBackup="true"
android:name=".AppApplication"
android:icon="@mipmap/ic_launcher"