Android Studio 创建应用文件夹

Posted

技术标签:

【中文标题】Android Studio 创建应用文件夹【英文标题】:Android Studio creates app folder 【发布时间】:2015-03-08 18:09:45 【问题描述】:

我在装有 OS X 10.9.5 的 MacBook Pro 上使用 android Studio 1.1.0。 当我导入项目(Eclipse)时,我发现源代码放在名为“app”的文件夹下。

好的,到目前为止一切顺利。生成名为 app-debug.apk 和 app-debug-unaligned.apk 的项目构建和 .apk 文件。它们在模拟器和目标设备(三星 Galaxy S5)上运行良好。

我想重命名 app 文件夹以及 .apk 文件。 项目名称为 tcpcommclient。我想将模块名称“app”更改为“TCP_Client”。 (不确定我是否可以这样做)。

我在***中发现了以下内容:

Why is my APK name generic?

如果我更改了文件夹名称(应用程序),我也应该更改 settings.gradle。我做到了,但没有用。我不断得到:

  Error:Android Source Generator: [tcpcommclient] AndroidManifest.xml file not found

我在我的项目中查看了 ":app" 的实例并找到了三个:

workspace.xml
settings.gradle
app.imi

在其中我更改为“:TCP_Client”。我还注意到 app.imi(应该手动重命名?)仍在 TCP_Client 下。

还会发生的情况是,即使我手动删除了文件夹“app”,它似乎也是由 Android Studio 创建的。那里还创建了另一个 app.imi 文件,其中包含以下文本:

<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
  <component name="NewModuleRootManager" inherit-compiler-output="true">
    <exclude-output />
    <orderEntry type="sourceFolder" forTests="false" />
  </component>
</module>

似乎我为这个项目配置了 Android Studio,以便它想要查看“app”文件夹下的源代码和 AndroidManifest.xml。

有没有办法将名称“app”更改为另一个名称(即“TCP_Client”)并将其作为 .apk 文件的名称?

提前致谢。 吉姆

【问题讨论】:

是的,同样的问题。最后我使用“app”:(我尝试使用重命名进行重构,但有时关闭并再次打开项目时会出现错误。我的建议是保留“app”。 谢谢。我还尝试通过使用“app”文件夹的 ProjectStructure>ProjectSettings>Modules>tcpcommclient>Sources>Exluded 设置(红色文件夹)来排除“app”文件夹。我仍然被告知 AndroidManifest.xml 文件丢失,即使它确实存在于 TCP_Client 下。 【参考方案1】:

要重命名模块:

将文件夹从 app 重命名为 TCP_Clientsettings.gradle 中,将include ':app' 替换为include ':TCP_Client'

然后将项目与 Gradle 文件重新同步。

【讨论】:

这不起作用。重新同步后,Studio 根本找不到任何模块。 通常这个解决方案必须有效,但我认为你错过了一些我不记得的东西 我尝试了推荐的方法。它没有用。 @JimCzek 清理缓存,删除 .idea 文件夹并应用 Niek 建议的设置重新导入项目。 @Gariele:谢谢!从项目的新导入开始(从 Studio 中删除旧的导入并删除 HD 上的文件夹),这是可行的:我导入了项目。删除了 .idea 和 gradle。将“app”重命名为“TCP_Client”。按照说明修改了 settings.gradle。同步并重建。 .apk 文件现在根据需要重命名。当我将来导入项目时,我会提前完成这些步骤。吉姆【参考方案2】:

这是因为 Android Studio 是 IntelliJ IDEA 的精简版,仅允许您创建 Gradle 项目,而 Gradle 插件还远未准备好迎接黄金时段。

最简单的做法就是使用成熟的产品,例如 IDEA 或 Eclipse。但是,如果您必须使用 Studio,知道app 实际上是它创建的 Gradle 模块的名称,而无需询问您的名称,这很有用。 如果您想要一个不同的名称,请使用您想要的名称创建另一个模块,然后删除 app 模块。

【讨论】:

Android studio 和 gradle 非常棒,已经为黄金时段做好了充分准备,而 1.1 则变得更好:-) 我能够重命名模块和 .apk 文件。以下是我所做的以及原因: 我能够重命名模块和 .apk 文件。这是我所做的以及为什么:我将在 TCP_Client 下生成的 app.imi 文件复制到位于“app”文件夹下的 app.imi 文件中。我认为 Android Studio 已绑定并决定在 app 文件夹(它创建)下查找 imi 文件,所以我不妨让它查看具有我想要的设置的有效 imi 文件。我同步并重建了项目。之后app文件夹下没有app.imi文件,apk文件命名为TCP_Client-debug.apk。 @JimCzek 重启 Studio 后是否正确打开?这似乎是 Studio 中基本功能的许多复杂“解决方案”的症结所在。 @Kevin:我不得不说我不认为我在每次迭代后都停止了 Studio,试图找到解决方案。我将完成一个名为“TCP_Server”的项目的重命名过程。我将再次尝试推荐的方法,但请确保我退出 Studio。我会在这里发布结果。谢谢。

以上是关于Android Studio 创建应用文件夹的主要内容,如果未能解决你的问题,请参考以下文章

android studio创建的工程目录下的gradlew文件有啥作用

Android 11使用Android Studio调试系统应用:构建SettingsSettingsLib项目文件

通过 Android Studio 安装的 Android 应用不会独立安装

android studio jar 文件是红色的?

使用Android Studio调试系统应用之TvSettings:移植

android studio 怎么创建资源文件