Android手把手编写儿童手机远程监控App之嘟宝工程结构详解

0 阅读4分钟

概述

上节嘟宝项目工程需求分析。梳理清清项目需求,不仅避免项目方向跑偏,便于后续开发,维护与迭代。开发工具使用的是Android studio,第一次安装Android 可能有些困难,大都由于网络原因,导致无法下载。

使用Android studio建立嘟宝工程

  • 打开Android studio,点击New Project
  • 选择No Activity,该选项不会创建页面,手动创建页面助于帮助了解app启动流程
  • 选择填写工程基本信息
  • 名称dubao,选择开发语言java,注意最小SDK,是根据市场Android使用版本Google推荐的兼容版本 在这里插入图片描述
模板名称核心特点
No Activity最基础,最干净,不建立任何Activity ,适合初学者学习入门
Basic Activity带有现代 Material Design 风格。包含了顶部应用栏 (App Bar) 和一个浮动操作按钮 (FAB),提供了更接近主流应用的基础框架
Bottom Navigation Activity专为底部导航栏设计。自动实现了一个带有底部导航栏的界面,非常适合有3-5个平级顶级页面的应用
Navigation Drawer Activity实现侧边栏菜单。自动生成一个可以从屏幕左侧滑出的导航抽屉菜单,功能强大,代码量

在这里插入图片描述

  • name,工程名称,名称唯一,避免与已创建工程同名
  • Package name,包名,相当于App的身份证,必须唯一。同一部手机安装包名相同的app,旧的app会被自动卸载。包名通常使用 反向域名 的规则,以确保全球唯一性。基本格式是:com.公司或组织的名称.应用名称
  • Save location,项目存储位置
  • Language,开发语言。
  • Minimum sdk,决定了应用能够运行在哪个最低版本的 Android 系统,如图选择最低Android 8

Android 工程文件结构

工程结构文件,可通过Project、Packages、Android方式打开,其中最常用的是Project与Android 在这里插入图片描述 在这里插入图片描述

  • Project以文件的形式展开目录,便于文件的查找
  • Android以开发的方式展示文件,也是素日用的最多的方式

详解Android 文件目录功能

根目录为 在这里插入图片描述

DuBao (项目根目录) │ ├── app/ (你的主模块) │ │ │ ├── src/ (所有源代码和资源) │ │ ├── main/ (主源码集) │ │ │ ├── java/ ---> [你的 Java 代码] │ │ │ ├── res/ ---> [你的资源文件] │ │ │ │ ├── layout/ ---> 界面布局 │ │ │ │ ├── drawable/ ---> 图片/图形 │ │ │ │ ├── values/ ---> 颜色/文字/尺寸 │ │ │ │ └── ... │ │ │ ├── assets/ ---> 原始文件 (网页/字体) │ │ │ └── AndroidManifest.xml ---> 应用配置清单 │ │ │ │ │ ├── test/ (本地单元测试) ---> ExampleUnitTest │ │ └── androidTest/ (仪器化测试) ---> ExampleInstrumentedTest │ │ │ └── build.gradle (Module: app) ---> [你的构建配置] │ └── build.gradle (Project: ...) ---> [项目级构建配置]

AndroidManifest.xml,应用程序配置清单,它里面包含了权限申请,应用图标、应用名称、四大组件等需要在这里配置,开发时常常与之打交道。

build.gradle (Module: app)与build.gradle (Project: ...)区别

  • Project 级 build.gradle:全局配置,定义了整个项目中所有模块都共享的仓库源和插件依赖。
  • Module 级 build.gradle (如 app):模块专属配置,定义了当前模块(如 app)自己的编译版本、最低支持版本、应用ID、依赖库等。常用的引用第三方库,都需要在这里添加。

手动创建helloword Activity页面

目前为止,我们只是创建了一个空工程,工程内无任何页面。手动创建Activity的目的在于对比使用Android stdio自动创建的区别。日后修改、删除也知道找到对应的位置。

  • 创建HelloWorldActivity
  • 设置HelloWorldActivity页面为首次打开app启动的页面
  • HelloWorldActivity添加显示控件

创建HelloWorldActivity

依次右键目录com.zilong.dubao,选择new,选择创建Java Class,输入:HelloWorldActivity。 在这里插入图片描述 依次右键目录res,选择new,选择创建Directory,输入:layout,创建layout目录。而后在layout目录右键,创建activity_helloworld资源文件,注意输入名称的文件格式。 在这里插入图片描述 在这里插入图片描述HelloWorldActivity.java

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;

public class HelloWorldActivity extends AppCompatActivity {

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

activity_helloworld.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="Hello World!!!" />
</LinearLayout>

AndroidManifest.xml

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

    <application
        android:allowBackup="true"
        android:dataExtractionRules="@xml/data_extraction_rules"
        android:fullBackupContent="@xml/backup_rules"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/Theme.DuBao"
        tools:targetApi="31">
        <activity
            android:name=".HelloWorldActivity"
            android:exported="true" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

在AndroidManifest中,activity中intent-filter表明App启动,首先打开HelloWorldActivity页面。

    <activity
            android:name=".HelloWorldActivity"
            android:exported="true" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

Android 真机调试

  • 手机设置,打开开发者选项 设置 → 关于手机 → 连续点击“版本号”7次
  • 开启 USB 调试 设置 → 开发者选项 → USB 调试(打开) 建议同时打开:
    • USB 调试(安全设置)
    • 保持唤醒(防止锁屏断开) 设置完成后,插入USB,在Android studio出现手机,如下图: 在这里插入图片描述 点击三角按钮,开始安装调试andorid app。