-
Notifications
You must be signed in to change notification settings - Fork 302
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Moonlight only supports adding PCs on local network on iOS/tvOS #417
Comments
Apple's App Store Review Guideline 4.2.7a states:
Therefore, Moonlight does not allow you to add PCs that aren't on your local network anymore. This was a hard requirement by Apple's App Store Review team. If you have to add your PC remotely, you may have success using a VPN like ZeroTier which looks like a LAN connection to other apps. |
Wouldn't it be possible to make/release a dedicated version that only allows desktop access like Shadow reverted to after the hassle with the quoted rules or restrict internet hosts to that functionality? |
Nope, I proposed this exact thing to them and they rejected it. |
The first or the latter one (or both)? Was there something different that you proposed compared to how Shadow is doing it with their revised tvOS/iOS app? |
Both. My proposed solution was essentially to act like a remote desktop app, similar to Microsoft Remote Desktop. I asked about other game streaming apps that do the same thing, and they told me they are investigating those too for possible policy violations. |
May I ask about the timeline when you had this "discussion" with Apple? I'm asking because the Shadow app was kicked from the App Store for exactly that reason, but then re-allowed after removing the direct game access and reverting to remote desktop only. Their argument sounds like you had asked before that happened? Maybe it's worth another try with this precedent? Or they have additional information what is necessary to be allowed into the App Store like the Shadow app was. |
The talks were after Shadow was re-approved. I'm not going to be contesting this with Apple again anytime soon. Due to the review proceedings, I was left unable to ship any new Moonlight builds (even bugfixes) for over 3 months while this whole situation played out. If Nvidia had released a GFE update that required a Moonlight update, iOS users would have been unable to use the app anymore. It's simply not worth the risk to contest it. |
How easy is it to disable the block should one build from source? |
It is pretty easy. There is just one definition of |
Since ZeroTier can't be used on tvos, what are the options other then source building (guess it'd also require apple dev account to deploy to the box, atm having none) ? |
This guy gets it. Although you typically want encryption, there is unnecessary overhead here with regards to streaming service providers infrastructure services. I’m planning to build from source and remove the limitation myself. I’m not interested in paying Apple the $99 annually at this time though. So I will go another step further and build a CI/CD server to push the build every week or as needed. If you’re interested in helping out, or learning from my experience, don’t hesitate to reach out. I’m so appreciative of moonlight being open source and these companies are all seemingly trying to stifle remote streaming service providers offerings. It wreaks of anti competitive action. |
Please can someone host builds with this enabled? People can sideload them with AltStore or a jailbreak |
Please? |
If no one else is going to maybe I could but I’m not sure if I need a Mac OS VM to build it (I don’t have a Mac) |
I'm installing Mac OS in a VM now, if I get it built I'll upload an IPA |
Had any success yet? I'm currently installing Mac OS in a VM as well, will post if I have anything to share. |
I have actual macOS physical systems but in order for me to do this, I would have to pay the $99 Apple Developer fee or be required to rebuild it every 7(days). That is the requirement if you do not jailbreak your iOS device which I had no intention of doing. This is really a headache and because I can use other apps like Splashtop, I've just stopped using Moonlight. I expected more "push back" by Moonlight senior dev towards Apple's anticompetitive tactics. How are you guys getting around the Apple developer costs? Or do you plan to use CI/CD to just keep pushing a new version every 7, or whatever number, of days? |
As far as I know, it requires Xcode and TestFlight on macOS, so you do need an Apple system and you need an Apple Developer account. I've been an Apple Developer before so I'm familiar with the processes and procedures, but I'm open to hearing if there are other ways this can be done. I just don't want to jailbreak my device. |
I'm using a jailbreak for signing, you could also use altstore for signing. |
https://drive.google.com/drive/folders/13ebjY2qSVJebr2hLjTXTHkD981bl0Tb1?usp=sharing Here you go. ipa built with the app store restriction removed |
Thank you very much. Do you happen to know why I got that error above? |
Well it seems like even without the restriction on it won't work :/ |
I was afraid of that. Maybe the Moonlight discord would be kind enough to give some advice. Have you tried there? |
How did you get it to build tho? By looking at the commits I found that dbab078 Is the one where it’s introduced, by setting these values to false it should work. |
You needed to run this command in terminal. 'git submodule update --init --recursive' |
The |
I believe it is because of recent Moonlight client update on App Store. With the update non-default port support has been enabled for moonlight. Both IPv6 adresses and port separator are using ":" I think it is because of this change |
Interesting, is there a way around this? If not, we need it switched back... |
As far as I tried, I couldn't find a way around. I believe the app needs a new implementation to better understand the difference between IPv6 and IPv4 with a special port. |
IPv6 addresses now need to be enclosed in brackets (like in URLs) to allow the (optional) port to be distinguished from the IPv6 address itself. Example: |
This worked, thanks! |
I've been try a lot of format and not working... Should full format of the value be like Can you provide an example, Thanks! |
[::ffff:1.1.1.1] if using default port or [::ffff:1.1.1.1]:11111 if you need to specify a port. |
You can use url to access your host, I discovered it by accident. |
Hi, is it still working? |
hello, if I use ipv6, Does this mean that my remote computer needs to support ipv6? |
hello,If my remote server uses a port other than the default 47989, how do I modify the port information |
It still works. I just tried today. but I have to use |
thanks bro! This is very important to me. by the way, One more question, does this method only support ipv6 addresses? |
sry, can you give me more info about your question. if my understand is correct the server listening at ipv4, but we can pass the ipv4 in the format of ipv6 by using |
thanks! my IPV4 address is 116.21.86.170,I input the [::ffff:116.21.86.170] when add the pc. but it does not work well, I get the |
have you try |
thanks!!!! dear!!! it's work! |
Hello, just wanted to leave this here in case anybody else is as dumb as me trying to get this working. If you are using sunshine and moonlight's ios client, ensure that you 1. have UPNP on sunlight enabled; 2. are on version 0.20 of sunlight; 3. follow the sunshine 0.20 instructions on uninstalling moonlight hosting services. These three things in tandem with passing through the ip via ipv6 as discussed removed my need for zerotier (which while performant, was unstable in random connection terminations on ios) hopefully it might work for you. I was previously having request timed out when I managed to connect to the PC. Thanks to all in the discussion up to this point. |
thanks!I've fixed the issue and now I can connect to my remote PC via my iOS device |
I know I’m about 2 years late on this but any chance someone can share the IPA again with the restriction removed? |
@Jk541957 you shouldn't need it; just use the |
Try this method. First, add it using the internal IP address within the local network. Once the connection is successful, switch to the cellular network without deleting the existing Host entry, and add it again, this time using the URL. It will prompt an update success message. Now you can directly connect from the external network. |
I did all of these things and I still get "Could not connect to host." What am I doing wrong? |
Thanks to U-siro's suggestion, this IPv6 work-around is working perfectly for me using the following steps -
That's it! |
Has something changed recently with local network privacy in iOS 17? Not sure when it started, but on iOS 17 iPhone 14, Moonlight stopped discovering devices on local network. EDIT: Updating Sunshine fixed the issue |
I think WAN connections will be allowed in iOS17.4 due to the EU regulations. Is there a possibility that this could be looked at into? |
Is it the IOS limitation?
The text was updated successfully, but these errors were encountered: