The Process:
- Obtain the desired Wyze app APK from a source you trust and save this to the PC where you’ll be doing the modification. Note that it must be an actual
.apk
for the app, not something like an APKMirror.apkm
“bundle”. - Download APK Editor Studio and install as necessary for your platform. Using the AppImage on Trisquel, I just needed to make it executable (
chmod a+x apk-editor-studio_linux_1.7.2.AppImage
), but I also added it to the MATE menu so I could launch it from the GUI, since it’s a GUI application. This is probably even more straightforward on macOS or Windows, though it’s important to ensure that you’re meeting the other requirements on the Download page (e.g., Java and/or Visual C++ Redistributable). - Launch APK Editor Studio. Before I added it to the desktop environment’s menu, I just ran it from a terminal (
./apk-editor-studio_linux_1.7.2.AppImage
) to make sure it would execute. - Before opening an APK, you’ll want to enable source code decompiling. If you don’t do these things at this point in the process, then the app will tell you in Step #6 that it “requires the source code decompilation to be turned on”, and then after you give it permission to enable that option, it will tell you to “reopen this APK.” Save yourself some time by doing this now:
a. From the menu, select Settings ➜ Options….
b. In the Options dialog, select Apktool.
c. Under Unpacking, select Decompile source code (smali).
d. Click OK. - From the menu, select File ➜ Open APK… (or click the Open APK button in the main window) and select the APK you’ll be working with. For instance,
com.hualai_2.50.7.487-62187_minAPI24(arm64-v8a,armeabi-v7a)(nodpi)_apkmirror.com.apk
(obviously downloaded from APKMirror). The app’s Projects pane will tell you when it’s “Done.” - From the menu, select Tools ➜ Clone APK. The app will warn you that this is an “experimental function”, but renaming the package in a clone is the necessary part, because if you click OK you’ll see that the Package Name is
com.hualai
, which is the same as the current Android production Wyze app in Google Play Store (cf.https‍://play.google.com/store/apps/details?id=com.hualai
). Changing this is absolutely necessary for running a second copy/version of the Wyze app in the same environment as the one that’s already been installed from Google Play Store. - In the Package Name dialog box, change the name—I changed it to
com.wyze.v2_50x
—and then click OK. APK Editor Studio will then take a while with an “Updating resource references…” process while it works through the code to do package name replacement. - Once the cloning process has completed, select Tools ➜ Edit Application Title from the menu (or click the Application Title button in the Project Manager pane). Edit the Application Title as desired—I left it as
Wyze
, because the v2.50x and v3x apps use different icons, so it’s easy to tell them apart in Android’s launcher even if the names are the same—and hit the ⏎ Enter key to set it. Close the Application Title tab and confirm the change. (If you don’t see the confirmation, then check again to make sure that it set and saved.) - In the Project Manager pane, click the Save APK button. I named it
Wyze_2.50.7.487.apk
. APK Editor Studio will inform you that you’re “using the built-in keystore provided for demonstrational purposes” with an explanatory message. I clicked OK to proceed. - When the process is finished, the Projects pane will once again let you know that it’s “Done.” At this point, you can close the APK (File ➜ Close APK…) and exit the application (File ➜ Exit).
- Copy the APK to the phone and install as usual.
Notes (of uncertain significance):
- APK Editor Studio will create a signature file (I think, because it's
Wyze_2.50.7.487.apk.idsig
in the example I used above) in the same directory as the APK, but I didn't copy this to my phone. I copied only the APK, and it installed and ran. - The new APK is not the same size as the original:
APK Filename Size com.hualai_2.50.7.487-62187_minAPI24(arm64-v8a,armeabi-v7a)(nodpi)_apkmirror.com.apk
231M
Wyze_2.50.7.487.apk
234M
- Obviously other tools exist for doing this sort of thing, and this can all probably be done with Apktool. The GUI of APK Editor Studio makes it easy, though. I like easy.
Why would anyone want to do this?
- Some users might prefer the v2.50x version of the app but still be curious about newer v3x features and want to try them at the same time.
- Some features in the newer app versions seem broken (as of this writing, there’s an issue with Cam Pan v3 Waypoints in the current production app), but the older app still works as expected.
- Maybe you have two different Wyze accounts because you’re managing two different locations, have separate accounts for home and business, etc., but still want to access your stuff on a single phone without constantly changing logins or user profiles.
- Roll the
and come up with your own scenario!
Whatever the reason, it’s possible to do this on Android by cloning and modifying the Wyze app. These are the steps I’ve used.
May the Force be with you.