Quick Links: Download Gideros Studio | Gideros Documentation | Gideros community chat | DONATE
Basics - Deploy on device, test over the internet — Gideros Forum

Basics - Deploy on device, test over the internet

MellsMells Guru
edited November 2012 in General questions
Hi all,

now that I have acquired a new device for testing (oh, shiny), I would like to install Gideros Player on it.
I am sure that I will find everything I need in the docs to achieve that on my local network, but I have a question.

Testing over the internet

Example
Mark installs Gideros' player on his testing device. He is located in Brazil.
Lucy is the developer. She is located in Canada.

Is the following possible :
Lucy updates the project and saves the files. She sends a message to Mark "please test the last version".
Mark launches the player and tests the updated app, over the internet.

Is that possible? Or is it doable via wifi only?

@OZApps I might be wrong and I don't remember where I read about it, but If I remember well you worked in a similar way with your client for ZDay Survival Simulator. Am I mistaking? Or did you use something like TestFlight?
(Edit : mistake, it was made with another framework so there is no chance you were using the super feature *in gideros only* "deploy on device" :).

Found thanks to Arturs :

The most awesome thing is the Gideros Player, set the IP Address and hit run, you can simulate the app over the internet across countries and on the device than a simulator.

Video

I couldn't find a video showing the testing on device feature.
This blog post on Gideros blog was the closest thing to what I wanted to know, but it's obviously missing a video.

Can anybody suggest a video link please?
twitter@TheWindApps Artful applications : The Wind Forest. #art #japan #apps

