Titanium通过系绳访问文件

I have an app that needs to access a local WAMP server in order to be served by a PHP script, but only when the USB cable is plugged in. The app needs to operate completely offline. I have researched using USB tunneling and such but so far there is no clean and simple solution. Perhaps I am looking too far and wide for a solution?

The end result for this project is that I need to copy a database from the WAMP server to the devices database. I plan on feeding it a JSON-parseable string via the PHP script.

I am trying to achieve this with XHR:

var url = "http://10.0.2.2:8080/home/yey.php";
    var xhr = Ti.Network.createHTTPClient({
        onload: function(e){
            alert(this.responseText);
        },
        onerror: function(e){
            alert(e.error);
        },
        timeout: 5000
    });

xhr.open("GET", url);
xhr.send();

Other IP addresses I have tried are:

192.168.0.1
127.0.0.1
10.0.2.2
// My PC's IP

// and ports
8888
80
8080

I am currently using easyPHP for development but the final product will run on a dedicated server box.

Is there any other way for Titanium to access a php script hosted locally?

You can access files with the specified IP addresses only when you use the emulator. Not on the device.

If you want to use the device, you will need to specify the actual IP address of your computer. I guess you know how to find your IP address locally right?

If your router is 192.168.0.1, then usually your machine will have something else instead of the 1

  • 10.0.2.2 is the parent machine (thus, in emulator, the computer running the emulator)
  • 192.168.0.1 is most likely your router
  • 127.0.0.1 is the device itself

This will work locally, but not specifically for usb. Why do you need that anyways?

The port to use depends totally on the setup of your apache on your computer.