我从这样的 BroadcastReceiver 启动服务

Intent service = new Intent(context, MyService.class);
context.startService(service);

String s = "Hello World";
MyService.addString(s);

addString 是一个静态函数,它将字符串添加到 ListView。现在我遇到的问题是,在 MyService onCreate() 运行时调用此函数并且 ListView 未初始化。我该怎么做才能等到 onCreate 方法完成?

最佳答案

有一个指南描述了 Android http://developer.android.com/training/basics/activity-lifecycle/starting.html 中的 Activity 生命周期
onStart 方法在 onCreate 完成后立即调用。

换句话说,从 Activity 的 onStart 方法启动您的服务。

    @Override
    protected void onStart() {
        super.onStart();
        // start service
    }

关于android - 等到 onCreate 完成,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15326291/

10-12 02:35