Comments (8)
Of course, this was actually a problem with the MDSN Plugin. Glad you found a solution (all though I don't think the best solution is just assigning the address to the hostName, but I'll look into the issue on the MDNS plugin myself later. 👍
Closing this issue now.
from dart_chromecast.
Hi,
It seems like, for some reason, the GET request to http://192.168.2.2:8008/setup/eureka_info?params=name,device_info
always throws an exception on iOS. Maybe because your app is not allowed to request non-https URLs?
You could try allowing insecure HTTP loads in your app, but this is not recommended. I think Apple may even not allow an app to be published in the App Store when it allows HTTP requests.
I did just update the code to only set the device name to 'Unknown' when we didn't already have a name for the device. This might fix your problem. Let me know.
from dart_chromecast.
thanks for taking a look, i just pulled the change as no difference. However I am curious, in my console i'm seeing this:
I/flutter (24722): found device Name: Chromecast-cde702228a5d2b47e14584f2048908f4, Type: ._googlecast._tcp, HostName: 192.168.1.22, Address: 192.168.1.22, Port: 8009
which says port 8009 ? while that may be a port chromecast uses it not 8008 which is where the GET request needs to go. is it possible your GET request is going to 8009 not 8008 somehow?
Looking at the code all seems legit
'http://${host}:8008/setup/eureka_info?params=name,device_info');
from dart_chromecast.
No, the eureka_info is on a different port than the actual ChromeCast itself, so that's how it's supposed to be.
Did you run this test on an iOS device? I'm pretty sure the problem is the eureka_info URL not being https.
I've just updated the code to use a https url. Could you try again? It might still not work because the https certificate isn't valid, but maybe iOS doesn't mind that.
from dart_chromecast.
Hi, I have found the root cause of the issue, it's not this plugin. The host name returned by ios is some random.local. address, if i ignore that and use the IP it works perfectly in IOS and Android so the fix should be in https://github.com/terrabythia/flutter_chromecast_example (see below)
from dart_chromecast.
I will test the https implementation now
from dart_chromecast.
hi, I have just retested on ios and android, your https update does not fix the original issue but is good (it works). I am only able to resolve the problem by adding this line to the code i'm using from https://github.com/terrabythia/flutter_chromecast_example to force the use of the ip address and not the hostname.
I realise patching that module does not help those using this module so perhaps you have a way to use ip address and not the hostnames from here.
Thanks
from dart_chromecast.
I'll push an update to my FarmTUBE app shortly which will contain the fix above as proof it works.
from dart_chromecast.
Related Issues (20)
- Is it possible to change playback speed while casting? HOT 5
- "reusePort not supported" error when running example, or similar find_chromecasts() call, on Windows/Android HOT 3
- iOS 14 issue HOT 4
- Set Volume not working HOT 1
- [Solution] volume control not working
- [Solution] metadata not working (title, image, subtitle..)
- Not compatible with http: ^0.13.0 HOT 1
- Null safety HOT 2
- Fix pub analysis error HOT 2
- Mirror app screen HOT 1
- How to play DRM content with license
- Lets improve the package score HOT 3
- Adding support for sound null safety HOT 5
- how send request headers HOT 3
- Cant find any device in network HOT 1
- Web support
- Can i add playlist into chromecast queue? and play all day chromecast video with repeat mode like youtube playlist with chromecast.
- Update dependencies
- Opening web page or youtube video HOT 4
- `reusePort` not supported for Android.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dart_chromecast.