"No, missing feature: WATCH" when I try to run my smartphone app with wear app?
Asked Answered
G

4

32

I have a smartphone app with a wear app that has been packaged inside of it, similar to the first two steps of this section:

https://developer.android.com/training/wearables/apps/packaging.html#Studio

I was originally told that my smartphone wasn't running an SDK large enough to support the app (my phone was using KitKat, apparently I needed API 20), so now I am using my Nexus 7 with Android L preview, and this problem has appeared:

Nexus 7 Compatible: No, missing feature: WATCH

I have a smartwatch emulator and tablet running, and both are connected using the adb -d forward tcp:5601 tcp:5601 trick, so I have no idea how to fix this now!

How can I get the smartphone app to run and automatically allow the wear app to install onto the emulator?

Giannagianni answered 2/9, 2014 at 11:0 Comment(0)
F
59

In your project you have two applications:

  • Mobile
  • Wearable


Mobile app should be installed on mobile device (phone/tablet) and Wearable app should be installed on Android Wear device.

This message No, missing feature: WATCH means that you're trying to install Wearable app on mobile phone - you shouldn't do that, your mobile device is not a WATCH. So once again: just launch Mobile app on mobile and Wearable app on Android Wear.

I was originally told that my smartphone wasn't running an SDK large enough to support the app (my phone was using KitKat, apparently I needed API 20), so now I am using my Nexus 7 with Android L preview, and this problem has appeared:

Only the Wearable app should require API level 20, but Mobile app can target any other SDK level (like 10, 14 etc.). You don't need to set higher SDK level for Mobile app only because it supports Wearable app.

How can I get the smartphone app to run and automatically allow the wear app to install onto the emulator?

As described in the tutorial that you've linked:

If packaged properly, when users download the handheld app, the system automatically pushes the wearable app to the paired wearable.

But please read the note at the top of this page:

Note: This feature doesn't work when you are signing your apps with a debug key when developing. While developing, installing apps with adb install or Android Studio directly to the wearable is required.

This means that automatically installing Wearable app after installing Mobile app (with Wearable app packaged inside) will only work after signing app with your publishing certificate (and not with the debug one - as is done during standard application Launch from Android Studio/Eclipse).

Facer answered 2/9, 2014 at 12:24 Comment(3)
Thanks for the breakdown. Your mention of using adb install near the bottom has been useful also!Giannagianni
Glad that I could help:) This mention is a quote from the top of that site. Doing adb install is basically the same as just launching apps from Android Studio/Eclipse. So during development you just need to launch two applications (Wearable to watch and Mobile to phone/tablet) separately to two devices.Pitching
I felt so dumb that it was just this problem. This what I get for being a newbie. Thanks!Govern
L
60

Please look at this!

enter image description here

May be you should select the APP item before you launch your app.

Lezley answered 19/11, 2015 at 1:51 Comment(1)
I'm really glad that there's finally a problem that has such an easy solution.Anatase
F
59

In your project you have two applications:

  • Mobile
  • Wearable


Mobile app should be installed on mobile device (phone/tablet) and Wearable app should be installed on Android Wear device.

This message No, missing feature: WATCH means that you're trying to install Wearable app on mobile phone - you shouldn't do that, your mobile device is not a WATCH. So once again: just launch Mobile app on mobile and Wearable app on Android Wear.

I was originally told that my smartphone wasn't running an SDK large enough to support the app (my phone was using KitKat, apparently I needed API 20), so now I am using my Nexus 7 with Android L preview, and this problem has appeared:

Only the Wearable app should require API level 20, but Mobile app can target any other SDK level (like 10, 14 etc.). You don't need to set higher SDK level for Mobile app only because it supports Wearable app.

How can I get the smartphone app to run and automatically allow the wear app to install onto the emulator?

As described in the tutorial that you've linked:

If packaged properly, when users download the handheld app, the system automatically pushes the wearable app to the paired wearable.

But please read the note at the top of this page:

Note: This feature doesn't work when you are signing your apps with a debug key when developing. While developing, installing apps with adb install or Android Studio directly to the wearable is required.

This means that automatically installing Wearable app after installing Mobile app (with Wearable app packaged inside) will only work after signing app with your publishing certificate (and not with the debug one - as is done during standard application Launch from Android Studio/Eclipse).

Facer answered 2/9, 2014 at 12:24 Comment(3)
Thanks for the breakdown. Your mention of using adb install near the bottom has been useful also!Giannagianni
Glad that I could help:) This mention is a quote from the top of that site. Doing adb install is basically the same as just launching apps from Android Studio/Eclipse. So during development you just need to launch two applications (Wearable to watch and Mobile to phone/tablet) separately to two devices.Pitching
I felt so dumb that it was just this problem. This what I get for being a newbie. Thanks!Govern
B
13

I had the same error when I tried running non wearable application on my device and the error was due to some Android Studio issue with misreading the uses-feature attribute in the Manifest (it reads required false as true):

  <uses-feature
        android:name="android.hardware.type.watch"
        android:required="false"/>

If you remove it from the manifest the error will disappear. I think that it should be already fixed in Android Studio 1.4.1 or 1.5.

Behan answered 20/10, 2015 at 13:52 Comment(0)
M
0

Check if you have not open any other android project. I also faced same issue which got solved after I closed android project which has target API greater than watch's.

Mantling answered 29/11, 2016 at 11:35 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.