You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
363 lines
16 KiB
363 lines
16 KiB
<?xml version="1.0" encoding="utf-8"?>
|
|
<!--
|
|
Copyright (C) 2014 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 package="com.example.android.wearable.watchface"
|
|
xmlns:android="http://schemas.android.com/apk/res/android">
|
|
|
|
<uses-sdk
|
|
android:minSdkVersion="21"
|
|
android:targetSdkVersion="25"/>
|
|
|
|
<uses-feature android:name="android.hardware.type.watch"/>
|
|
|
|
<!-- Required to act as a custom watch face. -->
|
|
<uses-permission android:name="android.permission.WAKE_LOCK"/>
|
|
|
|
<!-- Required for complications to receive complication data and open the provider chooser. -->
|
|
<uses-permission android:name="com.google.android.wearable.permission.RECEIVE_COMPLICATION_DATA"/>
|
|
|
|
<!-- Calendar permission used by CalendarWatchFaceService -->
|
|
<uses-permission android:name="android.permission.READ_CALENDAR"/>
|
|
|
|
<!-- Location permission used by FitDistanceWatchFaceService -->
|
|
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
|
|
|
|
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
|
|
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
|
|
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
|
|
|
|
<application
|
|
android:allowBackup="true"
|
|
android:icon="@drawable/ic_launcher"
|
|
android:label="@string/app_name">
|
|
|
|
<meta-data
|
|
android:name="com.google.android.wearable.standalone"
|
|
android:value="true" />
|
|
|
|
<meta-data
|
|
android:name="com.google.android.gms.version"
|
|
android:value="@integer/google_play_services_version"/>
|
|
|
|
<uses-library
|
|
android:name="com.google.android.wearable"
|
|
android:required="false"/>
|
|
|
|
<service
|
|
android:name=".AnalogWatchFaceService"
|
|
android:label="@string/analog_name"
|
|
android:permission="android.permission.BIND_WALLPAPER">
|
|
<meta-data
|
|
android:name="android.service.wallpaper"
|
|
android:resource="@xml/watch_face"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.preview"
|
|
android:resource="@drawable/preview_analog"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.preview_circular"
|
|
android:resource="@drawable/preview_analog_circular"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.companionConfigurationAction"
|
|
android:value="com.example.android.wearable.watchface.CONFIG_ANALOG"/>
|
|
|
|
<intent-filter>
|
|
<action android:name="android.service.wallpaper.WallpaperService"/>
|
|
|
|
<category android:name="com.google.android.wearable.watchface.category.WATCH_FACE"/>
|
|
</intent-filter>
|
|
</service>
|
|
<service
|
|
android:name=".SweepWatchFaceService"
|
|
android:label="@string/sweep_name"
|
|
android:permission="android.permission.BIND_WALLPAPER">
|
|
<meta-data
|
|
android:name="android.service.wallpaper"
|
|
android:resource="@xml/watch_face"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.preview"
|
|
android:resource="@drawable/preview_analog"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.preview_circular"
|
|
android:resource="@drawable/preview_analog_circular"/>
|
|
|
|
<intent-filter>
|
|
<action android:name="android.service.wallpaper.WallpaperService"/>
|
|
|
|
<category android:name="com.google.android.wearable.watchface.category.WATCH_FACE"/>
|
|
</intent-filter>
|
|
</service>
|
|
<service
|
|
android:name=".OpenGLWatchFaceService"
|
|
android:label="@string/opengl_name"
|
|
android:permission="android.permission.BIND_WALLPAPER">
|
|
<meta-data
|
|
android:name="android.service.wallpaper"
|
|
android:resource="@xml/watch_face"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.preview"
|
|
android:resource="@drawable/preview_opengl"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.preview_circular"
|
|
android:resource="@drawable/preview_opengl_circular"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.companionConfigurationAction"
|
|
android:value="com.example.android.wearable.watchface.CONFIG_OPENGL"/>
|
|
|
|
<intent-filter>
|
|
<action android:name="android.service.wallpaper.WallpaperService"/>
|
|
|
|
<category android:name="com.google.android.wearable.watchface.category.WATCH_FACE"/>
|
|
</intent-filter>
|
|
</service>
|
|
<service
|
|
android:name=".CardBoundsWatchFaceService"
|
|
android:label="@string/card_bounds_name"
|
|
android:permission="android.permission.BIND_WALLPAPER">
|
|
<meta-data
|
|
android:name="android.service.wallpaper"
|
|
android:resource="@xml/watch_face"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.preview"
|
|
android:resource="@drawable/preview_card_bounds"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.preview_circular"
|
|
android:resource="@drawable/preview_card_bounds_circular"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.companionConfigurationAction"
|
|
android:value="com.example.android.wearable.watchface.CONFIG_CARD_BOUNDS"/>
|
|
|
|
<intent-filter>
|
|
<action android:name="android.service.wallpaper.WallpaperService"/>
|
|
|
|
<category android:name="com.google.android.wearable.watchface.category.WATCH_FACE"/>
|
|
</intent-filter>
|
|
</service>
|
|
<service
|
|
android:name=".ComplicationSimpleWatchFaceService"
|
|
android:enabled="true"
|
|
android:label="@string/complication_simple"
|
|
android:permission="android.permission.BIND_WALLPAPER">
|
|
<meta-data
|
|
android:name="android.service.wallpaper"
|
|
android:resource="@xml/watch_face"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.preview"
|
|
android:resource="@drawable/preview_complication_simple"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.preview_circular"
|
|
android:resource="@drawable/preview_complication_simple"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.wearableConfigurationAction"
|
|
android:value="com.example.android.wearable.watchface.CONFIG_COMPLICATION_SIMPLE"/>
|
|
|
|
<intent-filter>
|
|
<action android:name="android.service.wallpaper.WallpaperService"/>
|
|
|
|
<category android:name="com.google.android.wearable.watchface.category.WATCH_FACE"/>
|
|
</intent-filter>
|
|
</service>
|
|
|
|
<activity android:name="android.support.wearable.complications.ComplicationHelperActivity"/>
|
|
<activity
|
|
android:name=".ComplicationSimpleConfigActivity"
|
|
android:label="@string/complication_simple">
|
|
<intent-filter>
|
|
<action android:name="com.example.android.wearable.watchface.CONFIG_COMPLICATION_SIMPLE"/>
|
|
|
|
<category android:name="com.google.android.wearable.watchface.category.WEARABLE_CONFIGURATION"/>
|
|
<category android:name="android.intent.category.DEFAULT"/>
|
|
</intent-filter>
|
|
</activity>
|
|
|
|
<service
|
|
android:name=".InteractiveWatchFaceService"
|
|
android:label="@string/interactive_name"
|
|
android:permission="android.permission.BIND_WALLPAPER">
|
|
<meta-data
|
|
android:name="android.service.wallpaper"
|
|
android:resource="@xml/watch_face"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.preview"
|
|
android:resource="@drawable/preview_interactive"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.preview_circular"
|
|
android:resource="@drawable/preview_interactive_circular"/>
|
|
|
|
<intent-filter>
|
|
<action android:name="android.service.wallpaper.WallpaperService"/>
|
|
|
|
<category android:name="com.google.android.wearable.watchface.category.WATCH_FACE"/>
|
|
</intent-filter>
|
|
</service>
|
|
<service
|
|
android:name=".DigitalWatchFaceService"
|
|
android:label="@string/digital_name"
|
|
android:permission="android.permission.BIND_WALLPAPER">
|
|
<meta-data
|
|
android:name="android.service.wallpaper"
|
|
android:resource="@xml/watch_face"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.preview"
|
|
android:resource="@drawable/preview_digital"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.preview_circular"
|
|
android:resource="@drawable/preview_digital_circular"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.companionConfigurationAction"
|
|
android:value="com.example.android.wearable.watchface.CONFIG_DIGITAL"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.wearableConfigurationAction"
|
|
android:value="com.example.android.wearable.watchface.CONFIG_DIGITAL"/>
|
|
|
|
<intent-filter>
|
|
<action android:name="android.service.wallpaper.WallpaperService"/>
|
|
|
|
<category android:name="com.google.android.wearable.watchface.category.WATCH_FACE"/>
|
|
</intent-filter>
|
|
</service>
|
|
|
|
<!--
|
|
All intent-filters for config actions must include the categories
|
|
com.google.android.wearable.watchface.category.WEARABLE_CONFIGURATION
|
|
and android.intent.category.DEFAULT.
|
|
-->
|
|
|
|
<activity
|
|
android:name=".DigitalWatchFaceWearableConfigActivity"
|
|
android:label="@string/digital_config_name">
|
|
<intent-filter>
|
|
<action android:name="com.example.android.wearable.watchface.CONFIG_DIGITAL"/>
|
|
|
|
<category android:name="com.google.android.wearable.watchface.category.WEARABLE_CONFIGURATION"/>
|
|
<category android:name="android.intent.category.DEFAULT"/>
|
|
</intent-filter>
|
|
</activity>
|
|
|
|
<service
|
|
android:name=".CalendarWatchFaceService"
|
|
android:label="@string/calendar_name"
|
|
android:permission="android.permission.BIND_WALLPAPER">
|
|
<meta-data
|
|
android:name="android.service.wallpaper"
|
|
android:resource="@xml/watch_face"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.preview"
|
|
android:resource="@drawable/preview_calendar"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.preview_circular"
|
|
android:resource="@drawable/preview_calendar_circular"/>
|
|
|
|
<intent-filter>
|
|
<action android:name="android.service.wallpaper.WallpaperService"/>
|
|
|
|
<category android:name="com.google.android.wearable.watchface.category.WATCH_FACE"/>
|
|
</intent-filter>
|
|
</service>
|
|
<service android:name=".DigitalWatchFaceConfigListenerService">
|
|
<intent-filter>
|
|
<action android:name="com.google.android.gms.wearable.MESSAGE_RECEIVED"/>
|
|
|
|
<data
|
|
android:host="*"
|
|
android:pathPrefix="/"
|
|
android:scheme="wear"/>
|
|
</intent-filter>
|
|
</service>
|
|
<service
|
|
android:name=".FitDistanceWatchFaceService"
|
|
android:label="@string/fit_distance_name"
|
|
android:permission="android.permission.BIND_WALLPAPER">
|
|
<meta-data
|
|
android:name="android.service.wallpaper"
|
|
android:resource="@xml/watch_face"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.preview"
|
|
android:resource="@drawable/preview_distance"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.preview_circular"
|
|
android:resource="@drawable/preview_distance_circular"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.companionConfigurationAction"
|
|
android:value="com.example.android.wearable.watchface.CONFIG_FIT_DISTANCE"/>
|
|
|
|
<intent-filter>
|
|
<action android:name="android.service.wallpaper.WallpaperService"/>
|
|
|
|
<category android:name="com.google.android.wearable.watchface.category.WATCH_FACE"/>
|
|
</intent-filter>
|
|
</service>
|
|
<service
|
|
android:name=".FitStepsWatchFaceService"
|
|
android:label="@string/fit_steps_name"
|
|
android:permission="android.permission.BIND_WALLPAPER">
|
|
<meta-data
|
|
android:name="android.service.wallpaper"
|
|
android:resource="@xml/watch_face"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.preview"
|
|
android:resource="@drawable/preview_fit"/>
|
|
<meta-data
|
|
android:name="com.google.android.wearable.watchface.preview_circular"
|
|
android:resource="@drawable/preview_fit_circular"/>
|
|
|
|
<intent-filter>
|
|
<action android:name="android.service.wallpaper.WallpaperService"/>
|
|
|
|
<category android:name="com.google.android.wearable.watchface.category.WATCH_FACE"/>
|
|
</intent-filter>
|
|
</service>
|
|
|
|
<activity
|
|
android:name=".CalendarWatchFacePermissionActivity"
|
|
android:label="@string/title_activity_calendar_watch_face_permission">
|
|
</activity>
|
|
|
|
<service
|
|
android:name=".provider.RandomNumberProviderService"
|
|
android:icon="@drawable/ic_launcher"
|
|
android:label="@string/complications_provider_random_number"
|
|
android:permission="com.google.android.wearable.permission.BIND_COMPLICATION_PROVIDER">
|
|
<intent-filter>
|
|
<action android:name="android.support.wearable.complications.ACTION_COMPLICATION_UPDATE_REQUEST"/>
|
|
</intent-filter>
|
|
|
|
<meta-data
|
|
android:name="android.support.wearable.complications.SUPPORTED_TYPES"
|
|
android:value="RANGED_VALUE,SHORT_TEXT,LONG_TEXT"/>
|
|
<!--
|
|
When your complication data provider is active, UPDATE_PERIOD_SECONDS specifies how
|
|
often you want the system to check for updates to the data. In this case, the time is
|
|
specified to 600 seconds (10 minutes).
|
|
|
|
In general, you want to set this value high and manually trigger updates only when your
|
|
complication data actually changes via ProviderUpdateRequester (check
|
|
UpdateComplicationDataService.java for an example).
|
|
|
|
In everyday use, developers should consider intervals in the order of minutes.
|
|
Also, remember that this is only a guidance for the system. Android Wear may update less
|
|
frequently.
|
|
-->
|
|
<meta-data
|
|
android:name="android.support.wearable.complications.UPDATE_PERIOD_SECONDS"
|
|
android:value="600"/>
|
|
</service>
|
|
<service
|
|
android:name=".provider.UpdateComplicationDataService"
|
|
android:exported="false">
|
|
</service>
|
|
</application>
|
|
|
|
</manifest> |