I have an issue which I can't even start to solve after hours of researching. I need to use GCM to facilitate peer to peer file transfer (JPEG image of circa 1.5 megabytes in file size to be specific).
Client A opens a socket and uses AirBOP to notify client B that it wants to send a picture and gives B relevant information (IP address + port to use, ephemeral I guess). B then connects to A and downloads the picture. All this behind NAT and via 3G/4G if at all possible. No server involved.
I looked into TTorrent, Snark, Cling, NAT hole punching, PWnat etc. but I still don't know how to achieve the above, and if it is possible at all..
This is a developer question but I'm restricted to General. I'm looking for a road map/guide lines/library/existing tutorials/projects on solving the above problem.
Thank you.
Related
I've been doing a bit of research and am wondering if its possible
to connect a android made application to a program on a PC.
For example User 1 on the Desktop PC, User 2 on the mobile device.
User 1 asks for user locations,User 2 gets notification to requesting
location they accept and it sends details to user 1.
User 1 program gets updated and a icon appears on a map where the user
2 is. User 1 places a icon on the map
User 2's own map gets update with icon where user 1 placed it.
Possible methods -
via intermediate webserver with http
via xmpp
via smp text messages
via direct tcp/ip connection between devices (may be difficult through
proxies & firewalls)
I got this crazy idea that I don't know is possible or not... what I want to do is set up my phone as wifi access point, then allow people to connect to it, but handle all incoming http traffic myself.
So:
Create a server (with KWS - Android web server)
client can connect to the phone
when client tries to open an http connection to any random server, this has to be intercepted by my app and handled by a local web server
Anyone knows any android app to do this ?
What you are talking about is a captive portal.
I made a simple app for this purpose. If you are a developer, I need your help to improve the app. For downloading the app and source code check this thread https://forum.xda-developers.com/android/general/guide-setup-fake-captive-portal-android-t4011689
Hi. I'm glad to finally be here.
Let me explain the context of my question. I'm designing an application in Android that works consuming a web service. For all inquiries carried out to that web service, you must authenticate to each perform.:silly:
I tried to use SSL certificates for greater security, but at the moment it is too advanced for me just knowing how to create a certificate, then install it on the server and on the client and the connection between them that way (If anyone has a tutorial will be welcome).
For now, I managed to connect via http without any protection. To authenticate the device that performs, IMEI shipping plus a random password (created in the registry).
Well, my question is whether this is an acceptable way or is there more optimal way that take care information that those using the app.
Thank you very much for your help, since I have no one else to turn.
Disclaimer: I know nothing on how to configure firewalls except for adding apps to the whitelist/blacklist.
Tried using NRFW and I noticed a few things:
1. I've consumed 12.54GB and 9.77GB was by NRFW. What's happening please.
2. I've tagged some apps that can only connect when I'm on wifi, yet I'm still getting notifications when I'm on mobile data. For example, the Facebook app and some games.
3. How do I determine which IP address should be allowed or blocked? For example, I see IP addresses pointing to Akamai and my ISP.
4. Is it a good idea to turn off background data? I restricted it on mobile data and allowed it when on wifi but some apps would not load properly even when I'm connected to a wifi network.
Thanks in advance! And please excuse me if I posted this in the wrong forum.
EDIT: I'm referring to Grey Shirt's NoRoot Firewall.
I read up a bit and learned that 1e100.net are Google's servers. I understand that these point to ads too. I also noticed my ISP's name shows up under these.
Do I allow these or do I block them?
First of all: sorry for answering so late ;-) ...:
- in my opinion, your traffic from internet is being redirected through this NoRoot Personal Firewall unto your smartphone
- so, the 9.77GB you mentioned were 'routed/directed' through the NRPFW - the rest was not (? - maybe for Android-Updates or anything?)
- as you could most probably see, all of these 9.77GB were allowed to pass through from the internet servers (akamai or google or microsoft or ibm or yahoo or many more..) to your smartphone ('s apps / system apps)
- notifications about your mobile connection(s) MAY simply be wrong (as i found out) - seemingly a bug in the NRPFW-app (?)
- akamai is one of the " intermediate servers" or main server for a couple of websites:
for example, when you open the 'WashingtonPost'-website on your smartphone, (all) contents from their website are upon an akamai-server, because 'WashingtonPost' does not have a server on its own inside their office building maybe big enough to handle all traffic from their website to all readers in the world
- your Internet Service Provider has intermediate servers for (any) web content, too - so, you might want to allow their internet addresses
- furthermore, background data is transferred when you have an email-app and this app (gmail or yahoo-app, e.g.) is transferring data even if you had closed the email-app (so you cannot see it anymore on your launcher) or it's even running in background and checking if there's new mail when auto-started while your smartphone is booting.
I would like to write an Android app that can tunnel all traffic from the phone to a specific host (and that host can strip off the tunnel and send traffic, eventually, to the actual destination host).
I see a lot of forums answers that show how to do this via manual VPN client settings on the phone, but I would like to write my own app.
Any pointers to specific API or tools someone can provide will be greatly appreciated.
Thank you.