Consoles
Consoles and other platforms are pretty unique platforms to work with compared to (well, pretty much every other platform in existence).
Xbox
We no longer actively support Xbox. Updates aren't guaranteed, but can be pushed. We have come to a conclusion that this will not be practical and provide us with additional development issues.
How to build
From source
If you encounter any problems, you can try debugging, but note that Microsoft has deprecated UWP. It's barely hanging on in terms of support, and soon, UWP apps may not be able to be submitted to storefronts (as Microsoft has already been pulling their own UWP apps from stores).
- Install Visual Studio (from here). The app was built using the 2022 version.
- Go into Visual Studio and for a new project, clone the source repo. (You can also just do a
git cloneand then select the output folder) - Then, build from source in Visual Studio by using the menus at the top (I forgot how to use Studio... it's been a while).
From an APPX
This isn't really a proper build from source. It's a way to change the web contents of the app to, for example, add your own features. Note that everything added will need to work in the EdgeHTML WebView on Xbox. If you change any permissions, make sure they will work with Xbox in the UWP sandbox as some permissions work only on Windows.
- Download an APPX from GitHub Releases. A working APPX (that passed certification for UWP apps; but a self-signed copy, not store-signed) is here.
- Rename the extension from
.appxto.zipand extract it.
Some OSs (for example, macOS), don't allow you to change extensions properly in Finder anymore. To force-rename on macOS and Linux, you can use this command in Terminal:
# when you run this make sure file paths are correct
mv SimpliPlay_UWP_1.1.2_SELFSIGNED.appx SimpliPlay_UWP_1.1.2_SELFSIGNED.zip
- Once you've extracted the APPX, go through the extracted folders until you find the
WebAssets/folder. This is where all the HTML, CSS, and JS used by the app is. You will also find theAppxManifest.xmlfile in the same folder whereWebAssets/is. This is a generated file that isn't intended to be modified, but for this use case it has to be. The syntax to add permissions toAppxManifest.xmlcan be slightly different from thePackage.appxmanifestused when compiling from source. TheSimpliPlay_UWP.exein root is the compiled EXE the app uses to load the files inWebAssets/.
Status updates
New
The app is now on the Microsoft Store! You can search up "SimpliPlay" on your Xbox or use the store link for reference. Note that the Xbox version is quite limited in functionality compared to every other version. You can also take a look at the GitHub repo here.
Older
We currently have a UWP app that should work with Xbox with a few configuration changes.
Take a look at the GitHub repo here
Old
We currently have an experimental BlazorWASM port of SimpliPlay.
The BlazorWASM port is stale and won't be maintained further. Also, a lot of possibilities here were speculated. It may not be able to be ported (realistically) to UWP.
Since BlazorWASM is not supported on Xbox, this can be ported to a UWP (Universal Windows Platform) application which will embed the web app with WebView2 (the web view used in legacy Microsoft Edge, before it migrated to Chromium).
UWP apps require Windows (even for creation of a project), but most other .NET frameworks work on macOS and Linux as well.
You may download the port here.
Note that this port is only the contents of a regular wwwroot folder in a Blazor project. Copy these contents into your Blazor project's wwwroot folder.
You can create a Blazor project with .NET like this:
-
Install .NET if you haven't.
dotnetis cross-platform (UWP apps require Windows however). (You may use Chocolatey, Microsoft installers for Windows, or Homebrew for macOS and Linux). -
Create a BlazorWASM project like this:
dotnet new blazorwasm -n MediaPlayerApp && cd MediaPlayerApp -
After copying the contents of the port you downloaded into
MediaPlayerApp'swwwrootfolder, publish a release with:dotnet publish -c Release(This process can take 15 seconds or more to complete).
-
To test your output in a web browser, start an HTTP server of your choice (in this case Python 3) with:
cd ~/MediaPlayerApp/bin/Release/net9.0/publish/wwwroot && python3 -m http.server 8080importantIn order to perform other .NET related actions, make sure to change the current working directory back to
~/MediaPlayerApp. Then, to test, visit http://localhost:8080 in your browser (or a custom port number if you chose one).
Other Consoles
We have no ports available for consoles other than Xbox. You can try making one yourself.