開始前先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_VIEW
, ACTION_EDIT
, ACTION_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