From 6b70ebc80d10bf16886f16c7feec4160321a1397 Mon Sep 17 00:00:00 2001 From: Eugene Kudelevsky Date: Fri, 13 Jul 2012 22:52:14 +0400 Subject: [PATCH] IDEA-65774 open generated apk in file manager --- .../android/exportSignedPackage/ApkStep.java | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/plugins/android/src/org/jetbrains/android/exportSignedPackage/ApkStep.java b/plugins/android/src/org/jetbrains/android/exportSignedPackage/ApkStep.java index 4943dcc8a430..4e674dee5306 100644 --- a/plugins/android/src/org/jetbrains/android/exportSignedPackage/ApkStep.java +++ b/plugins/android/src/org/jetbrains/android/exportSignedPackage/ApkStep.java @@ -18,6 +18,9 @@ package org.jetbrains.android.exportSignedPackage; import com.android.sdklib.SdkConstants; import com.intellij.CommonBundle; +import com.intellij.ide.IdeBundle; +import com.intellij.ide.actions.RevealFileAction; +import com.intellij.ide.actions.ShowFilePathAction; import com.intellij.ide.util.PropertiesComponent; import com.intellij.ide.wizard.CommitStepException; import com.intellij.openapi.application.ApplicationManager; @@ -248,10 +251,23 @@ class ApkStep extends ExportSignedPackageWizardStep { ApplicationManager.getApplication().invokeLater(new Runnable() { public void run() { String title = AndroidBundle.message("android.export.package.wizard.title"); + final Project project = myWizard.getProject(); + if (!runZipAlign) { - Messages.showWarningDialog(myWizard.getProject(), AndroidBundle.message("cannot.find.zip.align"), title); + Messages.showWarningDialog(project, AndroidBundle.message("cannot.find.zip.align"), title); + } + final File apkFile = new File(apkPath); + + if (ShowFilePathAction.isSupported()) { + if (Messages.showOkCancelDialog(project, AndroidBundle.message("android.export.package.success.message", apkFile.getName()), + title, RevealFileAction.getActionName(), IdeBundle.message("action.close"), + Messages.getInformationIcon()) == Messages.OK) { + ShowFilePathAction.openFile(apkFile); + } + } + else { + Messages.showInfoMessage(project, AndroidBundle.message("android.export.package.success.message", apkFile), title); } - Messages.showInfoMessage(myWizard.getProject(), AndroidBundle.message("android.export.package.success.message", apkPath), title); } }, ModalityState.NON_MODAL); }