activity启动模式

Android -- Activity和Fragment

こ雲淡風輕ζ 提交于 2020-01-08 11:57:32
⒈简介   我们在App上看到的每一个界面它就需要一个Activity,但Activity并不等同于界面,只是界面需要Activity。   Fragment是碎片化的界面,每一个Activity可以包含很多个Fragment,Fragment不可以作为独立存在的,它必须依赖于Activity,它是受Activity管理的。 ⒉Activity的创建三部曲   1.新建类继承Activity或其子类 package cn.coreqi.activity; import androidx.appcompat.app.AppCompatActivity; public class TestActivity extends AppCompatActivity { }   2.在AndroidManifest中声明 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="cn.coreqi.helloworld2"> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string

android Manifest.xml选项

青春壹個敷衍的年華 提交于 2020-01-07 13:00:20
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> Manifest.xml下的一些属性定义和用法: ---------------------------------------------------------------------------------------------------------------------------------- android:allowTaskReparenting 用法<application android:allowTaskReparenting="true/false"></application> 是否允许activity更换从属的任务,比如从短信息任务 切换到浏览器任务。 用来标记Activity能否从启动的Task移动到有着affinity的Task(当这个Task进入到前台时)——“true”,表示能移动,“false”,表示它必须呆在启动时呆在的那个Task里。 如果这个特性没有被设定,设定到<application>元素上的allowTaskReparenting特性的值会应用到Activity上。默认值为“false”。 一般来说,当Activity启动后,它就与启动它的Task关联,并且在那里耗尽它的整个生命周期。当当前的Task不再显示时

application 的用法

泪湿孤枕 提交于 2020-01-07 12:25:07
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> Application类 Application和Activity,Service一样是Android框架的一个系统组件,当Android程序启动时系统会创建一个Application对象,用来存储系统的一些信息。 Android系统自动会为每个程序运行时创建一个Application类的对象且只创建一个,所以Application可以说是单例(singleton)模式的一个类。 通常我们是不需要指定一个Application的,系统会自动帮我们创建,如果需要创建自己的Application,那也很简单!创建一个类继承Application并在AndroidManifest.xml文件中的application标签中进行注册(只需要给application标签增加name属性,并添加自己的 Application的名字即可)。 启动Application时,系统会创建一个PID,即进程ID,所有的Activity都会在此进程上运行。那么我们在Application创建的时候初始化全局变量,同一个应用的所有Activity都可以取到这些全局变量的值,换句话说,我们在某一个Activity中改变了这些全局变量的值,那么在同一个应用的其他Activity中值就会改变。

Android Application

天涯浪子 提交于 2020-01-07 12:24:57
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 一.简介 Application和Activity,Service一样是Android框架的一个系统组件,当Android程序启动时系统会创建一个Application对象,用来存储系统的一些信息。 Android系统自动会为每个程序运行时创建一个Application类的对象且只创建一个,所以Application可以说是单例(singleton)模式的一个类。 通常我们是不需要指定一个Application的,系统会自动帮我们创建,如果需要创建自己的Application,那也很简单!创建一个类继承Application并在AndroidManifest.xml文件中的application标签中进行注册(只需要给application标签增加name属性,并添加自己的 Application的名字即可)。 启动Application时,系统会创建一个PID,即进程ID,所有的Activity都会在此进程上运行。那么我们在Application创建的时候初始化全局变量,同一个应用的所有Activity都可以取到这些全局变量的值,换句话说,我们在某一个Activity中改变了这些全局变量的值,那么在同一个应用的其他Activity中值就会改变。 Application对象的生命周期是整个程序中最长的

Android开发常见问题汇总

我们两清 提交于 2020-01-01 22:33:54
文章目录 1.Activity的启动模式 1.什么是Activity启动的标准模式?都会经历那些生命周期的函数? 2.什么是Activity启动的异常模式?都会经历那些生命周期? 3.怎么指定Activity在横竖屏切换的时候不敏感? 4.怎么为Activity指定为横屏或竖屏? 5.Activity启动都有哪些模式?在清单文件里面配置和在代码里面指定到底有何不同? 6.前台任务栈有Activity:AB,后台任务栈有Activity:CD,且CD的启动模式都是singleTask,现在启动Activity D,此时后退任务栈的的顺序是什么? 7.怎么给Activity指定单独的任务栈?怎么查看任务栈的? 8.Activity的启动意图都有哪些? 9.隐式意图需要配置目标组件的InterFilter,这个过滤器都有哪些信息?配置都有哪些规则? 2.跨进程通信 1.在Android开发中怎么使用多进程? 2.同一个应用中开启了多进程会造成哪些问题? 2.怎么通过Serializable来序列化和反序列化一个对象? 3.Parcelable和Serializable他们的作用是什么?有什么区别? 4.什么是Binder?什么是Binder的死亡代理? 5.什么是AIDL? 6.Android中的跨进程通信方式都有哪些? 7.什么Binder连接池? 3.View的事件体系 1

转载——Activity启动模式 及 Intent Flags 与 栈 的关联分析

你离开我真会死。 提交于 2019-12-31 23:15:10
转载地址: https://blog.csdn.net/vipzjyno1/article/details/25463457 在学习Android的过程中,Intent是我们最常用Android用于进程内或进程间通信的机制,其底层的通信是以Binder机制实现的,在物理层则是通过共享内存的方式实现的。 Intent主要用于2种情景下:(1)发起意图 (2)广播 它的属性有:ComponentName,action,data,category,extras,flags等,通常情况下,进行Intent的匹配涉及到3个属性:Action,Data,Category。这些东西都需要了解才能对它有个深入的体会。 下面我就根据近期学习,总结记录下Activity启动模式 及 Intent Flags 与 栈 的关联分析。 文章结构: 1.什么是栈 2.Activity栈 3.Task 4.Activity启动模式 5.Activity栈和Task联系 6.Intent Flags 7.Activity相关属性taskAffinity 1.什么是栈 栈 栈是一种常用的数据结构,栈只允许访问栈顶的元素,栈就像一个杯子,每次都只能取杯子顶上的东西,而对于栈就只能每次访问它的栈顶元素,从而可以达到保护栈顶元素以下的其他元素.”先进后出”或”后进先出”就是栈的一大特点

