200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > xml 和android脚本之家 AndroidManifest.xml配置文件解析_Android_脚本之家

xml 和android脚本之家 AndroidManifest.xml配置文件解析_Android_脚本之家

时间:2023-07-22 07:50:17

相关推荐

xml 和android脚本之家 AndroidManifest.xml配置文件解析_Android_脚本之家

标签的语法范例。

android:alwaysRetainTaskState=['true' | 'false']

android:clearTaskOnLaunch=['true' | 'false']

android:configChanges=['mcc', 'mnc', 'locale',

'touchscreen', 'keyboard', 'keyboardHidden',

'navigation', 'orientation', 'screenLayout',

'fontScale', 'uiMode']

android:enabled=['true' | 'false']

android:excludeFromRecents=['true' | 'false']

android:exported=['true' | 'false']

android:finishOnTaskLaunch=['true' | 'false']

android:hardwareAccelerated=['true' | 'false']

android:icon='drawable resource'

android:label='string resource'

android:launchMode=['multiple' | 'singleTop' | 'singleTask' | 'singleInstance']

android:multiprocess=['true' | 'false']

android:name='string'

android:noHistory=['true' | 'false']

android:permission='string'

android:process='string'

android:screenOrientation=['unspecified' | 'user' | 'behind' |

'landscape' | 'portrait' |

'sensor' | 'nosensor']

android:stateNotNeeded=['true' | 'false']

android:taskAffinity='string'

android:theme='resource or theme'

android:windowSoftInputMode=['stateUnspecified',

'stateUnchanged', 'stateHidden',

'stateAlwaysHidden', 'stateVisible',

'stateAlwaysVisible', 'adjustUnspecified',

'adjustResize', 'adjustPan'] >

... ...

Activity组件别名的声明标签,简单来说就是Activity的快捷方式,属性android:targetActivity表示的就是其相关的Activity名,当然必须是前面已经声明过的Activity。除此之外,其他比较常见的属性有:Activity别名名称android:name,别名开关android:enabled,权限控制android:permission等。另外,我们还需要注意的是,Activity别名也是一个独立的Activity,可以拥有自己的和元素,其语法范例如下。

android:exported=['true' | 'false']

android:icon='drawable resource'

android:label='string resource'

android:name='string'

android:permission='string'

android:targetActivity='string' >

... ...

与、、

用于Intent消息过滤器的声明,在前面的2.1.3.2节中我们已经对Android应用框架中的Intent消息作过比较详细的介绍,我们了解到Intent消息对于Android应用系统来说,是非常重要的“粘合剂”,元素可以放在、、和元素标签中,来区分可用于处理消息的Activity控制器、Service服务和广播接收器Broadcast Receiver。另外,我们还知道Intent消息还包含有名称、动作、数据、类别等几个重要属性。这点与该标签的写法也有一定的关系,比如中必须包含有元素,即用于描述具体消息的名称;标签则用于表示能处理消息组件的类别,即该Action所符合的类别;而元素则用于描述消息需要处理的数据格式,我们甚至还可以使用正则表达式来限定数据来源。当然,这些元素和标签的具体用法我们还需要慢慢学习,下面是标准元素标签的语法范例。

android:label='string resource'

android:priority='integer' >

android:mimeType='string'

android:path='string'

android:pathPattern='string'

android:pathPrefix='string'

android:port='string'

android:scheme='string' />

用于存储预定义数据,和类似,也可以放在、、和这四个元素标签中。Meta数据一般会以键值对的形式出现,个数没有限制,而这些数据都将被放到一个Bundle对象中,程序中我们则可以使用ActivityInfo、ServiceInfo甚至ApplicationInfo对象的metaData属性中读取。假设我们在一个Activity中定义了一个元素,相关示例用法如下。

ActivityInfo info = this.getPackageManager()

.getActivityInfo(getComponentName(), PackageManager.GET_META_DATA);

String testData = info.metaData.getString('testData');

System.out.println('testData:' + testData);

Service服务组件的声明标签,用于定义与描述一个具体的Android服务,主要属性有:Service服务类名android:name,服务图标android:icon,服务描述android:label以及服务开关android:enabled等。关于Service服务组件的概念和用法请参考2.1.4.2节的内容,以下是标签的语法范例。

android:exported=['true' | 'false']

android:icon='drawable resource'

android:label='string resource'

android:name='string'

android:permission='string'

android:process='string' >

... ...

Boardcast Receiver广播接收器组件的声明标签,用于定义与描述一个具体的Android广播接收器,其主要属性和标签有些类似:Boardcast Receiver接收器类名android:name,接收器图标android:icon,接收器描述android:label以及接收器开关android:enabled等。关于Boardcast Receiver广播接收器组件的概念和用法请参考2.1.4.3节的内容,以下是标签的语法范例。

android:exported=['true' | 'false']

android:icon='drawable resource'

android:label='string resource'

android:name='string'

android:permission='string'

android:process='string' >

... ...

除Activity、Service和Boardcast Receiver之外的另一个“四大组件”,也就是Content Provider内容提供者的声明标签。关于内容提供者组件的概念和用法请参考2.1.4.4节的内容,不再赘述。标签除了和其他组件相同的android:name、android:icon和android:label等基础属性之外,还提供了用于支持其功能的特殊属性,如:内容提供者标识名称android:authorities,对指定URI授予权限标识android:grantUriPermission以及具体的读、写权限,即android:readPermission和android:writePermission等。当然,这些属性的具体用法我们还需要慢慢学习,以下是标签的语法范例。

android:enabled=['true' | 'false']

android:exported=['true' | 'false']

android:grantUriPermissions=['true' | 'false']

android:icon='drawable resource'

android:initOrder='integer'

android:label='string resource'

android:multiprocess=['true' | 'false']

android:name='string'

android:permission='string'

android:process='string'

android:readPermission='string'

android:syncable=['true' | 'false']

android:writePermission='string' >

... ...

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。