mixed-reality-extension-sdk
mixed-reality-extension-sdk copied to clipboard
Testing a local MRE with an untethered device is complicated and time consuming
To enable testing locally hosted MREs with an untethered device, you have:
- Expose PC via ngrok, or equivalent tunneling service
- Modify your MRE to the URL, exposed from the above service, for all assets.
- Build testbed client with URL and build (15+ mins)
We should streamlining this process.
Isn't this more or less the same process as trying to view a development website on your phone? You either open up your network so the phone can view (ngrok), or you skip the hardware and emulate the phone's behavior (test bed).
Probably? I haven't done mobile web development.
Part of this issue is that we need to update our test app to allow me to enter the URL of my MRE without having to rebuild the project. That's on us.
The other half is that ngrok didn't work for me (my MRE connection succeeded, but the device was unable to download the assets for some reason). Debugging this is pretty involved. Are there better tools we can recommend instead? Can we package something with the SDK?
@afarchy You will need to update the baseUrl property in the server.ts file that configures the WebHost in its constructor. Without specifying the ngrok url, it will try to get it from the environment variables or default back to localhost. That is likely why the assets are not being served in your case with nrgok.
@tombuMS I did do that -- possibly did it wrong, but I couldn't get it working.
But I also don't think developers should have to modify their code to debug on device, and then remember to change it back when pushing to cloud.
@afarchy interesting. Never had issues like what you are having, so possibly something might be wrong.
I think that there can certainly be some gains made by building out or packaging some kind of remote testing. We have limped along with this solution to this point because it wasn't overly complicated and our resources were dedicated to building out features in the SDK. I definitely agree there should be an easier path for this long term in the SDK.