首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Activity/Fragment流程源码分析

Activity/Fragment流程源码分析是指对Android开发中的Activity和Fragment的生命周期进行深入研究和分析。下面是对这个问答内容的完善和全面的回答:

Activity: 概念:Activity是Android应用程序的基本组件,代表了一个屏幕上的用户界面。每个Activity都对应一个窗口,它可以通过在屏幕上绘制来实现交互。 分类:Activity可以分为标准Activity、对话框式Activity、透明Activity、无界面Activity等不同类型。 优势:Activity作为Android应用程序的核心组件,具有以下优势:提供了用户界面的交互性,可以管理界面上的各种操作和事件;支持应用程序的生命周期管理,包括启动、暂停、恢复、停止和销毁;可以与其他Activity进行交互,包括启动其他Activity和接收其他Activity的返回结果;可以通过Intent实现Activity之间的通信等。 应用场景:Activity适用于需要展示用户界面、响应用户交互、进行页面之间的跳转和切换等场景。 推荐的腾讯云相关产品和产品介绍链接地址:目前腾讯云并没有专门针对Activity的产品,但可以借助腾讯云的云服务器、云数据库等产品来支持Activity开发。

Fragment: 概念:Fragment是Android应用程序的一部分,代表了一种行为或部分用户界面。它可以嵌入到Activity中,以便实现更灵活和可重用的用户界面。 分类:Fragment可以分为静态Fragment和动态Fragment,静态Fragment在布局文件中定义,动态Fragment通过代码动态添加到Activity中。 优势:Fragment具有以下优势:实现模块化开发,提高代码的可重用性;支持在不同尺寸的屏幕上灵活适配和调整界面;可以在一个Activity中同时显示多个Fragment,实现多窗口的效果;可以与Activity共享生命周期和交互等。 应用场景:Fragment适用于需要将界面拆分成多个模块、在不同屏幕尺寸上灵活适配、实现多窗口效果等场景。 推荐的腾讯云相关产品和产品介绍链接地址:目前腾讯云并没有专门针对Fragment的产品,但可以借助腾讯云的云服务器、云数据库等产品来支持Fragment开发。

以上是对Activity/Fragment流程源码分析的完善和全面的回答,希望能对您有所帮助。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Activity启动流程源码分析

我们找到其源码 android-6.0.0_r1\packages\apps\Launcher2 我们先看Manifest文件 找到app的入口Activity <activity...Launcer是集成Activity的而改方法是Activity的方法。接下来就进入到了我们熟悉的Activity的调用。...作用: 用于控制Activity,监控应用程序和系统的交互。 启动Activity的入口 调用Activity的生命周期方法。...真正开始启动Activity 进程的启动这里就不做介绍,后面会专门写一篇进程启动的源码解读,们现在讨论进程已存在的情况下启动Activity。...通过ams设置ActivityRecord的状态 到这里整个Activity的启动已经完成。我们只做了主流程的解析,而启动的细节还是非常多了,这里也无法一一展开。

1.5K10

fragmentActivity

传值到Activity Chapter One fragment 概念       fragment到底是什么东西呢?...英文为碎片,片段,通俗讲就是Activity界面的一个片段,组成部分。一个Activity界面可以有多个fragmentfragment只能依赖于Activity而存在,像寄生虫一样。...Chapter Two fragment的生命周期    既然fragment依赖于Activity存在,那么fragment的生命周期与Activity息息相关,也就不难理解了。...与activity生命周期关系流程图如下: 在启动一个activity加载fragment的过程中,方法执行如下: onCreate(Activity)--->onCreate(fragment)---...创建多个fragment后,需将fragmentActivity联系起来,fragment  之间也需要切换, activity_main.xml文件 <RelativeLayout xmlns:android

