分享好友 最新动态首页 最新动态分类 切换频道
android应用开发_android开发如何开发android应用
2024-12-27 00:40

Now that we have our IDE, how do we actually make an Android project? First, let’s look at the structure of a typical Android project.

现在我们有了IDE,我们如何真正制作一个Android项目? 首先,让我们看一个典型的Android项目的结构。

app — root module folder

app —根模块文件夹

  • build.gradle — module config file

    build.gradle —模块配置文件

  • src/main/AndroidManifest.xml — module manifest file

    src / main / AndroidManifest.xml —模块清单文件

  • src/main/java — module source folder for Java or Kotlin files

    src / main / java -Java或Kotlin文件的模块源文件夹

  • src/main/res — module resource folder

    src / main / res —模块资源文件夹

build.gradle — project config file

build.gradle —项目配置文件

gradle, gradle.properties, gradlew, gradlew.bat — Gradle related files for to build Android project

gradle gradle.properties gradlew gradlew.bat —与Gradle相关的文件,用于构建Android项目

settings.gradle — project settings file

文件包含您的模块和项目名称的列表。 请记住,一个Android项目可以包含一个或几个模块,每个模块可以包含自己的功能或逻辑。 文件定义您的设置并配置构建环境。

The , , and files are related to Gradle wrapper, so we don’t have to manually install Gradle.

, 和文件与Gradle包装器相关,因此我们不必手动安装Gradle。

is a top-level build file. Here we can add configuration options shared by all modules. For example, you can give your files access to repositories for core Android functionalities.

是顶级构建文件。 在这里,我们可以添加所有模块共享的配置选项。 例如,您可以授予文件访问Android核心功能存储库的权限。

Each module has a unique name where we put the application source code. The module file contains the configurations related to this module only, such as:

