Android Studio 3.1生成的apk/aar文件存储位置及丢失问题咨询
Android Studio 3.1中APK/AAR文件的存储位置解答
嘿,我来帮你理清这个升级后遇到的文件位置问题!
App项目的APK位置
- 开启Instant Run时:Android Studio 3.1里Instant Run为了实现快速部署,会把生成的调试APK放在
build\intermediates\instant-run-apk\debug(release版本对应release子目录),这就是你目前看到的路径。 - 想要获取完整标准APK:你可以关闭Instant Run(路径:
File > Settings > Build, Execution, Deployment > Instant Run,取消勾选Enable Instant Run to hot swap code/resource changes on deploy),之后重新执行Build > Generate Signed APK或者Build > Make Project,完整的APK就会回到熟悉的build\outputs\apk\debug(或release)目录。 - 手动执行Gradle任务:像你之前操作的
assembleDebug/assembleRelease这类任务,生成的本来就是完整APK,所以会直接存放在build/outputs/apk/[variant]目录下,和旧版本一致。
库项目的AAR位置
库模块的AAR文件其实还是保留在传统路径,只是有时候AS的文件浏览器没及时刷新,导致你找不到:
- 标准存储路径:
build\outputs\aar,对应不同变体(debug/release)的AAR文件会命名为[你的库模块名]-debug.aar或[你的库模块名]-release.aar。 - 找不到时的解决办法:
- 执行Gradle任务:在Gradle面板找到你的库模块,展开
Tasks > build,双击assembleDebug或assembleRelease,生成对应变体的AAR后再去目录查看。 - 清理重建:先执行
Build > Clean Project,再执行Build > Rebuild Project,清空缓存后重新生成的AAR就会出现在build\outputs\aar里。
- 执行Gradle任务:在Gradle面板找到你的库模块,展开
简单总结下:Instant Run是导致APK路径变化的核心原因,而库模块的AAR位置没改,只是偶尔需要手动触发生成或刷新目录才能看到。
内容的提问来源于stack exchange,提问作者Nilay Dani




