Make virtual providers work with your smartwatch
Unfortunately Google does not - different to the Android phone version - allow the adding of APN’s manually in Android Wear at the time of writing. This is a big problem because in many countries MVNOs - so called mobile virtual network operator operate. They don’t have their own network but use existing infrastructure from other providers in order to provide mobile services. Also in Austria we have a lot of them and they are used by a lot of people. Some local examples are the providers Hot (uses T-Mobile’s network), Yesss (uses A1’ network) and Spusu (uses Drei’s network).
When inserting a virtual providers’ SIM in your Android Wear smartwatch, it will most likely not be able to connect to the network, due to the lack of a fitting APN. In this short blog post I want to show you how I was able to get my virtual provider’s SIM working on my Huawei Watch 2 4G.
The follwing steps are involved:
- rooting the smartwatch
- adding the APN via the ADB shell
Rooting the smartwatch
Yes, indeed! There is so far no option to do this without root! Check xda-developers if root is available for your smartwatch. In case of the Huawei Watch 2, luckily there is one. Follow the instructions from this post.
Add the APN via the ADB shell
After rooting successfully we can add the provider via the ADB shell. Assuming you have ADB already installed after rooting, we continue without going into install instructions. Run the ADB shell by
1
adb shell
Next enter the root mode by entering
1
su
With
1
content query --uri content://telephony/carriers --where "name='yourprovider'"
you can now check whether an entry for your provider exists. Replace yourprovider with your actual provider’s name.
If it doesn’t exist we can now add it via
1
content insert --uri content://telephony/carriers --bind name:s:"yourprovider" --bind numeric:s:"yourmccmns" --bind type:s:"default,sulp" --bind mcc:i:yourmcc --bind mnc:i:yourmns --bind apn:s:"yourapn" --bind user:s:"yourusername" --bind password:s:"yourpassword"
Replace yourprovider with the name of your provider - it’s the same name you will use to query the entry, yourmccmns is your provider’s MCC and MNS combined. You should be able to find both in the internet - if not then my advice is to enter the SIM in your phone, usually there you will have the APN configured so you can just check the data there! yourmcc is the MCC only and yourmns is the MNS only as discussed. Finally replace yourapn, yourusername and yourpassword with your provider’s data. Launch the command and check whether the APN was added succesfully by running the query from the paragraph before again.
Finally put your smartwatch into airplane mode and disable it again. Voila! We have 4G working on the Huawei Watch 2 4G with a MVNO!
Here the commands I used succesfully for the Austrian Provider spusu:
1
content query --uri content://telephony/carriers --where "name='spusu'"
for checking whether the entry exists and
1
content insert --uri content://telephony/carriers --bind name:s:"spusu" --bind numeric:s:"23217" --bind type:s:"default,sulp" --bind mcc:i:232 --bind mnc:i:17 --bind apn:s:"mass.at" --bind user:s:"" --bind password:s:""
to add it. I tried the same approach with another virtual provider (Yesss) as well and it worked fine too.