我的Android应用程序在显示布局之前启动服务

时间:2016-01-11 12:21:00

标签: android layout service

我正在编写Android应用程序,这是代码

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    startService(new Intent(getBaseContext(), ttt.class));
}

ttt是类扩展服务,每隔15分钟一直显示一个Dialog 当它开始时,它首先等待15分钟并显示对话框,然后它将显示布局。

setContentView(R.layout.activity_main);startService(new Intent(getBaseContext(), ttt.class));之前 为什么它不首先显示布局,而是首先启动服务?

如何首先显示布局,然后在15分钟后显示对话框?

2 个答案:

答案 0 :(得分:0)

首先请将您的服务ttt重命名为某个正确的名称。您可以在onCreate中启动AlarmManager。

Intent intent = new Intent(getBaseContext(), ttt.class);
PendingIntent pintent = PendingIntent.getService(getBaseContext(), 0, intent, 0);
AlarmManager alarm = (AlarmManager)getSystemService(Context.ALARM_SERVICE);
alarm.setRepeating(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), 15*60*1000, pintent);

答案 1 :(得分:0)

您可以使用处理程序。 尝试类似的事情:

new Handler().postDelayed(new Runnable() {
                  @Override
                  public void run() {

                      Intent i=new Intent(MainActivity.this,ttt.class);
                      startActivity(i);
                  }
              }, 900000);

希望有所帮助