android studio 在哪里构建我的 .apk 文件?

Posted

技术标签:

【中文标题】android studio 在哪里构建我的 .apk 文件?【英文标题】:Where is android studio building my .apk file? 【发布时间】:2013-07-16 03:21:18 【问题描述】:

我一直在从头开始重建我的项目,因此存在很多问题。目前,一切正常,除了当我尝试运行应用程序时,我收到消息'本地路径不存在。',本地路径指向路径:androidStudioProjects\MyProject\MyProject..\build\production\MyProject.apk,确实如此,该位置没有 .apk 文件,或者项目文件系统中的其他任何地方都没有。

但是,我可以毫无问题地构建应用程序,并且运行 gradlew packageDebug 会给我消息“构建成功”,因此应该生成 .apks 。我的问题是,它们要去哪里,或者如果它们没有被生成,为什么不呢?

每个模块集的构建路径在哪里?我有点困惑,因为 Project Structure->Facets->Android->Compiler settings、Project Structure->Modules->Paths->Compiler Output、build.gradle 和 MyProject.iml 似乎都与构建路径,但我不太明白它们之间的关系

编辑:我知道它应该在哪里,但它不在那里所以我想知道如何更改构建路径

编辑 2:出于某种原因,运行 gradlew build 确实会创建 .apks,但不会从程序内部构建或运行

编辑 3:这是我的 gradlew 构建输出,请注意它确实构建成功:

Creating properties on demand (a.k.a. dynamic properties) has been deprecated and is scheduled to be removed in Gradle 2.0. Please read http://gradle.org/docs/current/dsl/org.gradle.api.plugins.ExtraPropertiesExtension.html for information on the replacement for dynamic properties.
Deprecated dynamic property: "target" on "com.android.build.gradle.LibraryExtension_Decorated@9e9aabc", value: "android-16".
:TwoWayLib:mergeReleaseProguardFiles UP-TO-DATE
:TwoWayLib:packageReleaseAidl UP-TO-DATE
:TwoWayLib:prepareReleaseDependencies
:TwoWayLib:compileReleaseAidl UP-TO-DATE
:TwoWayLib:generateReleaseBuildConfig UP-TO-DATE
:TwoWayLib:mergeReleaseAssets UP-TO-DATE
:TwoWayLib:compileReleaseRenderscript UP-TO-DATE
:TwoWayLib:mergeReleaseResources UP-TO-DATE
:TwoWayLib:processReleaseManifest UP-TO-DATE
:TwoWayLib:processReleaseResources UP-TO-DATE
:TwoWayLib:compileRelease UP-TO-DATE
:TwoWayLib:processReleaseJavaRes UP-TO-DATE
:TwoWayLib:packageReleaseJar UP-TO-DATE
:TwoWayLib:packageReleaseLocalJar UP-TO-DATE
:TwoWayLib:packageReleaseRenderscript UP-TO-DATE
:TwoWayLib:bundleRelease UP-TO-DATE
:Rogue:prepareRogueProjectTwoWayLibUnspecifiedLibrary UP-TO-DATE
:Rogue:prepareDebugDependencies
:Rogue:compileDebugAidl UP-TO-DATE
:Rogue:generateDebugBuildConfig UP-TO-DATE
:Rogue:mergeDebugAssets UP-TO-DATE
:Rogue:compileDebugRenderscript UP-TO-DATE
:Rogue:mergeDebugResources UP-TO-DATE
:Rogue:processDebugManifest UP-TO-DATE
:Rogue:processDebugResources UP-TO-DATE
:Rogue:compileDebug UP-TO-DATE
:Rogue:dexDebug UP-TO-DATE
:Rogue:processDebugJavaRes UP-TO-DATE
:Rogue:validateDebugSigning
:Rogue:packageDebug
:Rogue:assembleDebug
:Rogue:prepareReleaseDependencies
:Rogue:compileReleaseAidl UP-TO-DATE
:Rogue:generateReleaseBuildConfig UP-TO-DATE
:Rogue:mergeReleaseAssets UP-TO-DATE
:Rogue:compileReleaseRenderscript UP-TO-DATE
:Rogue:mergeReleaseResources UP-TO-DATE
:Rogue:processReleaseManifest UP-TO-DATE
:Rogue:processReleaseResources UP-TO-DATE
:Rogue:compileRelease UP-TO-DATE
:Rogue:dexRelease UP-TO-DATE
:Rogue:processReleaseJavaRes UP-TO-DATE
:Rogue:packageRelease
:Rogue:assembleRelease
:Rogue:assemble
:Rogue:check UP-TO-DATE
:Rogue:build
:TwoWayLib:mergeDebugProguardFiles UP-TO-DATE
:TwoWayLib:packageDebugAidl UP-TO-DATE
:TwoWayLib:prepareDebugDependencies
:TwoWayLib:compileDebugAidl UP-TO-DATE
:TwoWayLib:generateDebugBuildConfig UP-TO-DATE
:TwoWayLib:mergeDebugAssets UP-TO-DATE
:TwoWayLib:compileDebugRenderscript UP-TO-DATE
:TwoWayLib:mergeDebugResources UP-TO-DATE
:TwoWayLib:processDebugManifest UP-TO-DATE
:TwoWayLib:processDebugResources UP-TO-DATE
:TwoWayLib:compileDebug UP-TO-DATE
:TwoWayLib:processDebugJavaRes UP-TO-DATE
:TwoWayLib:packageDebugJar UP-TO-DATE
:TwoWayLib:packageDebugLocalJar UP-TO-DATE
:TwoWayLib:packageDebugRenderscript UP-TO-DATE
:TwoWayLib:bundleDebug UP-TO-DATE
:TwoWayLib:assembleDebug UP-TO-DATE
:TwoWayLib:assembleRelease UP-TO-DATE
:TwoWayLib:assemble UP-TO-DATE
:TwoWayLib:check UP-TO-DATE
:TwoWayLib:build UP-TO-DATE

