Android Manifest.xml 之 Intent-filter

開始前先post出最簡單的AndroidManifest.xml文件:html

<?xml version="1.0" encoding="UTF-8"?>
 
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.android.actionbarcompat.basic"
    android:versionCode="1"
    android:versionName="1.0">
 
    <!-- ActionBarCompat provides an Action Bar from API v7 onwards -->
    <uses-sdk
        android:minSdkVersion="7"
        android:targetSdkVersion="17" />
 
    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/Theme.AppCompat"
        android:allowBackup="true">
 
        <activity android:name=".MainActivity">
            <!-- Launcher Intent filter -->
            <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter>
        </activity>
    </application>
 
</manifest>

  Android核心組件(Activity,Service,Broadcast Receiver)經過Intent來激活,Intent描述了actioin,data等信息;在某個component被激活前,要提早寫好該component能處理那些Intent,這就須要在AndroidManifest.xml 裏<intent-filter></intent-filter>標籤內寫好。android

      <intent-filter>...</intent-filter>省略號能夠有如下內容:express

      

  • action -- The general action to be performed, such as ACTION_VIEWACTION_EDITACTION_MAIN, etc.app

  • data -- The data to operate on, such as a person record in the contacts database, expressed as a Uri.ide

  • category -- Gives additional information about the action to execute. For example, CATEGORY_LAUNCHER means it should appear in the Launcher as a top-level application, while CATEGORY_ALTERNATIVE means it should be included in a list of alternative actions the user can perform on a piece of data.post

  • type -- Specifies an explicit type (a MIME type) of the intent data. Normally the type is inferred from the data itself. By setting this attribute, you disable that evaluation and force an explicit type.this

  • component -- Specifies an explicit name of a component class to use for the intent. Normally this is determined by looking at the other information in the intent (the action, data/type, and categories) and matching that with a component that can handle it. If this attribute is set then none of the evaluation is performed, and this component is used exactly as is. By specifying this attribute, all of the other Intent attributes become optional.lua

  • extras -- This is a Bundle of any additional information. This can be used to provide extended information to the component. For example, if we have a action to send an e-mail message, we could also include extra pieces of data here to supply a subject, body, etc.spa

相關文章
相關標籤/搜索