面试常问知识点,Fragment+Activity+service等等

白昼怎懂夜的黑 提交于 2019-12-31 00:03:17
每一次去面试就是一次对自我知识的总结和审核,如果你想拿到大厂的offer.成功的通过一面二面三面四面,那么我分享的面试学习路线你可以来参考一下(PDF文档版见如下) 那么面试中最常问的小知识点不懂的透彻怕是不行了 ( 顺手留下GitHub链接,需要获取相关面试等内容的可以自己去找 ) https://github.com/xiangjiana/Android-MS 1 、四大组件是什么 1)Activity: 用户可操作的可视化界面,为用户提供一个完成操作指令的窗口。一个 Activity通常是一个单独的屏幕,Activity通过Intent来进行通信。Android中会维持一个Activity Stack,当一个新 Activity 创建时,它就会放到栈顶,这个 Activity 就处于运行状态。 2)Service: 服务,运行在手机后台,适合执行不需和用户交互且还需长期运行的任务。 3)ContentProvider: 内容提供者,使一个应用程序的指定数据集提供给其他应用程序,其他应用可通过 ContentResolver 类从该内容提供者中获取或存入数据。它提供了一种跨进程数据共享的方式,当数据被修改后, ContentResolver 接口的 notifyChange 函数通知那些注册监控特定 URI 的 ContentObserver 对象。 如 果

Android四大组件之Activity详解

佐手、 提交于 2019-12-30 19:17:50
.Activity的本质 Activity是Android提供的四大组件之一,是进行Android开发必不可少的组件.Activity是一个界面的载体,可以把它与html页面进行类比,html页面由各种各样的标签组成,而Activity则可以由各种控件组成.然而Activity也并不是那么简单.查看Activity类的源码我们就可以看到,这个类大概有六千多行代码,说明Android对Activity的处理是相当复杂的.不过我们平时进行开发的时候不需要了解到那么深入的地步,因为我们可以根据Activity中提供的方法快速的开发,Activity生命周期中涉及到七个回调方法. .Activity的生命周期 Android官方文档给出的Activity生命周期图 当打开一个Activity的时候,会调用这个Activity的onCreate()方法,接着调用onStart()方法,然后调用onResume()方法.当onStart()方法执行之后,我们就可以看到这个Activity界面了.下面通过代码对单个Activity生命周期做进一步的解释. MainActivity.java package com.example.caobotao.activitylifecircle; import android.app.Activity; import android.content

Activity四大启动模式 简单介绍

試著忘記壹切 提交于 2019-12-28 12:24:28
Activity四大启动模式 简单介绍 启动模式 Standard SingleTop SingleTask SingleInstance 启动方式 启动模式 启动模式用好可以避免重复创建相同的Activity,合理节省空间。当点击跳转Activity时,需要创建一个新的实例,并把它存入任务栈内;多次创建,多次添加,一层一层累加。任务栈是后进先出,点击返回先退出刚才点击进入的Activity,按照顺序依次退出。直到任务栈内没有Activity,会回收这个任务栈。 Standard 系统默认启动模式,每次点击跳转Activity,都会创建一个新的Activity,即使存在也会重新创建。点击返回键,会按照点击顺序依次退出Activity SingleTop 栈顶复用模式:此Activity已经存在任务栈并且在栈顶,再次点击不会创建,会调用的是它的 onNewInstance() 方法,通过此方法获取请求数据。假如不在栈顶,会再次创建 SingleTask 栈内复用模式:单实例模式。创建Activity之前,会在栈内查找是否存在这个实例,存在的话会重新启动,并将它上面的Activity全部出栈,调用 onNewInstance() ;不存在则创建。 SingleInstance 单实例模式:唯一性,栈内复用。具备SingleTask全部特性

怎么跳过阿里腾讯框架面试中的陷阱?这样做!高效学习移动开发

╄→гoц情女王★ 提交于 2019-12-25 00:23:37
这两年移动端发展的越来越快,在ios上特别明显,而Android也是遭遇到了很多打击 特别随着初中级Android开发的逐渐饱和,也让企业在甄选Android面试候选人时变得格外严格,恨不得找一位Android开发做所有的事 我在平时的工作中也是一直接触较多候选人,就这里想和大家说下我对于Android面试的一些看法 1.首先对于Android基础知识的掌握必须要通透! 我把Android基础知识分为:四大组件Activitiy、service、广播、内容提供者,还有fragment,当然这些知识点也不是独立的,每个之间都有融合再一起的知识 比如Activity这个知识点,首先我们需要掌握Activity的使用场景 最常见的在这个Activity中通过嵌入fragment来进行整个项目UI架构的搭建,这时候这个Activity就是整个项目的一个外壳 我们还需要了解整个Activity的生命周期,要知道在那些方法中可以做耗时操作,哪些方法是不可以做耗时操作 在掌握Activity时,我们还需要注意Context的使用,区分在哪些场景可以使用Application context,哪些场景我们尽量使用Activity context 接下来我们还需要掌握Activity的启动模式,知道哪些场景下使用singleTask、哪些场景下使用singTop。 我们回到我们的面试