Умные часы с вибрацией

#android #sony #sony-smartwatch

#Android #sony #sony-умные часы

Вопрос:

Я хотел бы подтвердить действие, которое я выполнил на своем смартфоне (например, при отправке электронного письма), выполнив некоторую вибрацию на своих умных часах.

В моей основной активности (при отправке электронной почты) У меня есть :

 Intent serviceIntent = new Intent(this, HelloExtensionService.class);
serviceIntent.setAction(HelloExtensionService.INTENT_ACTION_SEND);
startService(serviceIntent);
  

Из примера я понял, что мне нужно переопределить onStartCommand в классе, который расширяет ExtensionService :

 @Override
public int onStartCommand(Intent intent, int flags, int startId) {
     Intent i = new Intent(Control.Intents.CONTROL_START_REQUEST_INTENT);
 i.setPackage("com.example.hellosmartwatch");
 sendBroadcast(i);
}

@Override
public ControlExtension createControlExtension(String hostAppPackageName) {
        boolean advancedFeaturesSupported = DeviceInfoHelper.isSmartWatch2ApiAndScreenDetected(this, hostAppPackageName);
        if (advancedFeaturesSupported) {
            return new Vibrator(this,hostAppPackageName, new Handler());
        } else {
            return null;
        }
    }
  

Я знаю, что в моем случае я должен использовать ControlExtension Vibrator.class и поэтому я переопределяю метод OnStart () :

 @Override
public void onStart() {
startVibrator(500, 300, 2);
}
  

Но это не работает. Чего мне не хватает или чего я не понимаю, так это того, что работает.

Ответ №1:

Интересно, не хотите ли вы использовать расширение notification вместо расширения control? Это позволит вам вибрировать часы, а также вести быстрый учет предыдущих событий. Я бы порекомендовал пример HelloNotification из дополнительного пакета SDK Sony, если вам нужен пример расширения такого типа. В противном случае, если вы используете расширение Control, вам придется запустить приложение на умных часах, выполнить команду вибрации, а затем остановить приложение. Звучит ли это так, как будто это может сработать для вас?