zoukankan      html  css  js  c++  java
  • Android 四大组件

    Activity

    一个Activity通常是一个界面,是四大组件唯一能被用户感知的

    每个活动被实现为一个独立的类,从活动基类继承过来

    Activity之间通过 Intent 进行通信

    需要在AndroidManifest.xml配置文件中声明,否则系统将不识别也不执行该Activity

    生命周期

    image-20210311184321373

    启动模式

    Standard 每次都新建一个实例

    SingleTop 如果栈顶没有实例,就新建实例

    SingleTask 每次都复用栈内的实例,并把在它之前的所有activity顶出去,重新回到栈顶

    SingleInstance 只有一个实例,用另外一个栈来保存这个实例对象

    Service

    service(服务)是一种可以在后台执行长时间运行操作而没有用户界面的应用组件。

    服务可由其他应用组件启动(如Activity),服务一旦被启动将在后台一直运行,即使启动服务的组件(Activity)已销毁也不受影响。

    但是当该应用程序进程被杀死的时候,service也会销毁

    启动状态

    当应用组件(如 Activity)通过调用 startService() 启动服务时,服务即处于“启动”状态。一旦启动,服务即可在后台运行,即使启动服务的组件已被销毁也不受影响,除非手动调用才能停止服务, 已启动的服务通常是执行单一操作,而且不会将结果返回给调用方。

    绑定状态

    当应用组件通过调用 bindService() 绑定到服务时,服务即处于“绑定”状态。绑定服务提供了一个客户端-服务器接口,允许组件与服务进行交互、发送请求、获取结果,甚至是利用进程间通信 (IPC) 跨进程执行这些操作。 仅当与另一个应用组件绑定时,绑定服务才会运行。 多个组件可以同时绑定到该服务,但全部取消绑定后,该服务即会被销毁。

    生命周期

    image-20210311185210974

    BroadcastReceiver

    一种广泛运用在应用程序之间传输信息的机制,通过发送Intent来传送我们的数据

    内部通信实现机制:通过android系统的Binder机制.

    分为 无序广播 和 有序广播

    广播接收者的注册有两种方法,分别是程序动态注册和AndroidManifest文件中进行静态注册。

    ContentProvider

    android四大组件之一的内容提供器,它主要的作用就是将程序的内部的数据和外部进行共享,为数据提供外部访问接口,被访问的数据主要以数据库的形式存在,而且还可以选择共享哪一部分的数据,可以通过ContentResolver类从该内容提供者中获取或存入数据。。

    参考

    https://juejin.cn/post/6844903977100771335#heading-33

  • 相关阅读:
    poj2387Til the Cows Come Home(dijkstra)
    poj2349Arctic Network
    poj1789Truck History
    zoj1586QS Network
    poj2421Constructing Roads
    poj2301Building a Space Station(最小生成树)
    poj1287Networking(最小生成树)
    myeclipse配置svn亲测
    MyEclipse8.6安装svn(非link方式)
    myeclipse一些技巧
  • 原文地址:https://www.cnblogs.com/lukelmouse/p/14519937.html
Copyright © 2011-2022 走看看