BUILD SUCCESSFUL

Total time: 10.848 secs

【问题讨论】:

Apk location in New Android Studio 的可能重复项 它应该在那里,如 Alex 解释的那样,否则您可以查看上面的答案。 ***.com/questions/16620366/… 我的在./app/release/app-release.apk 【参考方案1】:

YourApplication\app\build\outputs\apk

【讨论】:

这是新位置。 谢谢 - 我在那里找到了 Android Studios 1.1 根本没有地狱,app文件夹 在较新的版本中,它位于 YourApplication\app\build\outputs\apk*.apk 截至 20 年 1 月:YourApplication/android/app/build/outputs/apk/release/app-release.apk【参考方案2】:

您应该构建您的应用程序而不是调试过程。请按照以下说明操作:

Build -> Build Bundles/APK(s) -> Build APK(s)

【讨论】:

【参考方案3】:

转到 AndroidStudio 项目文件

    选择项目名称, 选择应用程序 选择构建 选择输出 选择 Apk

如果你在 AVD 甚至硬件设备上运行过应用程序,你会在这里找到应用程序的 APK 文件

【讨论】:

奇怪,我用的是Android Studio 3.2,在你说的build目录下,只有intermediates目录,Outputs不见了。 @AllanRuin 您是否构建了 APK? 请详细说明您提到的步骤。【参考方案4】:

在Android Studio中编译我的code后,我在这里找到了:

~\MyApp_Name\app\build\outputs\apk\app-debug.apk

【讨论】:

【参考方案5】:

我在查找调试 apk 时遇到问题。 Android Studio 0.8.6 没有在 project/project/build/ 显示 apk 甚至输出文件夹。当我从 windows 文件夹资源管理器中检查相同的路径 project/project/build/ 时,我在那里找到了“输出”文件夹和其中的调试 apk。