36220
  • Fragment回调Activity

    应用场景 如果你需要在fragment中处理一些事情,事情的处理结果或者你需要告 诉activity马上要做什么事,这时候就需要和activity进行通讯。...包括很多fragment在viewpager中的情况,而且可以保证activity能即时进行响应。相比发送广播,性能更好,代码更少。...实战 假设有这样一个需求:在一个activity中有一个viewpager,viewpager里面有几个fragment,其中的一个fragment里面有一个任务,这个任务做完之后需要跳转到其他的fragment...分析 既然需要跳转的到的fragment在viewpager里,那么只要控制viewpager跳转就可以了,而viewpager在activity里,我们是不是可以告诉activity一声让它处理一下就可以了呢...4.根据业务进行回调 这里我们只需要在需要Activity切换fragment的地方调用 if (listener !

    1.7K10

    【Android 启动过程】Activity 启动源码分析 ( ActivityThread 流程分析 二 )

    启动源码分析 ( ActivityThread 流程分析 一 ) 分析了从 ActivityThread 的 main() 函数启动 , ApplicationThread 绑定 , Application...创建 , 下面继续分析后续内容 ; 一、ActivityManagerService.attachApplicationLocked ---- 回到 AMS 中的 ActivityManagerService...badApp = true; } } return true; } } ActivityManagerService 完整源码参考...启动源码分析 ( AMS -> ActivityThread、AMS 线程阶段 二 ) 二、AMS 进程中执行的相关操作 章节进行过讲解 , 不管是冷启动 , 还是热启动 , 都要调用 ActivityStackSupervisor.realStartActivityLocked...方法开启 Activity ; 后续逻辑基本就与该博客后续的分析对应上了 ; public class ActivityStackSupervisor extends ConfigurationContainer

    32410

    Android | Activity 启动流程分析

    前言 Activity 类是 android 应用的关键组件,在日常开发中,绝对少不了组件。既然用了这么久,你知道他的启动流程?...本文基于 Android 12 版本源码,从 startActivity 作为切入点,对整个启动流程进行分析。...app 显示在桌面上,等到点击某一个 app 的时候就会 fock 一个新的进程,然后启动 Activity 这篇文章主要来看一下应用内启动 Activity 是一个怎样的流程 一,Activity...总结一下流程 调用 Activity 的 startActivity 方法来启动目标 Activity 接着就会调用到 Instrunmentation 的 execStartActivity 方法,通过获取...参考 Activity 启动流程 Android 深入研究之 ✨ Activity启动流程 ramework | Activity启动流程(android-31) 最后 文章到这里就结束了,本文主要是分析了一下应用内

    76020

    Android Activity启动流程分析

    概述 Activity作为Android的四大组件之一,Android主要的界面组成部分,用于直接跟用户进行交互操作,在面试中与Activity相关的知识也是经常被问到,如果你面试的高级岗位,那么对Activity...的启动和绘制流程就必须的熟悉,本文将从Activity的启动流程分析Activity。...启动Activity的方式大致有两种:一种是在桌面点击应用程序的图标,进入应用程序的主界面;另一种是在应用程序中,进入一个新的Activity。...前者属于launcher启动的范畴,本文不做具体的深入分析,后面会具体的分析,不过它的实质是从一个应用的Activity进入另一个应用Activity。...值得注意的是,Android 5.0,7.0等版本中启动Activity流程略微有一些细小的改变,但这并不妨碍我们理解Activity的启动流程

    34030

    两个activity或者activityfragment传值

    使用Fragment的时候可能需要在两个Fragment之间进行参数的传递,开始想着可以使用SharedPreferences进行处理,想想这些简单的参数没有必要使用这么麻烦的方式去实现,翻了一下Fragment...的API,找到一个方法就能实现像Activity一样便捷的实现参数传递 程序中的一段代码 ft.hide(getActivity().getSupportFragmentManager().findFragmentByTag...,参数的形式只要bundle能传递都可以实现      这个原理好像是和Activity是一样的。...我这里传递的是一个关键字,从一个搜索Fragment页面跳转到两外一个结果查询的Fragment页面,在跳转的时候也可以加上一些动画的跳转效果 ft.setCustomAnimations(R.anim.slide_in_right..., 最后再fragment中 shipProductId=getArguments().getString("productId"); 即可得到

    1.4K50

    android从activity跳转到fragment解决

    上一篇解决了【Android解决Fragment跳转到Fragment页面问题,相同或不同宿主Activity解决方法】 背景:我的问题是在主页面出现的,硬是要从跳过好几层的Activity中点击一下就要跳到主页面中的任意一个...Activity跳转到Fragment首先我试过广播是不好使的,因为会出现…… after on saveInstance错误。...处理:Activity跳到fragment 其实简单的说Activityfragment很简单,在activity中写上这段代码,在跳转到该activity的时候用根据传的值判断加载哪个fragment..., mDownloadFragment); ftransaction.commit(); } 但是如果你是通过该activity中的fragment跳转到其他activity之后,想在其他activity...中再跳回来到指定的fragment而不重新加载activity,就得通过下面的方法了。

    1.4K10

    Activity启动流程

    Activity启动流程很多文章都已经说过了,这里说一下自己的理解。 Activity启动流程分两种,一种是启动正在运行的app的Activity,即启动子Activity。...后边启动Activity流程是一样的,区别是前边判断进程是否存在的那部分。 Activity启动的前提是已经开机,各项进程和AMS等服务已经初始化完成,在这里也提一下那些内容。...Instrumentation:仪表盘,负责调用Activity和Application生命周期。测试用到这个类比较多。 流程图 这个图来源自网上,之前也看过很多类似讲流程的文章,但是大都是片段的。...如果是启动子Activity,那么就只涉及AMS进程和app所在进程。 具体流程 1. Launcher:Launcher通知AMS要启动activity。...Activity启动流程(从Launcher开始): 第一阶段: Launcher通知AMS要启动新的Activity(在Launcher所在的进程执行) Launcher.startActivitySafely

    81240

    Activity启动流程

    Activity启动流程很多文章都已经说过了,这里说一下自己的理解。 Activity启动流程分两种,一种是启动正在运行的app的Activity,即启动子Activity。...后边启动Activity流程是一样的,区别是前边判断进程是否存在的那部分。 Activity启动的前提是已经开机,各项进程和AMS等服务已经初始化完成,在这里也提一下那些内容。...Instrumentation:仪表盘,负责调用Activity和Application生命周期。测试用到这个类比较多。 流程图 这个图来源自网上,之前也看过很多类似讲流程的文章,但是大都是片段的。...如果是启动子Activity,那么就只涉及AMS进程和app所在进程。 具体流程 1. Launcher:Launcher通知AMS要启动activity。...Activity启动流程(从Launcher开始): 第一阶段: Launcher通知AMS要启动新的Activity(在Launcher所在的进程执行) Launcher.startActivitySafely

    1.1K31

    Android:Fragment + Activity 二合一

    1、Activity的实现 对于Activity的SwipeBack实现,网上有大量分析,这里我简要介绍下原理,如下图: 我们只要保证SwipeBackLayout、DecorView和Window的背景是透明的...分析Fragment之间的启动无非下图中的2种: 而这个库我并没有考虑replace的情况,因为我们的SwipeBackFragment应该是在"流式"使用的场景(FragmentA -> FragmentB...} } 坑点 1、触摸事件冲突 当我们所拖拽的边缘区域中的子View,有其他Touch事件,比如Click事件,这时我们会发现我们的拖拽失效了,这是因为,如果子View不消耗事件,那么整个Touch流程直接走...原因在于: SwipeBackFragment库是一个仅实现Fragment&Activity拖拽返回的基础库,适合轻度使用Fragment的小伙伴(项目属于多Activity+多FragmentFragment...Fragmentation主要是在项目结构为 单Activity+多Fragment,或者重度使用Fragment的多Activity+多Fragment结构时的一个Fragment帮助库,Fragment-SwipeBack

    67920
    领券