Xml文件  |  250行  |  11.85 KB

<?xml version="1.0" encoding="utf-8"?>
<!--
/* //device/apps/Calendar/AndroidManifest.xml
**
** Copyright 2006, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
**     http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.android.calendar"
        android:sharedUserLabel="@string/app_label">

    <!--
       NOTE: and original-package cannot be used, since the Eclair
       version was using a shared user ID with the provider.
    -->

    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
    <uses-permission android:name="android.permission.MANAGE_ACCOUNTS"/>
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.VIBRATE"/>
    <uses-permission android:name="android.permission.READ_CONTACTS"/>
    <uses-permission android:name="android.permission.READ_CALENDAR" />
    <uses-permission android:name="android.permission.WRITE_CALENDAR" />
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="android.permission.USE_CREDENTIALS" />
    <uses-permission android:name="android.permission.READ_SYNC_SETTINGS" />
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
    <uses-permission android:name="com.google.android.googleapps.permission.GOOGLE_AUTH.mail" />
    <uses-sdk android:minSdkVersion="15" android:targetSdkVersion="18"></uses-sdk>

    <application android:name="CalendarApplication"
            android:label="@string/app_label" android:icon="@mipmap/ic_launcher_calendar"
            android:taskAffinity="android.task.calendar"
            android:hardwareAccelerated="true"
            android:backupAgent="com.android.calendar.CalendarBackupAgent"
            android:requiredAccountType="*" >

        <meta-data android:name="com.google.android.backup.api_key"
                android:value="AEdPqrEAAAAIM256oVOGnuSel5QKDpL8je_T65ZI8rFnDinssA" />

        <activity
            android:name="AllInOneActivity"
            android:theme="@style/CalendarTheme.WithActionBar"
            android:launchMode="singleTask"
            android:windowSoftInputMode="adjustPan"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.LAUNCHER" />
                <category android:name="android.intent.category.APP_CALENDAR" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <data android:mimeType="time/epoch" />
                <data android:host="com.android.calendar" />
                <data android:scheme="content"/>
            </intent-filter>
        </activity>

        <activity-alias android:name="LaunchActivity"
            android:targetActivity=".AllInOneActivity"
            android:exported="true">
        </activity-alias>

        <activity android:name="EventInfoActivity"
            android:parentActivityName="com.android.calendar.AllInOneActivity"
            android:theme="@style/CalendarTheme.WithActionBar">
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <data android:mimeType="vnd.android.cursor.item/event" />
            </intent-filter>
            <meta-data android:name="android.support.PARENT_ACTIVITY"
                android:value="com.android.calendar.AllInOneActivity" />
        </activity>

        <activity android:name=".event.EditEventActivity"
            android:theme="@style/CalendarTheme.WithActionBar">
        </activity>

        <activity-alias android:name="EditEventActivity"
            android:targetActivity=".event.EditEventActivity"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.EDIT" />
                <action android:name="android.intent.action.INSERT" />
                <category android:name="android.intent.category.DEFAULT" />
                <data android:mimeType="vnd.android.cursor.item/event" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.EDIT" />
                <action android:name="android.intent.action.INSERT" />
                <category android:name="android.intent.category.DEFAULT" />
                <data android:mimeType="vnd.android.cursor.dir/event" />
            </intent-filter>
        </activity-alias>

        <activity android:name="GoogleCalendarUriIntentFilter" android:label="@string/app_label"
            android:theme="@android:style/Theme.NoDisplay"
            android:configChanges="orientation|keyboardHidden">

            <intent-filter
               android:priority="50">
               <action android:name="android.intent.action.VIEW" />
               <category android:name="android.intent.category.DEFAULT" />
               <category android:name="android.intent.category.BROWSABLE" />
               <data android:scheme="http" android:host="www.google.com" android:pathPrefix="/calendar/event" />
               <data android:scheme="https" android:host="www.google.com" android:pathPrefix="/calendar/event" />
               <data android:scheme="http" android:host="www.google.com" android:pathPattern="/calendar/hosted/.*/event" />
               <data android:scheme="https" android:host="www.google.com" android:pathPattern="/calendar/hosted/.*/event" />
            </intent-filter>
        </activity>

        <activity android:name=".selectcalendars.SelectVisibleCalendarsActivity"
            android:label="@string/select_visible_calendars_title"
            android:theme="@android:style/Theme.Holo.Light"/>

        <activity android:name=".selectcalendars.SelectSyncedCalendarsMultiAccountActivity"
            android:label="@string/select_synced_calendars_title"
            android:theme="@android:style/Theme.Holo.Light"/>

        <activity android:name="CalendarSettingsActivity" android:label="@string/preferences_title"
            android:theme="@android:style/Theme.Holo.Light"/>

        <!-- Declarations for search -->
        <!-- Make all activities a searchable context -->
        <meta-data android:name="android.app.default_searchable"
            android:value="com.android.calendar.SearchActivity"/>

        <activity android:name="SearchActivity" android:label="@string/search_title"
            android:launchMode="singleTop" android:theme="@style/CalendarTheme.WithActionBar"
            android:windowSoftInputMode="stateAlwaysHidden"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.SEARCH"/>
            </intent-filter>
            <meta-data android:name="android.app.searchable" android:resource="@xml/searchable"/>
        </activity>

        <provider android:name=".CalendarRecentSuggestionsProvider"
            android:exported="false"
            android:authorities="com.android.calendar.CalendarRecentSuggestionsProvider" />

        <!-- Declarations for alerts/reminders -->
        <activity android:name=".alerts.AlertActivity" android:launchMode="singleInstance"
             android:theme="@android:style/Theme.Holo.Dialog" android:excludeFromRecents="true" />

        <activity android:name=".alerts.QuickResponseActivity" android:launchMode="singleInstance"
             android:theme="@android:style/Theme.Holo.Dialog" android:excludeFromRecents="true"
             android:label="@string/quick_response_dialog_title" />

        <receiver android:name=".alerts.AlertReceiver">
            <intent-filter>
                <action android:name="android.intent.action.EVENT_REMINDER" />
                <action android:name="android.intent.action.TIME_SET" />
                <data android:scheme="content" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.LOCALE_CHANGED" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.PROVIDER_CHANGED"/>
                <data android:scheme="content"/>
                <data android:host="com.android.calendar"/>
            </intent-filter>
        </receiver>

        <receiver android:name=".alerts.GlobalDismissManager"
                  android:exported="false" />

        <receiver android:name=".UpgradeReceiver">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.MY_PACKAGE_REPLACED" />
                <data android:scheme="package"/>
            </intent-filter>
        </receiver>

        <service android:name=".alerts.AlertService" />

        <service android:name=".alerts.DismissAlarmsService" />

        <service android:name=".alerts.SnoozeAlarmsService" />

        <service android:name=".alerts.InitAlarmsService" />

        <!-- Declarations for the widget -->
        <receiver android:name=".widget.CalendarAppWidgetProvider" android:label="@string/gadget_title">
            <intent-filter>
                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
                <action android:name="com.android.calendar.APPWIDGET_UPDATE" />
            </intent-filter>
            <meta-data android:name="android.appwidget.provider" android:resource="@xml/appwidget_info" />
        </receiver>

        <receiver android:name=".widget.CalendarAppWidgetService$CalendarFactory">
            <intent-filter>
                <action android:name="android.intent.action.TIMEZONE_CHANGED"/>
                <action android:name="android.intent.action.DATE_CHANGED"/>
                <action android:name="android.intent.action.TIME_SET"/>
                <action android:name="android.intent.action.LOCALE_CHANGED"/>
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.PROVIDER_CHANGED"/>
                <data android:scheme="content"/>
                <data android:host="com.android.calendar"/>
            </intent-filter>
            <intent-filter>
                <action android:name="com.android.calendar.APPWIDGET_SCHEDULED_UPDATE"/>
                <data android:scheme="content"/>
                <data android:host="com.android.calendar"/>
                <data android:mimeType="vnd.android.data/update" />
            </intent-filter>
        </receiver>

        <service android:name=".widget.CalendarAppWidgetService"
            android:permission="android.permission.BIND_REMOTEVIEWS"
            android:exported="false">
        </service>

        <service android:name=".AsyncQueryServiceHelper" />

    </application>
</manifest>