Home | History | Annotate | Download | only in main
      1 <?xml version="1.0" encoding="utf-8"?>
      2 <!--
      3  Copyright (C) 2014 The Android Open Source Project
      4 
      5      Licensed under the Apache License, Version 2.0 (the "License");
      6      you may not use this file except in compliance with the License.
      7      You may obtain a copy of the License at
      8 
      9           http://www.apache.org/licenses/LICENSE-2.0
     10 
     11      Unless required by applicable law or agreed to in writing, software
     12      distributed under the License is distributed on an "AS IS" BASIS,
     13      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     14      See the License for the specific language governing permissions and
     15      limitations under the License.
     16 -->
     17 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     18     package="com.example.android.wearable.watchface" >
     19 
     20     <uses-sdk
     21         android:minSdkVersion="21"
     22         android:targetSdkVersion="23" />
     23 
     24     <uses-feature android:name="android.hardware.type.watch" />
     25 
     26     <!-- Required to act as a custom watch face. -->
     27     <uses-permission android:name="android.permission.WAKE_LOCK" />
     28 
     29     <!-- Calendar permission used by CalendarWatchFaceService -->
     30     <uses-permission android:name="android.permission.READ_CALENDAR" />
     31 
     32     <!-- Location permission used by FitDistanceWatchFaceService -->
     33     <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
     34 
     35     <application
     36         android:allowBackup="true"
     37         android:icon="@drawable/ic_launcher"
     38         android:label="@string/app_name" >
     39 
     40         <meta-data
     41             android:name="com.google.android.gms.version"
     42             android:value="@integer/google_play_services_version" />
     43 
     44         <uses-library android:name="com.google.android.wearable" android:required="false" />
     45 
     46         <service
     47             android:name=".AnalogWatchFaceService"
     48             android:label="@string/analog_name"
     49             android:permission="android.permission.BIND_WALLPAPER" >
     50             <meta-data
     51                 android:name="android.service.wallpaper"
     52                 android:resource="@xml/watch_face" />
     53             <meta-data
     54                 android:name="com.google.android.wearable.watchface.preview"
     55                 android:resource="@drawable/preview_analog" />
     56             <meta-data
     57                 android:name="com.google.android.wearable.watchface.preview_circular"
     58                 android:resource="@drawable/preview_analog_circular" />
     59             <meta-data
     60                 android:name="com.google.android.wearable.watchface.companionConfigurationAction"
     61                 android:value="com.example.android.wearable.watchface.CONFIG_ANALOG" />
     62 
     63             <intent-filter>
     64                 <action android:name="android.service.wallpaper.WallpaperService" />
     65 
     66                 <category android:name="com.google.android.wearable.watchface.category.WATCH_FACE" />
     67             </intent-filter>
     68         </service>
     69         <service
     70             android:name=".SweepWatchFaceService"
     71             android:label="@string/sweep_name"
     72             android:permission="android.permission.BIND_WALLPAPER" >
     73             <meta-data
     74                 android:name="android.service.wallpaper"
     75                 android:resource="@xml/watch_face" />
     76             <meta-data
     77                 android:name="com.google.android.wearable.watchface.preview"
     78                 android:resource="@drawable/preview_analog" />
     79             <meta-data
     80                 android:name="com.google.android.wearable.watchface.preview_circular"
     81                 android:resource="@drawable/preview_analog_circular" />
     82 
     83             <intent-filter>
     84                 <action android:name="android.service.wallpaper.WallpaperService" />
     85 
     86                 <category android:name="com.google.android.wearable.watchface.category.WATCH_FACE" />
     87             </intent-filter>
     88         </service>
     89         <service
     90             android:name=".OpenGLWatchFaceService"
     91             android:label="@string/opengl_name"
     92             android:permission="android.permission.BIND_WALLPAPER" >
     93             <meta-data
     94                 android:name="android.service.wallpaper"
     95                 android:resource="@xml/watch_face" />
     96             <meta-data
     97                 android:name="com.google.android.wearable.watchface.preview"
     98                 android:resource="@drawable/preview_opengl" />
     99             <meta-data
    100                 android:name="com.google.android.wearable.watchface.preview_circular"
    101                 android:resource="@drawable/preview_opengl_circular" />
    102             <meta-data
    103                 android:name="com.google.android.wearable.watchface.companionConfigurationAction"
    104                 android:value="com.example.android.wearable.watchface.CONFIG_OPENGL" />
    105 
    106             <intent-filter>
    107                 <action android:name="android.service.wallpaper.WallpaperService" />
    108 
    109                 <category android:name="com.google.android.wearable.watchface.category.WATCH_FACE" />
    110             </intent-filter>
    111         </service>
    112         <service
    113             android:name=".CardBoundsWatchFaceService"
    114             android:label="@string/card_bounds_name"
    115             android:permission="android.permission.BIND_WALLPAPER" >
    116             <meta-data
    117                 android:name="android.service.wallpaper"
    118                 android:resource="@xml/watch_face" />
    119             <meta-data
    120                 android:name="com.google.android.wearable.watchface.preview"
    121                 android:resource="@drawable/preview_card_bounds" />
    122             <meta-data
    123                 android:name="com.google.android.wearable.watchface.preview_circular"
    124                 android:resource="@drawable/preview_card_bounds_circular" />
    125             <meta-data
    126                 android:name="com.google.android.wearable.watchface.companionConfigurationAction"
    127                 android:value="com.example.android.wearable.watchface.CONFIG_CARD_BOUNDS" />
    128 
    129             <intent-filter>
    130                 <action android:name="android.service.wallpaper.WallpaperService" />
    131 
    132                 <category android:name="com.google.android.wearable.watchface.category.WATCH_FACE" />
    133             </intent-filter>
    134         </service>
    135 
    136         <service
    137             android:name=".ComplicationSimpleWatchFaceService"
    138             android:enabled="true"
    139             android:label="@string/complication_simple"
    140             android:permission="android.permission.BIND_WALLPAPER">
    141             <meta-data
    142                 android:name="android.service.wallpaper"
    143                 android:resource="@xml/watch_face"/>
    144             <meta-data
    145                 android:name="com.google.android.wearable.watchface.preview"
    146                 android:resource="@drawable/preview_complication_simple"/>
    147             <meta-data
    148                 android:name="com.google.android.wearable.watchface.preview_circular"
    149                 android:resource="@drawable/preview_complication_simple"/>
    150             <meta-data
    151                 android:name="com.google.android.wearable.watchface.wearableConfigurationAction"
    152                 android:value="com.example.android.wearable.watchface.CONFIG_COMPLICATION_SIMPLE"/>
    153 
    154             <intent-filter>
    155                 <action android:name="android.service.wallpaper.WallpaperService"/>
    156 
    157                 <category android:name="com.google.android.wearable.watchface.category.WATCH_FACE"/>
    158             </intent-filter>
    159         </service>
    160         <activity
    161             android:name=".ComplicationSimpleConfigActivity"
    162             android:label="@string/complication_simple">
    163             <intent-filter>
    164                 <action android:name="com.example.android.wearable.watchface.CONFIG_COMPLICATION_SIMPLE"/>
    165 
    166                 <category android:name="com.google.android.wearable.watchface.category.WEARABLE_CONFIGURATION"/>
    167                 <category android:name="android.intent.category.DEFAULT"/>
    168             </intent-filter>
    169         </activity>
    170 
    171         <service
    172             android:name=".InteractiveWatchFaceService"
    173             android:label="@string/interactive_name"
    174             android:permission="android.permission.BIND_WALLPAPER" >
    175             <meta-data
    176                 android:name="android.service.wallpaper"
    177                 android:resource="@xml/watch_face" />
    178             <meta-data
    179                 android:name="com.google.android.wearable.watchface.preview"
    180                 android:resource="@drawable/preview_interactive" />
    181             <meta-data
    182                 android:name="com.google.android.wearable.watchface.preview_circular"
    183                 android:resource="@drawable/preview_interactive_circular" />
    184 
    185             <intent-filter>
    186                 <action android:name="android.service.wallpaper.WallpaperService" />
    187 
    188                 <category android:name="com.google.android.wearable.watchface.category.WATCH_FACE" />
    189             </intent-filter>
    190         </service>
    191         <service
    192             android:name=".DigitalWatchFaceService"
    193             android:label="@string/digital_name"
    194             android:permission="android.permission.BIND_WALLPAPER" >
    195             <meta-data
    196                 android:name="android.service.wallpaper"
    197                 android:resource="@xml/watch_face" />
    198             <meta-data
    199                 android:name="com.google.android.wearable.watchface.preview"
    200                 android:resource="@drawable/preview_digital" />
    201             <meta-data
    202                 android:name="com.google.android.wearable.watchface.preview_circular"
    203                 android:resource="@drawable/preview_digital_circular" />
    204             <meta-data
    205                 android:name="com.google.android.wearable.watchface.companionConfigurationAction"
    206                 android:value="com.example.android.wearable.watchface.CONFIG_DIGITAL" />
    207             <meta-data
    208                 android:name="com.google.android.wearable.watchface.wearableConfigurationAction"
    209                 android:value="com.example.android.wearable.watchface.CONFIG_DIGITAL" />
    210 
    211             <intent-filter>
    212                 <action android:name="android.service.wallpaper.WallpaperService" />
    213 
    214                 <category android:name="com.google.android.wearable.watchface.category.WATCH_FACE" />
    215             </intent-filter>
    216         </service>
    217 
    218         <!--
    219              All intent-filters for config actions must include the categories
    220             com.google.android.wearable.watchface.category.WEARABLE_CONFIGURATION
    221             and android.intent.category.DEFAULT.
    222         -->
    223 
    224         <activity
    225             android:name=".DigitalWatchFaceWearableConfigActivity"
    226             android:label="@string/digital_config_name" >
    227             <intent-filter>
    228                 <action android:name="com.example.android.wearable.watchface.CONFIG_DIGITAL" />
    229 
    230                 <category android:name="com.google.android.wearable.watchface.category.WEARABLE_CONFIGURATION" />
    231                 <category android:name="android.intent.category.DEFAULT" />
    232             </intent-filter>
    233         </activity>
    234 
    235         <service
    236             android:name=".CalendarWatchFaceService"
    237             android:label="@string/calendar_name"
    238             android:permission="android.permission.BIND_WALLPAPER" >
    239             <meta-data
    240                 android:name="android.service.wallpaper"
    241                 android:resource="@xml/watch_face" />
    242             <meta-data
    243                 android:name="com.google.android.wearable.watchface.preview"
    244                 android:resource="@drawable/preview_calendar" />
    245             <meta-data
    246                 android:name="com.google.android.wearable.watchface.preview_circular"
    247                 android:resource="@drawable/preview_calendar_circular" />
    248 
    249             <intent-filter>
    250                 <action android:name="android.service.wallpaper.WallpaperService" />
    251 
    252                 <category android:name="com.google.android.wearable.watchface.category.WATCH_FACE" />
    253             </intent-filter>
    254         </service>
    255         <service android:name=".DigitalWatchFaceConfigListenerService" >
    256             <intent-filter>
    257                 <action android:name="com.google.android.gms.wearable.MESSAGE_RECEIVED" />
    258                 <data android:scheme="wear" android:host="*" android:pathPrefix="/"/>
    259             </intent-filter>
    260         </service>
    261         <service
    262             android:name=".FitDistanceWatchFaceService"
    263             android:label="@string/fit_distance_name"
    264             android:permission="android.permission.BIND_WALLPAPER" >
    265             <meta-data
    266                 android:name="android.service.wallpaper"
    267                 android:resource="@xml/watch_face" />
    268             <meta-data
    269                 android:name="com.google.android.wearable.watchface.preview"
    270                 android:resource="@drawable/preview_distance" />
    271             <meta-data
    272                 android:name="com.google.android.wearable.watchface.preview_circular"
    273                 android:resource="@drawable/preview_distance_circular" />
    274             <meta-data
    275                 android:name="com.google.android.wearable.watchface.companionConfigurationAction"
    276                 android:value="com.example.android.wearable.watchface.CONFIG_FIT_DISTANCE" />
    277 
    278             <intent-filter>
    279                 <action android:name="android.service.wallpaper.WallpaperService" />
    280 
    281                 <category android:name="com.google.android.wearable.watchface.category.WATCH_FACE" />
    282             </intent-filter>
    283         </service>
    284         <service
    285             android:name=".FitStepsWatchFaceService"
    286             android:label="@string/fit_steps_name"
    287             android:permission="android.permission.BIND_WALLPAPER" >
    288             <meta-data
    289                 android:name="android.service.wallpaper"
    290                 android:resource="@xml/watch_face" />
    291             <meta-data
    292                 android:name="com.google.android.wearable.watchface.preview"
    293                 android:resource="@drawable/preview_fit" />
    294             <meta-data
    295                 android:name="com.google.android.wearable.watchface.preview_circular"
    296                 android:resource="@drawable/preview_fit_circular" />
    297 
    298             <intent-filter>
    299                 <action android:name="android.service.wallpaper.WallpaperService" />
    300 
    301                 <category android:name="com.google.android.wearable.watchface.category.WATCH_FACE" />
    302             </intent-filter>
    303         </service>
    304 
    305         <activity
    306             android:name=".CalendarWatchFacePermissionActivity"
    307             android:label="@string/title_activity_calendar_watch_face_permission" >
    308         </activity>
    309 
    310         <service
    311             android:name=".provider.RandomNumberProviderService"
    312             android:label="@string/complications_provider_random_number"
    313             android:icon="@drawable/ic_launcher">
    314 
    315             <intent-filter>
    316                 <action android:name="android.support.wearable.complications.ACTION_COMPLICATION_UPDATE_REQUEST"/>
    317             </intent-filter>
    318 
    319             <meta-data
    320                 android:name="android.support.wearable.complications.SUPPORTED_TYPES"
    321                 android:value="RANGED_VALUE,SHORT_TEXT,LONG_TEXT"/>
    322             <!--
    323             When your complication data provider is active, UPDATE_PERIOD_SECONDS specifies how
    324             often you want the system to check for updates to the data. In this case, the time is
    325             specified to a relatively short 120 seconds, so we can observe the result of this code
    326             lab. In everyday use, developers should consider intervals in the order of minutes.
    327             Also, remember that this is only a guidance for the system. Android Wear may update less
    328             frequently.
    329 
    330             If your app needs to push updates instead of updating on a regular schedule, you should
    331             set this value to 0 and use ProviderUpdateRequester.requestUpdate() to trigger an update
    332             request when you need one.
    333             -->
    334             <meta-data
    335                 android:name="android.support.wearable.complications.UPDATE_PERIOD_SECONDS"
    336                 android:value="120"/>
    337         </service>
    338     </application>
    339 
    340 </manifest>
    341