每个模块都有一个唯一的名称,用于放置应用程序源代码。 模块文件仅包含与此模块相关的配置,例如

  • - the version of Android SDK to compile the project

    用于编译项目的Android SDK版本

  • - the minimal supported Android version

    最低支持的Android版本

  • - the target version of Android SDK, used to tell the system to enable compatibility behaviors

    -Android SDK的目标版本,用于告诉系统启用兼容性行为

  • - unique identifier of the application on the device and in Google Play Store

    设备和Google Play商店中唯一标识符

  • - an internal version number

    内部版本号

  • - the version name displayed to users

    向用户显示的版本名称

  • - compile options to achieve some features of Java 1.8

    编译选项以实现Java 1.8的某些功能

  • - first-party and third-party library dependencies, discussed in the next lessons

    我们在AndroidManifest.xml中声明我们的主要组件。 例如,旅行博客的清单文件可能包含以下内容

    • - the package name of the application, in our case com.travelblog

      -应用程序的包名,在我们的例子com.travelblog

    • - the global application theme, in our case MaterialComponents theme

      全局应用程序主题,在本例中为MaterialComponents主题

    • - the label which is used as a value for the application icon

      标签,用作应用程序图标的值

    • - the activity, we currently only have one MainActivity

      -该活动,我们目前只有一个MainActivity

    All resource-related files need to be placed inside predefined, sub-folders of the src/main/res folder. One subfolder, for example, is the layout folder for all your layout files. We will also have the src/main/java folder for our Java source code.

    所有与资源相关的文件都必须放置在src / main / res文件的预定义子文件夹中。 例如,一个子文件夹是所有布局文件的布局文件夹。 我们还将为Java源代码提供src / main / java文件夹。

    An important part of creating your application is the unique features and tools you add to it. That’s where libraries come into play. A library is a collection of pre-written resources that can be added to your app. The Android library ecosystem is large, and you can use dozens of libraries in a single project. You can access most of the Android libraries through maven.

    创建应用程序的重要部分是添加到应用程序中的独特功能和工具。 那就是图书馆发挥作用的地方。 库是可以添加到您的应用程序中的预写资源的集合。 Android库生态系统很大,您可以在一个项目中使用数十个库。 您可以通过maven访问大多数Android库。

    Adding a library to your project is easy: declare the group id, artifact id, and version in the section of your app/build.gradle file.

    以下是当今使用的一些最受欢迎的库

    • appcompat — makes the apps developed with newer versions work with older versions

      appcompat-使使用较新版本开发的应用程序可与较旧版本一起使用

    • constraintlayout — allows creating large and complex layouts with a flat view hierarchy

      约束布局-允许创建具有平面视图层次结构的大型复杂布局

    • material — brings material design components to Android

      material —将材质设计组件带到Android

    • retrofit — a type-safe HTTP client library

      改造 —类型安全的HTTP客户端库

    • moshi — a JSON parser library

      moshi — JSON解析器库

    • glide — an image loading library

      glide —图像加载库

    • room — an official Android ORM database

      —官方的Android ORM数据库

    • dagger — a static, compile-time dependency injection framework

      dagger —静态的编译时依赖项注入框架

    Appcompat

    Appcompat

    The appcompat library is great for solving compatibility issues between newer and older versions of your app. Its primary component is . This base class enables backward compatibility with older versions of Android apps. To add it to your app, use the following code:

    appcompat库非常适合解决应用程序新旧版本之间的兼容性问题。 它的主要组件是 。 这个基本类别可与旧版Android应用程式向后相容。 要将其添加到您的应用中,请使用以下代码

     
         

    Constraint layout

    约束布局

    This library enables you to create complex layouts using a flat view hierarchy. It is common to use as the root of all the layout files. To add it to your app, use the following code:

    该库使您可以使用平面视图层次结构创建复杂的布局。 通常将用作所有布局文件的根。 要将其添加到您的应用中,请使用以下代码

    材料设计

    This library brings Material Design components to your app. Material design is a design language used to make your various components more user-friendly. You can take a look at the list of components here. To add it to your app, use the following code:

    该库将Material Design组件引入您的应用程序。 材料设计是一种设计语言,用于使您的各个组件更加人性化。 您可以在此处查看组件列表。 要将其添加到您的应用中,请使用以下代码

     
          
         

    One of the core components of Android is activity, one screen of the application user interface. An application is comprised of multiple activities that can be launched on top of each other to form a back stack. A user can navigate through this back stack using the UI components, i.e. a back button.

    Android的核心组件之一是活动,即应用程序用户界面的一个屏幕。 一个应用程序由多个活动组成,这些活动可以相互启动以形成后退堆栈。 用户可以使用UI组件(即后退按钮)浏览该后退堆栈。

    For example, an app may have the following components:

    例如,一个应用可能具有以下组件

    • LoginActivity — represents login flow

      LoginActivity —代表登录流程

    • ListActivity — represents a list of recent article titles

      ListActivity —表示最近文章标题的列表

    • DetailActivity — represents an article itself

      DetailActivity —表示文章本身

    Activities have their own lifecycles, so the Activity class offers six core callbacks: , , , , , . When the user leaves an activity, the system will dismantle the activity by calling different methods. You can use these methods to check when an activity is being created or destroyed, becomes visible or hidden, etc.

    创建活动涉及两个主要步骤:创建Java类并从超类对其进行扩展。 然后,您可以使用库来实现向后兼容性。 然后必须在文件中声明Android活动。

    Another key aspect of Android development is developing and working with Android layout. The layout defines the overarching structure of your UI (user interface). These are built using views and view groups.

    Android开发的另一个关键方面是开发和使用Android布局。 布局定义了UI(用户界面)的总体结构。 这些是使用视图和视图组构建的。

    Views, also called widgets, might be components such as (render text), (user can type text), and (clickable text).

    视图 (也称为窗口小部件)可能是诸如 (呈现文本), (用户可以键入文本)和 (可单击文本)之类的组件。

    ViewGroups, sometimes called layouts, are like invisible containers that determine where certain elements will be housed. This is where you might use the Google library , which uses constraints to position your widgets. The Android SDK method is simpler for beginners but offers less flexibility.

    ViewGroups有时也称为布局,就像不可见的容器一样,用于确定某些元素的放置位置。 您可以在这里使用Google库 ,该库使用约束来定位窗口小部件。 对于初学者来说,Android SDK方法较为简单,但灵活性较低。

    The easiest way to build a layout is by using an XML file rather than Java code. We can then bind or inflate this layout to an activity. Let’s build a layout to see how it’s done.

    建立布局的最简单方法是使用XML文件而不是Java代码。 然后,我们可以将此布局绑定或膨胀到活动。 让我们构建一个布局,看看它是如何完成的。

    First, inside your app/src/main/res/layout folder, create an activity_main.xmllayout file. In this example, we will use a root layout through alongside some XML attributes:

    首先 ,在您的app / src / main / res / layout文件夹中,创建一个activity_main.xml布局文件。 在此示例中,我们将通过使用根布局以及一些XML属性

    • : this defines the width of the layout.

      :这定义布局的宽度。

    • : this defines the height of the layout

      :这定义了布局的高度

    • and : these define XML namespace, Android namespace for attributes from Android SDK, and app namespace for attributes from libraries

      现在,我们已经建立了视图,现在我们进入对齐 。 由于默认位置我们的视图位于左上角,因此我们希望将文本移动到屏幕的中心。 为此,我们添加以下约束

      • : this declares a constraint to align the top of the view to the top of the ConstraintLayout

        :这声明一个约束,以将视图的顶部与ConstraintLayout的顶部对齐

      • : this declares a constraint to align the bottom of the view to the bottom of the ConstraintLayout

        :这声明一个约束,以使视图的底部与ConstraintLayout的底部对齐

      • : this declares a constraint to align the left of the view to the left of the ConstraintLayout

        :这声明一个约束,以使视图的左侧与ConstraintLayout的左侧对齐

      • : this declares a constraint to align the right of the view to the right of the ConstraintLayout

        现在,所有内容都在我们想要的位置对齐了,我们继续进行布局绑定 。 这用于将与MainActivity关联。 当在方法内创建活动时,我们使用方法执行此操作。

        The method accepts the layout resource ID. This is referenced by the auto-generated Android R class, where all the resource IDs are stored. For binding purposes, we can use the to obtain the ID of activity_main.xml so we can tell MainActivity to render layout from this file.

        最后一步是视图绑定 ,这使我们能够在运行时与视图进行交互。 为此,我们将视图从XML绑定到Java对象。

        First, we define a new ID for the using the id attribute with @+id/mainTextView value.

