android:multiprocess
这个属性用于设置Activity的实例能否被加载到与启动它的那个组件所在的进程中,如果设置为true,则可以,否则不可以。默认值是false。
通常,一个新的Activity实例会被加载到定义它的应用程序的进程中,以便应用程序的所有Activity都运行在同一个进程中。但是,如果这个属性被设置为true,那么这个Activity的实例就可以运行在多个进程中,允许系统在使用它们的进程中来创建实例(权限许可的情况下),这几乎是从来都不需要的事情。
android:name
这个属性用于设置Activity的实现类(Activity的子类)的名字。这个属性值应该是完整的Java类名,如:com.example.project.ExtracurricularActivity。但是,可以用简写的方式,名字第一个字符用“.”符号,如:.ExtracurricularActivity。它对应的包名是在<manifest>元素中指定的。
一旦发布了应用程序,就不应该改变这个名称了(除非设置了android:exported=”false”)。
这个属性没有默认值,名称必须被指定。
android:noHistory
这个属性用于设置在用户离开该Activity,并且它在屏幕上不再可见的时候,它是否应该从Activity的堆栈被删除。如果设置了true,则要删除,否则不删除。默认值是false。
如果设置为true,则意味着Activity不会保留历史轨迹。也就是说,它不会保留在任务的Activity堆栈中,因此用户不能够在返回到这个Activity。
这个属性在API Level 3中被引入。
android:permission
这个属性用于设定启动Activity的客户端或者是响应一个Intent对象的请求所必须要有的权限。如果startActivity()方法或startActivityForResult()方法的调用者没有被授予指定的权限,那么它的Intent对象就不会发送给对应的Activity。
如果这个属性没有设置,那么<application>元素中的permission属性的设置就应用到Activity元素上。如果<application>元素也没有设置,那么这个Activity就不会受到权限的保护。
android:process
这个属性用于设置Activity应该运行的那个进程的名字。通常,应用程序的所有组件都运行在为这个程序所创建的一个默认的进程中。它跟应用程序的包有相同的名字。<application>元素的process属性能够给所有的组件设置一个不同的默认值。但是每个组件都能够覆盖这个默认设置,允许把应用程序分离到多个进程中。
如果这个属性名的值是用“:”开始,那么在需要的时候,就会创建一个应用程序私有的新的进程,这个Activity就会运行在这个进程中。如果进程名使用小写字母开头,那么在权限许可的情况下,该Activity会运行在用它命名的全局进程中。这样就运行不同应用程序的组件能够共享一个进程,从而减少资源的使用。
android:screenOrientation
这个属性用于设置Activity在设备上显示的方向。
属性值可以是下表中列出的一个值:
unspecified
|
默认值,由系统来选择方向。它的使用策略,以及由于选择时特定的上下文环境,可能会因为设备的差异而不同。
|
user
|
使用用户当前首选的方向。
|
behind
|
使用Activity堆栈中与该Activity之下的那个Activity的相同的方向。
|
landscape
|
横向显示(宽度比高度要大)
|
portrait
|
纵向显示(高度比宽度要大)
|
reverseLandscape
|
与正常的横向方向相反显示,在API Level 9中被引入。
|
reversePortrait
|
与正常的纵向方向相反显示,在API Level 9中被引入。
|
sensorLandscape
|
横向显示,但是基于设备传感器,既可以是按正常方向显示,也可以反向显示,在API Level 9中被引入。
|
sensorPortrait
|
纵向显示,但是基于设备传感器,既可以是按正常方向显示,也可以反向显示,在API Level 9中被引入。
|
sensor
|
显示的方向是由设备的方向传感器来决定的。显示方向依赖与用户怎样持有设备;当用户旋转设备时,显示的方向会改变。但是,默认情况下,有些设备不会在所有的四个方向上都旋转,因此要允许在所有的四个方向上都能旋转,就要使用fullSensor属性值。
|
fullSensor
|
显示的方向(4个方向)是由设备的方向传感器来决定的,除了它允许屏幕有4个显示方向之外,其他与设置为“sensor”时情况类似,不管什么样的设备,通常都会这么做。例如,某些设备通常不使用纵向倒转或横向反转,但是使用这个设置,还是会发生这样的反转。这个值在API Level 9中引入。
|
nosensor
|
屏幕的显示方向不会参照物理方向传感器。传感器会被忽略,所以显示不会因用户移动设备而旋转。除了这个差别之外,系统会使用与“unspecified”设置相同的策略来旋转屏幕的方向。
|
注意:在给这个属性设置的值是“landscape”或portrait的时候,要考虑硬件对Activity运行的方向要求。正因如此,这些声明的值能够被诸如Google Play这样的服务所过滤,以便应用程序只能适用于那些支持Activity所要求的方向的设备。例如,如果声明了“landscape”、“reverseLandscape”、或“sensorLandscape”,那么应用程序就只能适用于那些支持横向显示的设备。但是,还应该使用<uses-feature>元素来明确的声明应用程序所有的屏幕方向是纵向的还是横行的。例如:<uses-feature
android:name=”android.hardware.screen.portrait”/>。这个设置由Google Play提供的纯粹的过滤行为,并且在设备仅支持某个特定的方向时,平台本身并不控制应用程序是否能够被按照。
android:stateNotNeeded
这个属性用于设置在没有保存Activity状态的情况下,它能否被销毁且成功的重启。如果设置为true,则不引用Activity之前的状态就能够被重启,如果设置为false,重启Activity时,则需要它之前的状态。默认值是false。
通常,Activity在最终被关掉之前,会调用onSaveInstanceState()方法来保存资源。这个方法会用一个Bundle对象来保存Activity的当前状态,然后在这个Activity被重启时,再把这个Bundle对象传递给onCreate()方法。如果这个属性设置为true,onSaveInstanceState()方法就可以不被调用,并且调用onCreate()方法时,会用null来代替Bundle对象,就像Activity被第一次重启一样。
设置为true,会确保Activity在缺省状态下能够被重启。例如,在主屏显示的Activity如果使用这个设置,即使由于某些原因导致Activity崩溃,也会确保它不会被删除。
分享到:
相关推荐
AndroidManifest.xml 是每个android程序中必须的文件。它位于整个项目的根目录,描述了package中暴露的组件(activities, services, 等等),他们各自的实现类,各种能被处理的数据和启动位置。 除了能声明程序中的...
AndroidManifest.xml 是每个android程序中必须的文件。它位于整个项目的根目录,描述了package中暴露的组件(activities, services, 等等),他们各自的实现类,各种能被处理的数据和启动位置。 除了能声明程序中的...
aFileChooser是android平台上的一个第三方文件选择器,其在github上的项目主页是...(1) 首先要配置Androidmanifest.xml文件: <activity android:name=com.ipaulpro.afilechooser.FileChooserActivity and
门——Activity(一) Activity是什么: Activity作为Andorid的四大组件...在AndroidManifest.xml文件中配置 这里是使用Android Studio创建项目默认创建的MainActivity代码 class MainActivity : AppCompatActivity()
首先在AndroidManifest.xml文件,activity同级节点注册provider: <provider android:name=android.support.v4.content.FileProvider android:authorities=${applicationId}.file_provider android:exported=...
本文实例讲述了Android Activity启动模式之singleTop。分享给大家供大家参考,具体如下: 在前面文章《Android ...(1)修改AndroidManifest.xml 修改该配置文件,设置MainActivity的启动模式为singleTop,如下:
service组件跟activity组件及其类似,可以说service是没有界面的activity, 当然service的生命周期... 2,在AndroidManifest.xml 文件中配置该service。 怎么启动service呢,想想启动activity是不是有两种方法:
静态注册广播就是在androidManifest.xml文件中注册广播,假设我们要实现这样一个效果,在一个activity上点击按钮,发送一条广播,这条广播弹出一个toast,显示“静态”二字。 先看看广播接受者: public class ...
1.Appium Appium是一个开源测试自动化框架,可用于原生,混合和移动Web应用程序测试, 它使用WebDriver协议驱动iOS,Android和Windows...逆向AndroidManifest.xml 下载AXMLPrinter2.jar文件,逆向xml文件:命令行输入
插件以APK的形式保存在SD卡上,通过startActivity方式启动Activity需要首先将Activity注册到AndroidManifest.xml,如果没有注册就会出现如下错误。 Instrymentation.checkStartActivityResult 要实现插件Activity的...
前言 在 Android 5.0 之前,我们已经有了 overridePendingTransition() 方法来... 在 res/value/style 文件中为每个 Activity 指定转场动画的 style ,并在 AndroidManifest.xml 文件中为每个 Activity 设置对应的 a
前面一篇写了生成二维码图片,这篇来写使用...在使用它之前需要先配置 android\app\src\main\AndroidManifest.xml 在该文件中添加添加app获取相机权限及BarcodeScanner activity <!--获取相机权限--> <use
本文实例分析了Android Activity启动模式之singleTask。分享给大家供大家参考,具体如下: 前面的文章介绍了Android 活动Activity的启动模式:standard 和...(1)修改AndroidManifest.xml 修改活动MainActivity的启
从事Android开发,免不了会在应用里嵌入一些广告SDK,在嵌入了众多SDK后,发现几乎每个要求在AndroidManifest.xml申明Activity的广告SDK都会要求加上注明这么一句属性: 代码如下:android:configChanges=”...
本文实例讲述了Android ActionBar搜索功能用法。分享给大家供大家参考,具体如下: 使用ActionBar SearchView时...1. 在AndroidManifest.xml中为提供SearchView的Activity添加meta-data <activity android:name=.n
Android 里面控制Activity的方向,只要在AndroidManifest.xml里面对应的Activity节点下加一句 android:screenOrientation=”landscape”(landscape是横屏,portrait竖屏)。 我凭这句话混了一年,基本都可以的,...
1.修改AndroidManifest.xml 设置App的全局Theme或者Activity的界面Theme android:icon=@drawable/ipod_icon android:label=@string/app_name android:launchMode=singleTask> <!-- iPod主界面 --> <...
Android安全开发基础: 应用程序配置文件详解(AndroidManifest.xml) Android安全逆向工程: 逆向工程知识技能补充篇 Android安全软件壳: 说说Android软件壳 Android安全应用逆向: 反编译classes.dex文件 Android安全...
2.3.1 androidmanifest.xml文件 2.3.2 src目录 2.3.3 常量的定义文件 2.4 程序生命周期 2.4.1 android周期 2.4.2 android进程 2.5 activity的生命周期 2.5.1 activity状态 2.5.2 剖析activity 2.6 android进程和线程...
Android安全开发基础--15--应用程序配置文件详解(AndroidManifest.xml).pdf Android安全开发基础--2--四大组件之活动(Activity).pdf Android安全开发基础--3--四大组件之服务 (Service).pdf Android安全开发基础...