<?xml version="1.0" encoding="UTF-8"?>
<!--
 Copyright 2013 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.
-->



<sample>
    <name>AgendaData</name>
    <group>Wearable</group>
    <package>com.example.android.wearable.agendadata</package>

    <minSdk>18</minSdk>
    <targetSdkVersion>27</targetSdkVersion>
    <minSdkVersionWear>23</minSdkVersionWear>
    <targetSdkVersionWear>27</targetSdkVersionWear>
    <compileSdkVersionWear>27</compileSdkVersionWear>

    <dependency>com.android.support:design:27.1.0</dependency>


    <wearable>
        <has_handheld_app>true</has_handheld_app>
    </wearable>

    <strings>
        <intro>
            <![CDATA[
            This sample is deprecated, please review the DataLayer sample to understand how to
            transfer data between mobile and wear devices.

            Syncs calendar events to your wearable at the press of a button, using the Wearable
            DataApi to transmit data such as event time, description, and background image. The
            DataItems can be deleted individually via an action on the event notifications, or all
            at once via a button on the companion. When deleted using the notification action, a
            ConfirmationActivity is used to indicate success or failure.
            ]]>
        </intro>
    </strings>

    <template src="base"/>
    <template src="Wear"/>
    <metadata>
        <status>DEPRECATED</status>
        <categories>Wearable</categories>
        <technologies>Android</technologies>
        <languages>Java</languages>
        <solutions>Mobile</solutions>
        <level>INTERMEDIATE</level>
        <icon>Wearable/src/main/res/drawable-xxhdpi/ic_launcher.png</icon>
        <screenshots>
            <img>screenshots/companion_agenda_data.png</img>
            <img>screenshots/dummy_calendar_event.png</img>
        </screenshots>
        <api_refs>
            <android>android.app.IntentService</android>
            <ext>gms:com.google.android.gms.wearable.DataApi</ext>
            <ext>gms:com.google.android.gms.wearable.Node</ext>
        </api_refs>
        <description>
<![CDATA[
Sample demonstrating sync of calendar events to a wearable by the press of a button.
]]>
        </description>
        <intro>
<![CDATA[
This sample is deprecated, please review the [DataLayer sample][3] to understand how to
transfer data between mobile and wear devices.

Using the Wearable [DataApi][1] allows to transmit data such as event time,
description, and background image.

The sent [DataItems][2] can be deleted individually via an action on the event notifications,
or all at once via a button on the companion.

When deleted using the notification action, a ConfirmationActivity is used to indicate
success or failure. The sample shows implementations for both the success as well failure case.

[1]: https://developer.android.com/reference/com/google/android/gms/wearable/DataApi.html
[2]: https://developer.android.com/reference/com/google/android/gms/wearable/DataItem.html
[3]: https://github.com/googlesamples/android-DataLayer
]]>
        </intro>
    </metadata>
</sample>
