Android 活动等待意图

Android 活动等待意图,android,android-intent,wait,Android,Android Intent,Wait,我想做的事 大家好,我正在尝试创建一个SplashScreen,它可以启动一个基于意图的服务。服务启动后,活动(SplashScreen)应等待,直到收到我的服务的意向 问题 我需要做什么,让我的活动等待,直到它收到来自我的服务的意图。如果你能给我提供一个好的教程或一些代码片段,那就太好了。 在这里你可以找到我的飞溅屏幕的代码 代码 package de.stepproward; 导入de.stepfroward.service.VideoService; 导入android.app.Ac

我想做的事


大家好,我正在尝试创建一个SplashScreen,它可以启动一个基于意图的服务。服务启动后,活动(SplashScreen)应等待,直到收到我的服务的意向

问题


我需要做什么,让我的活动等待,直到它收到来自我的服务的意图。如果你能给我提供一个好的教程或一些代码片段,那就太好了。 在这里你可以找到我的飞溅屏幕的代码

代码


package de.stepproward;
导入de.stepfroward.service.VideoService;
导入android.app.Activity;
导入android.content.Intent;
导入android.os.Bundle;
公共课堂活动扩展了活动{
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.splash);
//Sagt dem视频服务作为一种全新的服务
//录像带herunter zu laden
Intent LoadVideos=新Intent(这个,VideoService.class);
LoadVideos.putExtra(“视频服务”、“启动”);
startService(加载视频);
//在这个线程中,我希望它等待我的意图
//然后再进行下一个活动
线程飞溅线程=新线程(){
@凌驾
公开募捐{
试一试{
int=0;
等待时间(等待时间<3000){
睡眠(100);
平均值+=100;
}
}
捕捉(中断异常e){
//无所事事
}
最后{
完成();
最终意图Showvideo=新意图(SplashActivity.this、,
通道测试(类);
startActivity(Showvideo);
}
}
};
splashtread.start();
}
}

请查看此链接,它可能会对您有所帮助。您可以从活动中监视服务状态


启动服务不会影响前台屏幕。所以启动splashscreen并启动服务,就像您现在所做的一样。在服务中执行操作,然后启动新的活动表单服务本身。

以下是您的体系结构的外观:

INTENT\u CST


喷溅活动


在onCreate中:

startService(new Intent(START_INIT_ACTION)
在onResume中:
如果您选择在服务中发送广播:

registerReceiver(new BroadcastReceiver(){
    //implement onChange()},
    new IntentFilter(INIT_ENDED_ACTION));
在onPause中,注销接收器以释放内存

加载服务


扩展AsyncTask以完成后台工作。在onPostExecute中,有2个选项:

startActivity(new Intent(...)) // as your doing in your post

您的清单



声明带有
意图过滤器的服务加载服务是个好主意,但是splashscreen不可能等待意图吗?之后,通过SplashScreen=)启动活动
registerReceiver(new BroadcastReceiver(){
    //implement onChange()},
    new IntentFilter(INIT_ENDED_ACTION));
startActivity(new Intent(...)) // as your doing in your post
sendBroadcast(new Intent(INIT_ENDED_ACTION)); stopSelf();