最新文章
香港理工大学于涵博士联合港科大颜河教授&港理工李刚教授招聘启事
【平台介绍】香港理工大学简介香港理工大学(The Hong Kong Polytechnic University)位于中国香港特别行政区,是一所世界百强名校,QS 最新世界排名 57 位。详情请见:https://www.polyu.edu.hk/。就读香港理工大学符合国内很多人才项目所
步步春情老谢韩雪最新章节列表_小说后续全文完结免费步步春情老谢韩雪
小说:《步步春情》主角:老谢韩雪简介:韩雪有种令男人窒息的美,她不仅漂亮,还特别有气质,微卷的头发犹如瀑布一般散在肩后,粉嫩精致的脸蛋,在媚眼角下还有一颗类似女星热巴的泪痣——阅读小说全文内容请翻阅文章最底部——第二天早上
魔爪小说阅读器 5.6.1.0
魔爪是一款网络流行的免费小说软件,魔爪小说阅读器支持近百个各类网站的小说/漫画下载,如新浪连载频道、新浪原创频道、潇湘书院、晋江原创网、连城读书、四月天原创网、鲜鲜小说网、QQ连载频道、QQ原创频道、搜狐原创等等。有需要下载体
英雄联盟s4木木打野视频
作为一名资深的网络技术主管,我深知SEO对网站优化的重要性。随着互联网的快速发展,搜索引擎优化已经成为网站推广的关键环节之一。从编写优质文章到制作符合SEO标准的博客,都能有效提升网站的曝光度和用户访问量。在网站优化过程中,**关
美化Word文档:轻松设置背景色168
Microsoft Word 2010 提供了多种选项,让用户可以自定义文档外观,包括设置背景色。背景色可以增强文档的视觉吸引力,突出演示文稿的关键部分,或营造特定的氛围。设置背景色的步骤:1. 打开文档:启动 Word 2010 并打开要设置背景色的文档
秘搜索迹APP安卓版(个人隐私保护)
秘搜索迹是一款搜索工具,它的特点就是不追踪你的搜索引擎,自带安全好用的密码管理器以及方便的聊天加密工具!致力于保护个人隐私的App,所以不会记录用户输入的查询词条,没有广告,不占空间,秘迹搜索通过聚合中文搜索服务,比如Bing、
web控制台管理linux,RHEL8 Web控制台管理系统
1、RHEL8的Web控制台介绍㈠ rhel8的web控制台是什么?•RHEL Web控制台是一个基于Web的红帽企业版Linux 8界面,用于管理和监视本地系统以及位于网络环境中的Linux服务器。•RHEL 8 Web控制台是交互式服务器管理界面,通
QQ群拉人-qq群僵尸成员在线购买
以下是一些关于QQ群拉人的建议和方法:一、明确群的定位和价值首先,要清楚地知道您的QQ群的主题和目的是什么,例如是兴趣爱好交流群(如摄影群、读书群)、工作学习群(如考研群、项目协作群)还是社交群(如老乡群、校友群)。明确群的定
看我改变人生
  龙国,魔都,秦昊,25岁。  大学毕业的秦昊,上了几个月的班。  就开始创业。  三年多来。  已经有了一家小贷款公司。  但做的都是正规范围的利息。  每个月收入也还行。  大概5~10万左右。  而最近,在秦昊身上,就发
视频转链接一键分享的方法
将视频转成链接已经是一种非常常见的工作内容。很多人在走弯路。这里提供几个视频生成链接并一键分享的方法。方法有很多种,觉得哪个适合就用那个。具体方法请看下文分享:使用八木屋工具进行视频链接生成分享:注册八木屋平台,将制作好的
相关文章
推荐文章
发表评论
0评