Related
The Barnes & Noble Nook uses adb over wifi. How can I setup my N1 to do the same? Ideally I would like to specify on the N1 to only allow connections over wifi, and if possible have some sort of password type security. Can this be done?
why not use ssh?
the dropbear-client is included in most custom roms.
edit: i mean dropbear-server of course
mikecyber said:
The Barnes & Noble Nook uses adb over wifi. How can I setup my N1 to do the same? Ideally I would like to specify on the N1 to only allow connections over wifi, and if possible have some sort of password type security. Can this be done?
Click to expand...
Click to collapse
+1 on this, but I would like it to be included within the ROM with a UI setting or maybe even an applicaion
Getting adbd to listen to tcpip in the phone is quite easy.
Example below:
Code:
[I]# detach adbd from usb and tell it to listen to port tcp 2222
[/I][email protected]$ adb tcpip 2222
restarting in TCP mode port: 2222
[I]# tell your local adb command to use ip:port to connect through instead of usb (192.168.0.151 is my N1 on Wifi)
[/I][email protected]$ adb connect 192.168.0.151:2222
connected to 192.168.0.151:2222
[I]# connect over ip
[/I][email protected]$ adb shell
# uname -a
Linux localhost 2.6.29.6-cyanogenmod #3 PREEMPT Wed Jan 27 07:21:12 EST 2010 armv7l GNU/Linux
# exit
[I]# tell adbd to go back to listen on usb
[/I][email protected]$ adb usb
restarting in USB mode
packetlss said:
Getting adbd to listen to tcpip in the phone is quite easy.
Click to expand...
Click to collapse
Thank you, your method works well.
With my nook all I need to do is "adb connect 192.168.1.x:5555" I don't have to put adb into tcpip mode or enter "uname -a" in shell.
I would love to see "Wireless Debugging" in Settings -> Applications -> Development, or really anywhere in Settings. I haven't voided my N1's warranty, so an app to add this functionality would be great.
mikecyber said:
Thank you, your method works well.
With my nook all I need to do is "adb connect 192.168.1.x:5555" I don't have to put adb into tcpip mode or enter "uname -a" in shell.
I would love to see "Wireless Debugging" in Settings -> Applications -> Development, or really anywhere in Settings. I haven't voided my N1's warranty, so an app to add this functionality would be great.
Click to expand...
Click to collapse
That's because the nook adbd is configured to listen to tcp by default, on most other platforms it just listens to USB by default.
The 'uname -a' was just to show that I actually was connected to the phone. Nothing to do with the actual adb stuff at all, I was just lazy and copied from my terminal
MoDaCo Custom ROMs generally run dropbear by default with a password that is randomly generated on first startup.
I don't mind making an addon update zip for Cyanogen's ROM with this functionality if you want it?
P
bump
Found this really useful as my USB driver causes BSODs. thanks packetlss
1. connect device via usb
2. adb tcpip 2222
3. connect over wifi. adb connect 192.168.3.5:2222
4. adb commands as normal
can the OP remove [request] as this is now a [tip] or [howto]
britoso said:
bump
Found this really useful as my USB driver causes BSODs. thanks packetlss
1. connect device via usb
2. adb tcpip 2222
3. connect over wifi. adb connect 192.168.3.5:2222
4. adb commands as normal
can the OP remove [request] as this is now a [tip] or [howto]
Click to expand...
Click to collapse
Does the USB have to be hooked up each time, or is it a 1 time then WIFI is good after that?
Nice howto!!
britoso said:
bump
Found this really useful as my USB driver causes BSODs. thanks packetlss
1. connect device via usb
2. adb tcpip 2222
3. connect over wifi. adb connect 192.168.3.5:2222
4. adb commands as normal
can the OP remove [request] as this is now a [tip] or [howto]
Click to expand...
Click to collapse
Gotta say that is slick as sh**!!! How to get it to stay on tcpip via terminal on phone??
britoso said:
bump
Found this really useful as my USB driver causes BSODs. thanks packetlss
1. connect device via usb
2. adb tcpip 2222
3. connect over wifi. adb connect 192.168.3.5:2222
4. adb commands as normal
can the OP remove [request] as this is now a [tip] or [howto]
Click to expand...
Click to collapse
interesseting... thanks!
i'll try that
EDIT: worked so good - thx!
tbirdguy said:
Does the USB have to be hooked up each time, or is it a 1 time then WIFI is good after that?
Click to expand...
Click to collapse
Do it once and it stays...perhaps till you reboot the phone.
If your IP address on wifi you will need to run the connect command again. Also set the wifi-sleep mode to 'never', possibly install the wifi-keepalive app.
Its awesome to be able to run stuff on your phone straight from eclipse, unplugged; or install/push/pull files
xkonni said:
why not use ssh?
the dropbear-client is included in most custom roms.
edit: i mean dropbear-server of course
Click to expand...
Click to collapse
Do you know what the default pw is for dropbear? when i try to ssh with my local ip and root, i get a connection refused on port 22. i'm using cm6, do i have to enable it somehow?
TCPIP mode without connecting usb
Is it possible to enable ADBD tcpip mode without connecting device to USB port and use adb command? I mean maybe a command we can run in a Terminal Emulator?
bohlool said:
Is it possible to enable ADBD tcpip mode without connecting device to USB port and use adb command? I mean maybe a command we can run in a Terminal Emulator?
Click to expand...
Click to collapse
re,it's there any possible that get adb work over TCP/IP ,on all android devices(include non-rooted devices)?
wobiu said:
re,it's there any possible that get adb work over TCP/IP ,on all android devices(include non-rooted devices)?
Click to expand...
Click to collapse
I know how to enable it, just connect it with usb to computer and enter "adb connect tcpip <port>" then disconnect usb and connect phone to wifi, find the ip of phone and on your computer type "adb connect <ip>:<port>"
my problem is how can I do the first step without usb cable, i.e. using a terminal emulator. I have root access.
bohlool said:
my problem is how can I do the first step without usb cable, i.e. using a terminal emulator. I have root access.
Click to expand...
Click to collapse
would love to see this as well, can anyone with expertise in the area let us know if this is at all possible?
# adbd
As root on the device returns
Cannot bind tcp 5037
Im not home so i cant test but maybe this could work over tcp port 5037...
Sent from my Nexus One
bohlool said:
I know how to enable it, just connect it with usb to computer and enter "adb connect tcpip <port>" then disconnect usb and connect phone to wifi, find the ip of phone and on your computer type "adb connect <ip>:<port>"
my problem is how can I do the first step without usb cable, i.e. using a terminal emulator. I have root access.
Click to expand...
Click to collapse
for rooted device。you can use"start adbd" command to start adb daemon ,instead of plug into usb.
What am i looking for is a way to use adb over wifi for all device including non-rooted.
wobiu said:
for rooted device。you can use"start adbd" command to start adb daemon ,instead of plug into usb.
What am i looking for is a way to use adb over wifi for all device including non-rooted.
Click to expand...
Click to collapse
What is the port number then? is it 5037? Can I set it somewhere? (for rooted devices of course)
As long as I have the requisite SDK files and a terminal on an Android device, or if I'm doing this programmatically in an app I'd develop, can I use adb to push a file from one device to another that's connected via USB? The devices will be a Nexus 4 and probably a Nexus 7. The N7 would be the sender, fwiw. I'm hoping that it's not required that the device executing the adb push commands be a computer as opposed to a mobile device.
I'm assuming that I can find a cable that's micro USB (if that's what it's called) at both ends to connect the two devices.
Is it possible to do the same thing via a Bluetooth connection? Or can adb only recognize a device connected via USB?
maigre said:
As long as I have the requisite SDK files and a terminal on an Android device, or if I'm doing this programmatically in an app I'd develop, can I use adb to push a file from one device to another that's connected via USB? The devices will be a Nexus 4 and probably a Nexus 7. The N7 would be the sender, fwiw. I'm hoping that it's not required that the device executing the adb push commands be a computer as opposed to a mobile device.
I'm assuming that I can find a cable that's micro USB (if that's what it's called) at both ends to connect the two devices.
Is it possible to do the same thing via a Bluetooth connection? Or can adb only recognize a device connected via USB?
Click to expand...
Click to collapse
If you tried this you would need a usb otg cable for connecting the devices. But I don't think ADB client software exists on phones just computers. Why would you want his when Android has multiple better choices? Turn on NFC and tap the device backs together for example.
shadowofdarkness said:
If you tried this you would need a usb otg cable for connecting the devices. But I don't think ADB client software exists on phones just computers. Why would you want his when Android has multiple better choices? Turn on NFC and tap the device backs together for example.
Click to expand...
Click to collapse
I have adb on my Nexus devices. I didn't even put it there, though BusyBox might have. It's in /system/bin. I can execute commands from a terminal. But I haven't tried it with another device. I'll get an OTG cable.
I'd use NFC or make one of the devices a ftp server, but that doesn't meet the needs of the project I’m working on. This isn't for personal use or convenience. I need to have one device send another a file within a certain physical environment that precludes those things.
maigre said:
I have adb on my Nexus devices. I didn't even put it there, though BusyBox might have. It's in /system/bin. I can execute commands from a terminal. But I haven't tried it with another device. I'll get an OTG cable.
I'd use NFC or make one of the devices a ftp server, but that doesn't meet the needs of the project I’m working on. This isn't for personal use or convenience. I need to have one device send another a file within a certain physical environment that precludes those things.
Click to expand...
Click to collapse
Hello Maigre,
Have you finished your experiment with the OTG cable ? I would try to do the same kind of operation.
And if I add and USB cable to the USB-OTG cable, do you know if it's working ? (I found only a micro-USB male to USB female OTG cable, and I would use it with a USB male to micro-USB male cable).
Thank you in advance,
Greg
Hi all. What I need is a way to control Android device (s) from PC via Wi-Fi. I found a lot of apps (and Desktop programs) to do it, but I didn't found a way to View OR control the Android device WITHOUT ROOT. I work on the company which asked me to find a way to do this without root with their Android devices. After googling a lot I started to think that where is no way to do this, because either way I need to root them . Is it true or maybe there is somewhere an app which could do this? It doesn't care if it's paid or not.
I have downloaded and tester these apps:
MyMobiler - Doesn't work because when I restart Android device, app doesn't start WiFi, just keyboard mode only. I need that when the app starts it should run itself and start WiFi automatically.
VMLite VNC Server - Don't know why but it didn't worked for me. Just cannot start server from the browser.
Thank you for any responses and appreciate any help.
What error messages do you get from vmlite vnc server? Make sure you enable USB debugging. We have tens of thousands of users using our app, and your device should work.
Well, actually now I tried to launch VMLite VNC one more time and IT WORKED (don't know how, because earlier I tried it and I was unable to enter to VNC Viewer in the Browser). So yeah, in this case it works perfectly now, but I just realized, that I have no way of connected more Android devices. Because what I need to do is to connect multiple Android devices to computer with USB (as I understand it's required for the first time) and when use it with WiFi. For now I see that I only capable of connecting single Android device with desktop program and everytime I want to connect to Android deice from computer, I need to connect it via USB (where is no way to save Android devices to use it any time I want to via WiFi). Or am I wrong? And it is a problem because in my company all Android devices are far away from each other. Anyway, thank your for such an awesome app, I really don't know how it is capable of connecting to my Android device WITHOUT ROOT (because I found like 10 apps, read a lot of forums, and every solution was with ROOTED devices, I am very interseting of the actual app functionality), but thank you.
You can connect to multiple devices using multiple USB cables. There is a drop down list to display devices, and you choose one by one to start the server. Alternatively, you can write some scripts to auto start the vnc servers.
There are quite some testing companies using our app this way to automate regression tests.
Alternatively, you can write some scripts to auto start the vnc servers.
Click to expand...
Click to collapse
Can I get more information about it? Thank you.
Basically you can automate the starting process using adb command:
adb shell "am start -a android.intent.action.MAIN -n com.vmlite.vncserver/.MainActivity"
adb shell /data/data/com.vmlite.vncserver/files/vmlitevncserver
Deimantas007 said:
Can I get more information about it? Thank you.
Click to expand...
Click to collapse
Thank you for this script (it's very cool, I didn't know this kind of stuff before), but it requires USB connection as well.
I googled a few things and found this app - ADB Wireless (no-root) on Google Play Store. Basically it connects ADB via WiFi and I don't need no USB cable and connection with it. But VMLite Android App Controller program on my Desktop doesn't recognize it (it requires USB connection). Can I actually connect Android device with PC with this method or I am missing something and there is no way of doing it with this method? Thank you (I promise, this is the last question from me, no more dumb questions).
I don't think it will work for you. You mentioned your android device will reboot, right?
If your device gets rebooted, you will have to use a USB connection to a PC. the ADB wireless app has same requirement.
Steps to get it working: (from ADB Wireless app page)
1. Enable USB Debugging on your phone.
2. Connect your phone via usb cable to your PC.
3. Run adb tcpip 5555.
4. Run ADB Wireless (no root).
5. Connect to the IP address.
Deimantas007 said:
Thank you for this script (it's very cool, I didn't know this kind of stuff before), but it requires USB connection as well.
I googled a few things and found this app - ADB Wireless (no-root) on Google Play Store. Basically it connects ADB via WiFi and I don't need no USB cable and connection with it. But VMLite Android App Controller program on my Desktop doesn't recognize it (it requires USB connection). Can I actually connect Android device with PC with this method or I am missing something and there is no way of doing it with this method? Thank you (I promise, this is the last question from me, no more dumb questions).
Click to expand...
Click to collapse
huisinro said:
I don't think it will work for you. You mentioned your android device will reboot, right?
If your device gets rebooted, you will have to use a USB connection to a PC. the ADB wireless app has same requirement.
Steps to get it working: (from ADB Wireless app page)
1. Enable USB Debugging on your phone.
2. Connect your phone via usb cable to your PC.
3. Run adb tcpip 5555.
4. Run ADB Wireless (no root).
5. Connect to the IP address.
Click to expand...
Click to collapse
What's right. It needs to connect my phone via USB. But I thought that maybe there is a way to automate this process, I mean maybe there is a solution to TURN DEBUGGING MODE between phone and pc programs via WiFi connection (not USB) and communicate with VMLite VNC Server program on startup. Either way, again, thank you for your software (app). I will say to my boss that we need to stay where we are at the moment. It's just awesome to have an app which doesn't require ROOT.
Hello all,
As I'm not allowed to post in development forum due to low post count, this seems to me the ideal place. I have a custom USB WiFi stick that I need to use with my Android phone. I was able to build to build the driver module in the kernel and the device drivers are detected as well. I have verified it using dmesg as well as there is a light on stick that turns green when the drivers are recognized and firmware is loaded.
However, I am unable to see the WiFi for the USB stick (which have it's own AP) in the list of available WiFis on my mobile device. I tried to Google it on the Internet, but there is limited help available. One possible solution I found is to disable wlan0 interface which I tried in adb shell using command:
ifconfig wlan0 down
However, I was unable to run this command in adb shell. Can someone tell how to disable or turn off wlan0 interface in Android using adb shell?
Also, are there any other possible solutions to the problem I stated?
Thank you.
(Many will consider this question a duplicate of similar questions but I don't think this question should be marked as duplicate because the answer requested here is different than others.)
I am searching for the solutions since many years and read a lot of pages on internet and StackOverflow but hasn't found any solution.
Once an non-rooted Android phone is authorized over USB using ADB then how to connect it over Wi-Fi every time without ever connecting the phone over USB?
I know that executing
Code:
adb start-server
then
Code:
adb tcpip 5555
and then
Code:
adb connect <IP.address.of.phone>
will connect the phone over Wi-Fi IF it is connected using USB when issuing these commands.
According to the answers/forums, there are 2 ways to connect Android phone over Wi-Fi:
The user has to first connect to USB even though the device is already authorized.
The phone needs to be rooted.
But I think, what I want to achieve, as per the question, must be possible because if ADB can connect over USB and then Wi-Fi, then there must be some way to accomplish with directly connecting over Wi-Fi if computer is already authenticated. The missing thing is to know what exactly ADB is doing when switching from USB to Wi-Fi. I think, it could be getting authorization again. But what if we store the authorization information (finger print? or encryption key?) once and use it every time to connect over Wi-Fi? (Please note that when first time authenticating the computer over USB, its finger print is showed in the Android phone, and it never asks again until the authorization is revoked/invalidated somehow. So, I think the requirement here is to revalidate the computer.)
I viewed the ADB repository and read the text files mentioning how ADB works. In one txt file I read that
Code:
adbd
(ADB Daemon) is started on port 5555 on the Android phone/emulator when
Code:
adb connect ___
command is executed. Is there anyway to manually start the daemon through a terminal app on the installed on phone? I tried 'adb', 'adbd' and 'setprop' commands in the Termux app but these commands doesn't exist. According to the txt files of the repository, the ADB on computer is sending the commands to the Android device/emulator and can start 'adbd' or set/open the port 5555 using
Code:
setprop service.adb.tcp.port 5555
command. Is there a way to do this on Android phone using a terminal app on a non-rooter phone?
Somebody who has knowledge of networking, Android and C/C++ language may be able to answer. One can look in the GitHub repo of ADB source code if they want to know what is happening during the connection process.
I'm a little late to answer your question at the time you asked it, but if it still helps the OP, non-rooted Android 10 and below allowed wireless adb connections AFTER a USB connection was first established (adb start-server && adb tcpip 5555 && adb connect [IP]:5555), but that changed (for the better) in Android 11 and above with the new new Developer options Wireless debugging random port assignments (adb connect [IP]:[PORT] or adb pair [IP]:[PORT] [PIN]) such that the adb wireless connection never needs USB cable ever again.
Given Android 11 allows Developer options Wireless debugging via a random port, and Android 12 new Developer options Wireless debugging allows that to be accessed even easier with a new Developer options Wireless debugging tile, the only thing missing is a way to get, after the fact, the random port assignment that Android uses for the adb wireless connection to your PC.
Here are some related posts about that subject which may help the OP.
[adb,scrcpy,vysor] What ports does Android 12 randomly set when Wi-Fi connecting via Wireless debugging adb "pair" or "connect" commands?
(PSA) Using the new Android 12 TILE for 'Developer options' 'Wireless debugging' to establish adb connection over Wi-Fi without USB
What's the difference between Windows/Android adb "connect" versus adb "pair" when mirroring Android 12 over Wi-Fi onto a Windows PC?
The only question that's missing an answer preventing a perfect solution is...
Does anyone know how to obtain that random Android port address from the PC?