I have made an Android application that sends data over networks using sockets. I'm guessing (haven't tested because I don't have an outside IP address I can use) that it works with 3G. It definitely does with WiFi.
First: If my app works with WiFi, sending data to an inside IP address, is it safe to assume that it works with 3G, if I had an outside IP-adress to send to? - Of course I'm going to test this when I get the chance.
Second: If 3G works, how would I go about making an option, for the user to not allow use of 3G, only WiFi, inside the application?