2

我想知道我们能否关闭用于在活动结果后打开隐式意图的应用程序(Adobe reader for Pdf,DocumentsToGo for PPt),例如:

 File file = ClassName.this.getFileStreamPath(fileName);
            file.setReadable(true, false);
            Uri path = Uri.fromFile(file);
            contId = contentId[position];
            Intent intent = new Intent(Intent.ACTION_VIEW);
            intent.setDataAndType(path, "application/pdf");
            try {
                startTime = System.currentTimeMillis();
                startActivityForResult(intent, 6002);

            } catch (ActivityNotFoundException e) {
                Toast.makeText(Introduction.this,
                        "No Application Available to View PDF",
                        Toast.LENGTH_SHORT).show();}

用于查看 pdf,当我按下后退按钮时,我得到 onactivityResult 但之后如果我最小化我的应用程序,adobe reader 将继续在后台打开,我可以在任务管理器中看到带有打开文件的 adobe。对不起,如果我的问题不清楚。答案将不胜感激。

protected void onActivityResult(int requestCode, int resultCode, Intent data) {

        super.onActivityResult(requestCode, resultCode, data);

        if (requestCode == 6002) {
            endTime = System.currentTimeMillis();
            duration = endTime - startTime;
            durationString = "" + duration;
            save();
            finish();
        }
}
4

2 回答 2

0

如果没有 root 访问权限,就无法杀死另一个应用程序(并且有很好的理由)。

但是您可以尝试将 exclude from recents 标志添加到意图中。就用户能够看到它而言,这可能会使它更加安静。

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(path, "application/pdf");
intent.addFlag(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
于 2014-02-27T00:28:53.910 回答
0

当我退出应用程序时

Android中没有“退出应用程序”。

我可以在应用程序管理器中看到 adobe

我不知道您认为“应用程序管理器”是什么。但是,应用程序进程即使在离开前台后仍然运行是完全正常的。Android 这样做是为了提高效率,以防用户选择立即返回该应用程序,因此它不必浪费时间和电池来设置另一个进程。Android 将在需要时终止后台进程,以便为其他进程释放系统 RAM。

因此,您无需执行任何操作。

于 2013-08-16T13:52:51.887 回答