Android应用程序onCreate()被称为迟到

时间:2016-04-26 02:33:34

标签: android initialization delay launch

我已经在我的一个Android应用程序中对Application类进行了分类,我在onCreate()方法中进行了一些应用程序级初始化工作。

从应用程序日志中我可以看到在onCreate方法中完成的实际初始化工作只需要大约200毫秒。

但是,在调用Application.onCreate()方法之前,单击启动器中的应用程序图标需要大约10到15秒。我设备上的其他应用程序启动速度足够快,因此我不怀疑内存限制。

有什么建议吗?

public class MyApplication extends Application
{
    private static String TAG = "MyApplication";

    // Class member variables

    @Override
    public void onCreate()
    {
        Log.d(TAG, "Its taking 10-15 seconds to reach here");
        super.onCreate();

        Log.d(TAG, "Perform application specific Initialize work");
        .
        .
        // Init AsyncTasks
        .
        .
        Log.d(TAG, "Application specific Initialize completed");
    }
}

更新

我在应用程序级别使用Facebook,Google Plus,LinkedIn等许多SDK来访问各种类和服务。尽管使用AsyncTasks执行初始化,但我已在Application类中为相应的SDK对象定义了成员变量。可能在SDK中的某些构造函数中执行了一些长时间的工作。无论如何,我要彻底优化应用程序,包括体系结构和依赖数量。

此外,更新了所有库以处理任何错误。

我完成后会发布结果。

0 个答案:

没有答案