Reputation: 45
I am attempting to develop a Wear OS app which is dependent on a paired Android phone to perform some higher complexity computations. To this end I have implemented on the wearable side the proper infrastructure to pass a PutDataMapRequest message to the phone app, where I am having trouble is extending the WearableListenerService class on the phone side. When I alt+enter to see the suggested actions menu, the option to add the requisite library is there. However when I select that option nothing happens and the option is still there afterwards (the error is not rectified). I will caveat this by saying I have only been developing for Android for about 2 weeks so some of this Android Studio and its' quirks are still a little new to me. Prior to this point I had attempted various incarnations of building this app. The first where I had built the apps separately, and on that attempt this same extension caused problems (the IDE didn't even offer any suggestions at that point). I also tried loading the data layer api sample to find an example of the wearable listener service but unfortunately it is only present on the wear side of the app. The original source of this approach was from this tutorial, which I know is a little old at this point (at least one of the calls on the wear side are deprecated which I already worked around). At about 2:00 in the presenter is able to extend WearableListenerService without any issue within his phone side app and I have no idea what I am missing to be able to do that. I also did look into just trying to add the support library manually but to no avail.
Upvotes: 0
Views: 368
Reputation: 45
Ok so, for anyone who runs into a similar issue down the road. The solution appears to be that when you create a wearable app through the new wizard and attempt to add an application module to the project, you will need to manually add the following lines to your phone app side gradle file under dependencies.
implementation 'com.google.android.gms:play-services-wearable:17.1.0'
implementation 'androidx.wear:wear:1.1.0'
This allowed the IDE to recognize the requisite classes and import them accordingly into the companion phone side application.
Upvotes: 1