2016-07-10 2 views
1

Я реализовал лицо часов с активностью настройки на мобильном устройстве. Работа с конфигурацией отлично работает при запуске из приложения Android Wear.Отдельный значок пусковой установки для функции настройки компаньона на лицевой стороне часового пояса (Android Wear)

Однако, я хотел бы создать дополнительный значок, который запускает конфигурационную активность, как обычное приложение, извне Android Wear. Когда я просто реализую действие как обычное приложение в AndroidManifest, как показано ниже, он не может связаться с часами.

В идеале, дополнительная пусковая установка должна запускать конфигурационную деятельность вместе с приложением Android Wear, если оно еще не запущено.

<activity 
     android:label="Companion Configuration" 
     android:name=".ConfigActivity" > 
     <intent-filter > 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
</activity> 
+0

Какая архитектура вы используете в настоящее время для взаимодействия между переносимой конфигурационной активностью и кодом на ношении? Ответ на ваш вопрос будет зависеть от того, что у вас уже есть. – String

+0

Я использую стандартные API-интерфейсы Wearable Data Layer от Google. –

ответ

0

Это не имеет никакого отношения к значку запуска - или действительно что-либо на телефоне.

Что нужно для запуска приложения Wear при изменении данных в настройках конфигурации на телефоне, и все это настроено в загружаемом приложении. Это хорошо документировано в https://developer.android.com/training/wearables/data-layer/events.html#Listen

В вашем случае (с циферблатом приложения еще не работает, когда телефон Activity запущен), вы, вероятно, хотите подкласс WearableListenerService. Это приведет к запуску системы, когда данные будут изменены на телефоне, и вы сможете делать все, что подходит для вашего приложения, когда это произойдет.

+0

Вот как я это сделал. Я последовал этому примеру: https://developer.android.com/samples/WatchFace/index.html. Проблема в том, что сторона телефона не подключается к часам, когда она не запускается из приложения Google Wear. –

+0

Тогда у вас есть что-то еще не так в приложении Wear. Невозможно сказать, что, не видя некоторых из этого кода; существует множество ошибок при создании Data API. – String

0

я получил эту работу, используя Wearable.DataApi вместо Wearable.MessageApi

Я использовал Wearable.MessageApi обновить часы от телефона, и что требует peerid, который я предполагаю порождена износа приложение. Я поместил оператор if/then, чтобы проверить, является ли peerid нулевым, и если это так использовать DataApi вместо этого и работает изнутри приложения для изнашивания и из приложения-приложения