这是个开发中非常基础的问题,可自己写出来感觉表达的不太好,请大家见谅
一个Android应用,启动时或者初次安装需要配置一些系统文件,也就是应用程序的初始化。
初始化自然是在程序的入口处配置,关于Android应用的入口,可以在AndroidManifest.xml配置文件中找到
<category android:name="android.intent.category.LAUNCHER" />
其中这行代码表示整个应用程序的启动activity,即应用默认打开,所以可以在这个activity中进行初始化,比如新建文件夹,新建数据库,检测新版本之类的工作
觉得这个做法虽然可行,但启动页activity并不是真正程序的入口,分析配置文件一个应用 中每个activity都只是application的子页面,每个activity都对应一个类,可是Application对应的类在哪呢,这个需要需要我们自己创建,并继承自初Application
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme"
android:name="InstallApk" >
<activity
android:name="cn.keno.installapk.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
/**
* 应用程序入口:注意类名必须和配置文件中application的name值一致
* @author Keno
*
*/
public class InstallApk extends Application {
@Override
public void onCreate() {
super.onCreate();
Log.i("Application", "Application start");
}
}
同时也在MainActivity中执行打印,观察打印结果,可以证明是先启动Application