Android项目文件夹结构

Android Studio 是由 JetBrains 社区开发的官方 IDE(集成开发环境),由 Google 免费提供,用于开发 Android 应用程序。完成 Android 架构设置后,我们可以在工作室中创建一个 android 应用程序。我们需要为每个示例应用程序创建一个新项目,并且我们应该了解文件夹结构。它看起来像这样:

android 项目包含不同类型的应用程序模块、源代码文件和资源文件。我们将探索 android 应用程序中的所有文件夹和文件。  

  1. 清单Manifests文件夹
  2. Java 文件夹
  3. res(资源)文件夹
    • 可绘制Drawable文件夹
    • 布局Layout文件夹
    • Mipmap 文件夹
    • Values文件夹
  4. Gradle 脚本

清单Manifests文件夹

Manifests 文件夹包含用于创建我们的 android 应用程序的AndroidManifest.xml 。此文件包含有关我们应用程序的信息,例如 Android 版本、元数据、Kotlin 文件的状态包和其他应用程序组件。它充当 android OS 和我们的应用程序之间的中介。

以下是 android 应用程序中的 manifests 文件夹结构。 

AndroidManifest.xml 

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http:// schemas.android.com/apk/res/android"
	package="com.geeksforgeeks.myapplication">

	<application
		android:allowBackup="true"
		android:icon="@mipmap/ic_launcher"
		android:label="@string/app_name"
		android:roundIcon="@mipmap/ic_launcher_round"
		android:supportsRtl="true"
		android:theme="@style/AppTheme">
		<activity android:name=".MainActivity">
			<intent-filter>
				<action android:name="android.intent.action.MAIN" />

				<category android:name="android.intent.category.LAUNCHER" />
			</intent-filter>
		</activity>
	</application>

</manifest>

Java 文件夹

Java 文件夹包含我们在应用程序开发期间创建的所有 java 和 Kotlin 源代码 (.java) 文件,包括其他测试文件。如果我们使用 Kotlin 创建任何新项目,默认情况下,类文件 MainActivity.kt 文件将在包名“com.geeksforgeeks.myfirstkotlinapp”下自动创建,如下所示。 

MainActivity.kt 和 MainActivity.java

package com.geeksforgeeks.myapplication

	import androidx.appcompat.app.AppCompatActivity import android.os.Bundle

	class MainActivity : AppCompatActivity() {

	override fun onCreate(savedInstanceState: Bundle?)
	{
		super.onCreate(savedInstanceState)
			setContentView(R.layout.activity_main)
	}
}
package com.geeksforgeeks.myapplication;

import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

	@Override
	protected void onCreate(Bundle savedInstanceState)
	{
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
	}
}

资源 (res) 文件夹

资源文件夹是最重要的文件夹,因为它包含所有非代码源,例如我们的 android 应用程序的图像、XML 布局和 UI 字符串。 

res/drawable 文件夹

它包含用于开发应用程序的不同类型的图像。我们需要将所有图像添加到可绘制文件夹中以进行应用程序开发。
 

资源/布局文件夹

布局文件夹包含我们用来定义应用程序用户界面的所有 XML 布局文件。它包含activity_main.xml文件。
 

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
	xmlns:android="http:// schemas.android.com/apk/res/android"
	xmlns:app="http:// schemas.android.com/apk/res-auto"
	xmlns:tools="http:// schemas.android.com/tools"
	android:layout_width="match_parent"
	android:layout_height="match_parent"
	tools:context=".MainActivity">

	<TextView
		android:layout_width="wrap_content"
		android:layout_height="wrap_content"
		android:text="Hello World!"
		app:layout_constraintBottom_toBottomOf="parent"
		app:layout_constraintLeft_toLeftOf="parent"
		app:layout_constraintRight_toRightOf="parent"
		app:layout_constraintTop_toTopOf="parent" />

</androidx.constraintlayout.widget.ConstraintLayout>

res/mipmap 文件夹

此文件夹包含 launcher.xml 文件,用于定义用于在主屏幕上显示的图标。它包含不同密度类型的图标,具体取决于设备的大小,例如 hdpi、mdpi、xhdpi。
 

res/values文件夹

Values 文件夹包含许多 XML 文件,如字符串、尺寸、颜色和样式定义。最重要的文件之一是包含资源 的strings.xml文件。

<resources>
	<string name="app_name">NameOfTheApplication</string>
	<string name="checked">Checked</string>
	<string name="unchecked">Unchecked</string>
</resources>

Gradle 脚本文件夹

Gradle 意味着自动构建系统,它包含许多用于定义构建配置的文件,这些配置可以应用于我们应用程序中的所有模块。在 build.gradle (Project) 中有 buildscripts,在 build.gradle (Module) 中使用插件和实现来构建可以应用于我们所有应用程序模块的配置。