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


103

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

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

每个模块集的构建路径在哪里?我有些困惑,因为项目结构-> Facets-> Android->编译器设置,项目结构->模块->路径->编译器输出,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


它应该在那里,如Alex所述,否则您可以检查上面的答案。
2013年


我的位置在./app/release/app-release.apk
史蒂夫·史密斯

Answers:



23

转到AndroidStudio项目文件

  1. 选择项目名称,
  2. 选择应用
  3. 选择构建
  4. 选择输出
  5. 选择APK

如果您已在AVD甚至硬件设备中运行过该应用程序,则可以在此处找到该应用程序的APK文件


奇怪,我在使用Android Studio 3.2,在您提到的构建目录中,只有intermediates目录,Outputs缺少目录。
艾伦·鲁恩

@AllanRuin您是否建立了APK?
kelalaka

请详细说明您提到的步骤。
Shubham Arya


17

您应该构建您的应用程序而不是调试过程。只需遵循以下步骤:

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

在此处输入图片说明


11

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


如果您打开了该位置并且'clean project'=,则资源管理器将非常崩溃
56 Tapirboy

不敢相信我浪费了这么多时间,只是因为我忘记了那是因为Android Studio并不总是向您显示所有目录...
Jon McClung 2016年

9

对于Android Studio:

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


以上所有内容都不适合我,而这一功能却可以。之后Build APK,还会弹出一个对话框,告诉locate您apk,多么方便!
吴锡隆'18

5

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

这是一个更好的描述...

http://i.stack.imgur.com/XwjEZ.png

查看完整图像,网址http://i.stack.imgur.com/XwjEZ.png


该目录在哪里定义?因为我无法在项目文件的任何位置找到任何apk文件,所以它们就成了问题
Migwell 2013年

就像在我的编辑中一样-我知道应该在哪里,但它不在那里,所以也许输出路径以某种方式被破坏了?
米格威尔,2013年

我加了 唯一令人毛骨悚然的是,我的图书馆TwoWayLib似乎在建两次。但这并不能解释为什么android studio无法构建APK
Migwell

我也有同样的问题-Gradle和Android Studio都没有实际创建apk文件。
理查德·罗素

5

我的应用程式的APK位于这个位置

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


3

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

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

和在Windows中

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

2

就我而言,要获取调试版本-我必须关闭“即时运行”选项:

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

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


0

看一下这个问题

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

./gradlew clean packageDebug 

1
类似的问题,但就我而言,运行该命令确实会使它生成一次,但仍然无法在android studio内部运行。
米格韦尔

1
它仍然不创建.apk文件吗?
alikonda

0

当您拥有android studio时,请使用已签名的apk文件

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

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


0

您可以在

project -> app (or your main app module) -> build -> outputs -> apk
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.