【讨论】:

如果您打开此位置并且“清理项目”=),Explorer 会严重崩溃。 不敢相信我浪费了这么多时间只是因为我忘记了这一点只是因为 Android Studio 并不总是向您显示所有目录...【参考方案6】:

对于 Android Studio:

如果您至少一次没有构建 APK,您可能找不到 /Outputs/APK 文件夹。转到 Android Studio 中的 Build,最后三个选项之一是 Build APK,选择它。然后它将创建该文件夹,您将在那里找到您的 APK 文件。

【讨论】:

以上所有方法对我都不起作用,而这个起作用。在Build APK之后它还会弹出一个对话框告诉你locate你的apk,多么方便!【参考方案7】:

在 android 3.1.0 以上使用下面的路径来查找 APK 的签名版本

home/AndroidStudioProjects/<projedct name>/app/app-release.apk

在窗口中

AndroidStudioProjects\project name\app\release\app-release.apk

【讨论】:

【参考方案8】:

你可以在

project -> app (or your main app module) -> build -> outputs -> apk

【讨论】:

【参考方案9】:

Gradle 构建项目时,会将所有 APK 放在 build/apk 目录中。您也可以在项目的***目录中为 *.apk 执行一个简单的递归查找命令。

这里有一个更好的描述...

在http://i.stack.imgur.com/XwjEZ.png查看完整图片

【讨论】:

该目录在哪里定义?因为我在我的项目filestsyem中的任何地方都找不到任何apk文件 就像在我的编辑中一样 - 我知道它应该在哪里,但它不在那里,所以输出路径可能以某种方式损坏了? 我已经添加了。唯一不可靠的是我的库 TwoWayLib 似乎要构建两次。这并不能解释为什么 android studio 不能构建 apks 我也有同样的问题 - Gradle 和 Android Studio 都没有真正创建 apk 文件。【参考方案10】:

我的应用程序的 apk 位于此位置

C:\Users\haseeb_mir\AndroidStudioProjects\MyTestApp\app\build\outputs\apk\debug

【讨论】:

【参考方案11】:

在我的情况下,要获得调试版本 - 我必须关闭即时运行选项:

文件→设置→构建、执行、部署→即时运行并取消选中启用即时运行。

然后在运行项目后 - 我发现我的构建进入 Application\app\build\outputs\appDebug\apk 目录

【讨论】:

【参考方案12】:

当你有 android studio 制作你签名的 apk 文件时,它会使用

    <property name="ExportedApkPath" value="$PROJECT_DIR$/PROJNAME/APPNAME.apk" />

在 workspace.xml 中找出放置它的位置。但是,如果您使用./gradlew assembleRelease,它会将其放置在 PROJNAME/build/apk 中。我也有同样的问题。出于某种原因,我的 android studio 不会在 apk 子目录中向我显示任何内容,因此 apk 用于所有意图和目的。但是,如果您使用 finder 进行搜索,它肯定会在那里。

【讨论】:

路径:/.idea/workspace.xml 属性:【参考方案13】:

看看this question。

TL;DR:清理,然后构建。

./gradlew clean packageDebug 

【讨论】:

类似的问题,但在我的情况下,运行该命令确实会导致它构建一次,但它仍然无法在 android studio 内部工作。 还是没有创建.apk文件?

以上是关于android studio 在哪里构建我的 .apk 文件?的主要内容,如果未能解决你的问题,请参考以下文章

Android Studio 3.1 未显示构建错误详细信息

我的android studio运行后连接不上AVD,但是运行是没有报错的。不晓得哪里出现了问题,请求大佬的解答

Visual Studio 2013 中的“每个文件”自定义构建步骤在哪里?

android studio 配置文件在哪里

Android Studio:编译器错误输出窗口在哪里?

在Android Studio 3.0中构建PIE和非PIE可执行文件