This question is from a user's perspective, but it's about whether or not developers can accomplish this.
I recently installed DroidCam to use my phone as a webcam for my computer. It works either via LAN or via USB. However, to use it via USB, the user must enable USB debugging on their device, and the phone app communicates with the PC app through ADB.
This is odd to me. Is this the only option developers have for Android-app-to-PC-app communication via USB? Or is there another way that doesn't require USB debugging, and doesn't expose the user to the security risks inherent with USB debugging?
The app developers' guide to setting up USB communications is here.