记录:移动设备软件开发(activity组件)

前言

移动设备软件开发是指为智能手机、平板电脑等移动设备设计和开发应用程序的过程。移动设备软件开发涉及多种技术、平台和工具,例如Android、iOS、Windows Phone、Flutter、React Native等。移动设备软件开发的目的是为用户提供便捷、高效和有趣的移动体验,满足用户的各种需求和偏好。

这个系列的文章是对Android开发学习的一点记录(也许还有实验什么的),不管是作为分享还是稍微巩固一下可能都是有益的(误)

使用书籍:疯狂Android讲义
ide: Android Studio

Android简介和发展

Android是一种基于Linux内核的开源移动操作系统,主要用于智能手机和平板电脑。Android最初由安迪·鲁宾(Andy Rubin)等人开发,后来被谷歌收购。Android的第一个商用版本于2008年9月23日发布,目前已经发展到Android 12,是全球最流行的移动操作系统之一。Android的特点包括多任务处理、丰富的应用程序商店、多种用户界面、高度可定制性和跨平台兼容性等。

Android应用的基本组件介绍

Android应用是由四种基本组件构成的:活动(Activity)、服务(Service)、广播接收器(Broadcast Receiver)和内容提供器(Content Provider)。这些组件可以相互协作,也可以独立运行,具有不同的功能和生命周期。

活动(Activity)是用户与应用交互的界面,每个活动都对应一个屏幕。活动之间可以通过意图(Intent)来启动或传递数据。活动有自己的生命周期,包括创建、启动、运行、暂停、停止和销毁等状态。

服务(Service)是在后台执行长时间任务的组件,不需要用户交互。服务可以在应用的进程内或者在其他进程中运行,也可以通过意图来启动或绑定。服务有自己的生命周期,包括创建、启动、运行、绑定、解绑和销毁等状态。

广播接收器(Broadcast Receiver)是用来接收和响应系统或应用发出的广播消息的组件,例如电池低电、网络变化、短信到达等。广播接收器没有用户界面,也没有自己的生命周期,只在接收到广播时被激活,执行完逻辑后就销毁。

内容提供器(Content Provider)是用来管理和共享应用数据的组件,例如联系人、照片、音乐等。内容提供器通过统一的接口来提供数据,其他应用可以通过内容解析器(Content Resolver)来访问或修改数据。内容提供器有自己的权限机制,可以控制数据的访问范围和安全性。
在这里插入图片描述

Activity组件

Activity简介

Activity组件是四大组件之一,在应用中一个Activity可以用来表示一个界面, 中文意思也可以理解为“活动” ,即一个活动开始,代表Activity组件启动;活动结束,代表一个Activity的生命周期结束。

一个android应用必须通过Activity来运行和启动,和J2ME 的MIDlet 一样,在android中,Activity的生命周期统一交给系统管理。与MIDlet 不同的是安装在android 中的所有的Activity 都是平等的。

理解以下四个基本概念,将有助于我们更好的了解Activity:

• Application(APP)

• Activity

• Activity栈

• Task

每个Application均占有独立的内存空间。需要注意的是:Application之间虽然相互独立,但APP_1中的Activity与APP_2中的Activity之间可以进行通信(调用、访问等)。

Activity的状态和生命周期

1、Activity的状态:

(1)Resumed:Activity对象出于运行状态。一个新Activity 启动入栈后,它在屏幕最前端,处于栈的最顶端,此时它处于可见并可以与用户交互的激活状态。

(2)Paused:另一个Activity位于前端,但是本Activity还可见。

    Paused状态常用于:当Activity被另一个透明或者Dialog样式的Activity覆盖时的状态。此时它依然与窗口管理器保持连接,系统继续维护其内部状态,所以它仍然可见,但它已经失去了焦点故不可与用户交互。注:一个Activity出于paused状态时,系统并不会释放资源。释放资源你的操作要靠开发者来完成。

(3)Stopped:另一个Activity位于前端,完全遮挡本Activity。

(4)killed:Activity被系统杀死回收或者没有被启动时。
在这里插入图片描述
2、Activity的生命周期:
在这里插入图片描述
(我说怎么到处都是这张图,原来是从Android开发者文档拿的)
生命周期代码:

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;

public class MainActivity extends Activity {

    private static final String TAG = "smyhvae";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Log.d(TAG, "onCreate");
    }

    @Override
    protected void onStart() {
        super.onStart();
        Log.d(TAG, "onStart");
    }

    @Override
    protected void onResume() {
        super.onResume();
        Log.d(TAG, "onResume");
    }


    @Override
    protected void onPause() {
        super.onPause();
        Log.d(TAG, "onPause");
    }


    @Override
    protected void onStop() {
        super.onStop();
        Log.d(TAG, "onStop");
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        Log.d(TAG, "onDestroy");
    }

    @Override
    protected void onRestart() {
        super.onRestart();
        Log.d(TAG, "onRestart");
    }
}

小结

暂时就先到着吧(毕竟就讲到这,虽然可以提前写,但是我还是希望有条理一点)

以上。

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值