繁体   English   中英

如何等待直到意图执行在Android中完成

[英]How to wait till the intent execution is completed in android

我正在以编程方式从另一个应用程序调用一个应用程序,如下所示:

Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setComponent(new ComponentName(packageString,classApp));
mActivity.startActivity(intent, 2);

我想等到Intent应用执行完成并关闭。

我尝试使用startActivityForResult(intent,2)。 但是此操作似乎有效,因为它没有在实际的活动类中调用onActivityResult。我在非活动类中调用了Intent。

Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setComponent(new ComponentName(packageString,classApp));
setResult(2,intent);

onActivityResult check this.

if(requestCode == 2){

Log.v(TAG ,"Result is Received");
}


please check log in logcat.

我想等到Intent应用执行完成并关闭。

这是不可能的。 您没有办法知道“应用程序执行已完成并关闭”的时间,特别是因为您正在新任务中启动该活动。 例如:

  • 您开始其他活动。
  • 用户按下RECENTS,然后通过概述屏幕返回到您的应用。
  • 怎么办? 用户无需执行任何操作即可“完成并关闭”该其他应用。

欢迎您使用生命周期方法(例如onStart()来确定您正在收回控制权,但这并不意味着“应用程序执行已完成且已关闭”。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM