相关疑难解决方法(0)

按下HOME按钮后,在没有5秒延迟的情况下从服务启动活动

我遇到了此Android问题中描述的问题:http: //code.google.com/p/android/issues/detail?id = 4536

简单地说,按下HOME按钮后,android会阻止服务和广播接收器调用startActivity 5秒钟.

我也注意到了(理论上),具有以下许可:

"android.permission.STOP_APP_SWITCHES"
Run Code Online (Sandbox Code Playgroud)

允许您调用resumeAppSwitches(在ActivityManagerService中定义).查看最新版本的ActivityManagerService,将删除此代码.

问题:如何在没有5秒延迟的情况下使用startActivity启动活动?

android

36
推荐指数
2
解决办法
2万
查看次数

从服务开始活动需要太长时间

我有一个Service当一个函数给我true时它将启动一个新的Activity但它需要5秒...

我已经读过这个issue,我在StackOverflow这个例子中找到了"避免"这个bug.

Intent intent = new Intent(this, MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, 0);
try {
   pendingIntent.send();
} catch (PendingIntent.CanceledException e) {
   e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)

但遗憾的是它没有Activity更快启动,我不需要处于初级状态(如果可能的话更好),但是我不想等待+5秒来启动新功能Activity,你是否知道要避免这种情况?

我正在使用,PendingIntent因为我发现那个人说它应该解决这个问题: 在没有5秒延迟的情况下按下HOME按钮后从服务启动一个活动

注意

如果我按下back button它会自动启动它,0延迟,但我正在按下它home button.

service android android-intent android-activity

7
推荐指数
1
解决办法
1986
查看次数