Comments

  • @Mells I remember @gorkem somewhere mentioning that it might not be possible across continents
    http://www.giderosmobile.com/forum/discussion/comment/10952#Comment_10952
    But there are no example of how to do that outside LAN

    Likes: Mells

    +1 -1 (+1 / -0 )Share on Facebook
  • techdojotechdojo Guru
    edited November 2012
    The only way you'd be able to achieve that level of remote testing is to export your app , compile it natively using XCode and then use testflight.com to release it to registered beta testers.

    Although depending on how much "Lucy" trusts "Mark" then she could always just share the source with him via Dropbox or Github and have Mark open the app and just build it locally.

    As an aside, if "Tom", "Dick" or "Harry" do have your app installed via testflight, then a service like Dropbox is ideal if you want to share updated resources - you could have a series of JSON files which you edit (for map data, game settings etc) and then just have the beta version always load the latest version from Dropbox. Depending on peoples roles (maybe "Tom" is your level designer) you could even give testers access to these files to allow them to tweak the gameplay for themselves, saving you to do the main coding stuff.

    @Mell's so are you talking about your amazing art game here, is it ready yet? Can I be "Mark" to your "Lucy" ?? :)

    Likes: Mells

    WhiteTree Games - Home, home on the web, where the bits and bytes they do play!
    #MakeABetterGame! "Never give up, Never NEVER give up!" - Winston Churchill
    +1 -1 (+1 / -0 )Share on Facebook
  • gorkemgorkem Maintainer
    Accepted Answer
    @mells I tested this several times with Atilim. In one example, I was in the car, moving at 100kmph, appr 70km away from him and Gideros Player for Android was installed on my device. He sent me several test files and I was able to see them live on my device.

    I tested it with @gregbug (he's located near Rome, about 2.5 hours of flight from me). He tried to send me his latest copter game via Gideros Studio but I wasnt able to view it on my device. My device IP was real - there were no NATs and it was directly connected to internet using IPv4 IP. To be honest, I never understood the real reason as I do not know whether my carrier is blocking ports as some others do.

    Therefore you can send files over Wifi or 3G, and possibly 4G. However there's a scarcity of IPv4 IPs and carriers started to move on to NATs, ending up assigning mobile devices with IPs like 10.X.Y.Z or 172.A.B.C. In this case it's not possible for Gideros Studio to connect to Player.

    Likes: OZApps, Mells

    +1 -1 (+2 / -0 )Share on Facebook
  • >> Can I be "Mark" to your "Lucy" ??

    Hey, you two, get a room! ;-)
    Err yeah - that probably didn't come across in the right way
    #awkward :)


    WhiteTree Games - Home, home on the web, where the bits and bytes they do play!
    #MakeABetterGame! "Never give up, Never NEVER give up!" - Winston Churchill
  • So with the right IP address looks like it is possible.
    How awesome is that!
    WhiteTree Games - Home, home on the web, where the bits and bytes they do play!
    #MakeABetterGame! "Never give up, Never NEVER give up!" - Winston Churchill
  • MellsMells Guru
    edited November 2012
    @ar2rsawseen
    thank you for calling Gorkem :)

    @techdojo
    Can I be "Mark" to your "Lucy" ??
    weeeeell #letsPretendItNeverHappened
    :)

    TestFlight requires that somebody compiles the project each time right?
    What I want to do is "Save Files then Relaunch player on device" only, as if I was sitting in front of my laptop at home.

    The part about TestFlight + Json + Dropbox caught my interest :)

    @gorkem
    I know next to zero to networking, can you clarify when you say "he **sent** me several files"?
    Which steps do "sending" involve?

    Here is a little more about what I try to achieve.
    I am traveling a lot and my priority is to be able to work from anywhere in the world.
    I paint on the ipad, I manage a lot of things from remote locations and use many automation tools.

    For example, I update my project files with Textastic for iPad/ipod.
    Those files are stored on my Mac (I made a symlink in Dropbox).
    At home, I use WOL when necessary to launch Gideros Player and this is the result on my iPad with Splashtop
    image

    What I would like to do is
    - update files in textastic (dropbox sync) (I need the laptop to be ON at home, right?)
    - skip the Splahstop step and relaunch the player installed on the iPod and test my files.

    Is that possible?
    Am I missing some steps?
    twitter@TheWindApps Artful applications : The Wind Forest. #art #japan #apps
  • @mells I tested this several times with Atilim. In one example, I was in the car, moving at 100kmph, appr 70km away from him and Gideros Player for Android was installed on my device. He sent me several test files and I was able to see them live on my device.
    You car must have been compatible with the transfer :D

    On a serious note, @Mells, I was informed by Atilim that if we can get/set the IP Address, we can have remote play and debugging. I had even set up once to try this with Atilim (this was long long ago) but the only thing that did not get done was hit the play button, instead we had a chat about the app. So I could not test the across countries thing, but I presume that it could work.

    It was recent that Gorkem did mention that it might not be possible due to NAT and other factors. One of which was mentioned by users of SingTel (Singapore Telecom) where their IP Address would keep changing every so often (I guess for some security reasons).

    This feature is amazing and would be nice if it worked. I guess there was AGK that uses a similar test on device model and there was an article/GitHub code for the same with Ti
    However, the speed and performance with Gideros remains unparalleled.

    There are some other 3rd party libraries that add on with the iOS projects that offer a to way control of the device/sim the app is running on allowing to restart the app, list out the UIViews, etc.

    Likes: Mells

    twitter: @ozapps | http://www.oz-apps.com | http://howto.oz-apps.com | http://reviewme.oz-apps.com
    Author of Learn Lua for iOS Game Development from Apress ( http://www.apress.com/9781430246626 )
    Cool Vizify Profile at https://www.vizify.com/oz-apps
    +1 -1 (+1 / -0 )Share on Facebook
  • MellsMells Guru
    edited November 2012
    @OZApps
    if we can get/set the IP Address, we can have remote play and debugging. I had even set up once to try this with Atilim
    Interesting (but still surprised you didn't push the play button :)
    Does it involve additional steps?
    How would I do to test it myself?

    Wouldn't it be a feature that along with LiveCoding (with ZeroBrane studio) would make Gideros positioning even stronger?
    I want to make it happen.

    As I don't know anything about NAT, my questions probably only scratch the surface of something more complex.
    twitter@TheWindApps Artful applications : The Wind Forest. #art #japan #apps
  • @Mells, there were IP and other related reasons, so Atilim suggested against it.
    It involved setting the IP Address that was displayed on the device/player in the player settings of my IDE.

    If you have the player on your device, set off the WiFi so you get the IP Address from 3G/4G/LTE. Now from your IDE, set this IP address as your player's IP Address and when you press play, it should run on the device.

    NAT is just the Network Translation, that allows for having a single IP Address assigned to your Router, where as it assigns several other IP addresses to your devices internally from this router. So while your machine may have an IP Address of 192.168.x.x that address is not reachable from outside of your router, while you can access the internet and the proper packets are translated and send back to your device. That is what NAT does. Since Gideros Player works with a direct connection, it requires the IP Address to be a direct one rather than one assigned via the NAT.
    twitter: @ozapps | http://www.oz-apps.com | http://howto.oz-apps.com | http://reviewme.oz-apps.com
    Author of Learn Lua for iOS Game Development from Apress ( http://www.apress.com/9781430246626 )
    Cool Vizify Profile at https://www.vizify.com/oz-apps
  • What about staying connected to a router and using the IP address of the router and setting whatever ports Gideros player needs to forward to the device from the router?
  • gorkemgorkem Maintainer
    @mells when I said "he sent me several files" I meant "he chose a project, pressed play button" and that project appeared on my device. This is nowhere different from testing your game over a Wifi. On a Wifi your computer & device on the same network and on 3G/LTE they are residing on different networks but basic principles and steps to take are completely the same. You just need to call your friend and learn his IP address, fill the IP address information in Gideros Studio and press Play as it goes green.

    PS: (additional information) Normally it's unlikely that your device IP address changes when you move from one place to a another (in my carrier's situation), but as Jayant informs this behaviour might change among different operators.
  • Did not like postng cross links, but just to clarify or rather provide a source for the claim on wandering/changing IP addresses...

    http://developer.coronalabs.com/forum/2011/01/17/it-suck-carlos-plz-fix#comment-30514
    and the resolution for that issue
    http://developer.coronalabs.com/forum/2011/01/17/it-suck-carlos-plz-fix#comment-36632
    twitter: @ozapps | http://www.oz-apps.com | http://howto.oz-apps.com | http://reviewme.oz-apps.com
    Author of Learn Lua for iOS Game Development from Apress ( http://www.apress.com/9781430246626 )
    Cool Vizify Profile at https://www.vizify.com/oz-apps
  • plamenplamen Member
    edited December 2012
    Changing IP is not that bad of an issue because you can always ask your remote side what IP he is using at the moment . During one session its not very likely for IP address to be changed. In case with mobiles even cell swap wont change IP or its rare case. The biggest problem is port and protocol filtering. Different ISP and carriers filter ports and protocols depending of their paranoia and vision about security. Same with dynamic IPs or IP masquerading. Real dynamic IPs are fine just you have to check the IP before you start testing. Masquerading includes NAT and depending how it is set up, could be real pain but it is solvable. For Win users most of the problems come when they forget to turn off firewall and antivirus packages before test. Most modern AV programs do some network filtering as firewall do same. Now after long arguing with my ISP they promised no filtering and real static IP address for me. I have NAT at home in form of Lynksys router and because i have control over port forwarding and firewall i am open for tests. If someone needs to try idea of remote testing just msg me and we will arrange test session.
  • I noticed that Gideros communicates with player using 2 ports one port was dynamic and changed over different sessions but the other was static 15000. If its is static port for discovering, this round number is probably used by many other network apps. I had this sort of issues quite often when i develop remote apps for PC and always try to find some number that looks ugly. Of course there is no guarantee :)
  • MellsMells Guru
    edited July 2013
    So my iPod is connected to a 3G Wifi Hostpot with an address like 192.168.X.X

    @gorkem
    This is nowhere different from testing your game over a Wifi
    On my Mac which is connected to my home router, which IP Address should I put in the Player settings?
    192.168.X.X does not work (indeed?), what do you use?
    twitter@TheWindApps Artful applications : The Wind Forest. #art #japan #apps
  • MikeHartMikeHart Guru
    edited July 2013
    If the ip on your phone looks like this, then it is an IP from a WLAN. If your phone and your desktop is not in the same WLAN, then it does not work.
  • @MikeHart
    If your phone and your desktop is not in the same WLAN, then it does not work.
    It seems there is a way to make it work even on different networks :
    On a Wifi your computer & device on the same network and on 3G/LTE they are residing on different networks but basic principles and steps to take are completely the same.
    twitter@TheWindApps Artful applications : The Wind Forest. #art #japan #apps
  • ar2rsawseenar2rsawseen Maintainer
    edited July 2013
    @Mells although I seemed to get it to work couple of times, sometimes it did not work (in the same network it worked before). So for now getting devices to work which are not in one LAN, seems like a magic to me. It might work, but it also might not.
    Had this when I was using Internet in University, and could never predict will it work or not.
  • @Mells it also depends on the ports that are blocked or allowed on that WiFi network. I was down at UTS for a presentation and there though I have my MBP and the iPad & iPhone on the same network, I could not use reflections or Air Play to display what was happening on my device on the big projector.
    twitter: @ozapps | http://www.oz-apps.com | http://howto.oz-apps.com | http://reviewme.oz-apps.com
    Author of Learn Lua for iOS Game Development from Apress ( http://www.apress.com/9781430246626 )
    Cool Vizify Profile at https://www.vizify.com/oz-apps
  • MikeHartMikeHart Guru
    edited July 2013
    @MikeHart
    If your phone and your desktop is not in the same WLAN, then it does not work.
    It seems there is a way to make it work even on different networks :
    On a Wifi your computer & device on the same network and on 3G/LTE they are residing on different networks but basic principles and steps to take are completely the same.
    Not with IP adresses that are typical local WLAN adresses. The "192.168.X.X" category is a typical local WLAN adress. There are only (256*256) different adresses possible. They are unknown in the WEB. To communicate with a device from outside, you need the webadress of the hotspot and then the ports come into play. But you don't know the webadress from the Hotspot you are connecting to, right? Don't connect to the hotspot but just via 3G to your mobile provider. Your phone should display a different adress then. And that you put into Gideros Studio. Then it might work.
  • MellsMells Guru
    edited July 2013
    @MikeHart
    Yes i shared the 192.x.x.x because this is all i have but understood it was local.
    I am using an ipod so there is no way i can connect directly to 3g I guess there is no solution for me unless @atilim knows something that we don't? :)

    I don't know the address of my hotspot, there is no graphical interface to it. It's a portable 3g hotspot.
    Maybe I could find it but don't have the technical knowledge to do it.

    Thanks @all for the replies
    twitter@TheWindApps Artful applications : The Wind Forest. #art #japan #apps
  • Ok, I thought you were accessing through a public hotspot but now now it sounds to me that this wifi hotspot is connected to your router, is that right?

    If yes, is the 3rd number in the IPs the same? To my knowledge, it needs to be.

    Btw. you can openly post these IPs because they are local IPs. Millions of WEB users with a LAN at home share the same local IP numbers.
  • Thanks for the follow-up @MikeHart.

    I'm a using a 3G hotspot away from home (+30km).
    So this hotspot is not connected to my home router.
    I connect my portable devices (iPad and iPod) to the hotspot with wifi.

    At home, the laptop is on and Gideros is running.
    This laptop is connected to the internet through a home router.
    Similar to the situation that gorkem was describing were he was in his car and @atilim at home, I would like to be able to run the projects that are stored on my laptop, through the internet, on my mobile device by using the Gideros Player.

    I am wondering if this is possible.
    twitter@TheWindApps Artful applications : The Wind Forest. #art #japan #apps
  • that was much older thread at that time i was able to connect Gideros Studio in mac with broadband to my mobile over gprs but after that they had changed something and that was even mentioned somewhere and i can't connect in above situation.

    :)
Sign In or Register to comment.