Replace adbd on Emulator - Android Software Development

I'm trying to debug some ADB app I'm developing but needed to replace the adbd on the emulator with the one I compiled. However, I cannot figure out how this is done as evertime I overwrite it, it seems to get erased after each reboot. Furthermore, there's no way to mount an img file that I've found. I also can't use yaffs2utils to extract since it says invalid file size.
Any ideas?

Related

Replace 'hosts' file on Desire

Apologies if this has been discussed before, I have been researching this for a few days now and have tried every single method that has been advised but was unable to replace the hosts file from my Desire with a custom one. Seems the methods used for the Hero and other Android phones do not work on the Desire. Has anyone managed to replace the default 'hosts' file with a custom one?
My Desire IS rooted. I have tried the adb push method after deleting original file and remounting, I always get an error, something 'cannot allocate space' or similar. I have also tried using Root Explorer, again it says the file is too big. If I make the hosts file smaller by removing some data from it, it copies it, then the phone restarts itself and then when i check, the old hosts file is back (the original hosts file only has one entry for local host 127.0.0.1). I also tried editing the hosts file on the device using Root Explorer, I save, then the phone restarts and all the changes are lost. I seem to have tried all the possibilities and had no joy.
And before you ask, yes, I tried installing the AdFree app from the market, it doesn't seem to do anything, and sometimes it does restart my phone as well.
Any advice how to sort this out would be much appreciated.
are you doing all this in recovery mode?
Hello,
i have created a patched Adfree app for Desire
Adree now loads the hosts-file to
/sdcard/etc/hosts
i have removed /system/etc/hosts
and symlinked to /sdcard/etc/hosts
after the first start klick on "revert" and then on "Update & Install Hosts"
after that you can edit the Hosts file in /sdcard/etc/hosts and it will be used by android system
all files attached
(start in recovery using recovery script,
after that run the install script - STEP1 inside,
reboot into System
run install Script - STEP2)
please tell me if it wont work for you
kingchris said:
Hello,
i have created a patched Adfree app for Desire
Adree now loads the hosts-file to
/sdcard/etc/hosts
i have removed /system/etc/hosts
and symlinked to /sdcard/etc/hosts
after the first start klick on "revert" and then on "Update & Install Hosts"
after that you can edit the Hosts file in /sdcard/etc/hosts and it will be used by android system
all files attached
(start in recovery using recovery script, after that run the install script inside)
please tell me if it wont work for you
Click to expand...
Click to collapse
NICE
But i have some bug: get java.io.EOFExecepion error when i try to update.
ect/hosts folder on sd, installed apk by rootexplorer
where is the problem? I have just pushed my custom hosts file to /system/etc in recovery and it works without any problems.
Just mount /system in the root recovery and push it...
my hosts is from here: http://forum.xda-developers.com/showthread.php?t=664532
Sent from my HTC Desire using Tapatalk
DocRambone said:
NICE
But i have some bug: get java.io.EOFExecepion error when i try to update.
ect/hosts folder on sd, installed apk by rootexplorer
Click to expand...
Click to collapse
i had this error 2 times,
after pressing "revert" the error is gone
--edit--
seems to be a random error.
but after "revert" it works
@ aslocum
the problem is, that you cant update the file if the system is running. but if u symlink it, it is possible
How many times do you update the hosts file? The hosts from the thread I linked is really good and optimized. better the the adfree one.i do not need to update it till we get full write access...
Sent from my HTC Desire using Tapatalk
you are right, it is not necessary to update the hosts-file all the time,
but i like it to add / replace the file even when im not near to a PC.
i thought it is a solution, and i want to share it with all the others.
No offense to you sometimes im also in the mood just to make something work and others wont understand why
Most times its also fun to make things work
Sent from my HTC Desire using Tapatalk
kingchris said:
Hello,
i have created a patched Adfree app for Desire
Adree now loads the hosts-file to
/sdcard/etc/hosts
i have removed /system/etc/hosts
and symlinked to /sdcard/etc/hosts
after the first start klick on "revert" and then on "Update & Install Hosts"
after that you can edit the Hosts file in /sdcard/etc/hosts and it will be used by android system
all files attached
(start in recovery using recovery script,
after that run the install script - STEP1 inside,
reboot into System
run install Script - STEP2)
please tell me if it wont work for you
Click to expand...
Click to collapse
Hey kingchris,
Thanks for your efforts in creating the patched version. I have installed your apk, put the hosts file on the sdcard in /etc folder. Ran the app, clicked revert, it said Success, then Download and install Hosts, it went ok, now it says 'No need to update, your system already has the latest version. I click ok, but it doesn't seem to block any ads. Not sure what to do. Does the app have to be running in the background to work?
Trying to run the install script I got the following:
C:\adfreepatched>install-adfree-windows-step1.bat
C:\adfreepatched>adb-windows.exe shell mount /system
- exec '/system/bin/sh' failed: No such file or directory (2) -
C:\adfreepatched>adb-windows.exe shell mount /sdcard
- exec '/system/bin/sh' failed: No such file or directory (2) -
C:\adfreepatched>adb-windows.exe shell mkdir /sdcard/etc
- exec '/system/bin/sh' failed: No such file or directory (2) -
C:\adfreepatched>adb-windows.exe shell cp /system/etc/hosts /sdcard/etc/hosts
- exec '/system/bin/sh' failed: No such file or directory (2) -
C:\adfreepatched>adb-windows.exe shell rm -r /system/etc/hosts
- exec '/system/bin/sh' failed: No such file or directory (2) -
C:\adfreepatched>adb-windows.exe shell ln -s /sdcard/etc/hosts /system/etc/hosts
- exec '/system/bin/sh' failed: No such file or directory (2) -
C:\adfreepatched>install-adfree-windows-step2.bat
Sorry for being such an ignorant
i have created a new version of the fiel with a step1 and step2 batch
boot into recovery.
run recovery-windows.bat
run install-adfree-windows-step1.bat
reboot into your normal system
install-adfree-windows-step2.bat
then start adfree
if you get the Error Message try it again.
i think this is not an error created by the modification,
this is a problem on checking and downloading the hosts file
i made an error in the first script
in the script i wrote adb mount but it has to be adb shell mount
Uninstalled the program, deleted the /etc/hosts from my sdcard and started all over. If i boot into recovery mode and I get to the green recovery screen, I can no longer type any commands from the terminal window. If I reboot into Android, I run the two install commands and here are the results:
C:\adfreepatched2>install-adfree-windows-step1.bat
C:\adfreepatched2>adb-windows.exe shell mount /system
mount: can't read /etc/fstab: No such file or directory
C:\adfreepatched2>adb-windows.exe shell mount /sdcard
mount: can't read /etc/fstab: No such file or directory
C:\adfreepatched2>adb-windows.exe shell mkdir /sdcard/etc
C:\adfreepatched2>adb-windows.exe shell cp /system/etc/hosts /sdcard/etc/hosts
C:\adfreepatched2>adb-windows.exe shell rm -r /system/etc/hosts
rm: can't remove '/system/etc/hosts': Directory not empty
C:\adfreepatched2>adb-windows.exe shell ln -s /sdcard/etc/hosts /system/etc/host
s
ln: /system/etc/hosts: File exists
C:\adfreepatched2>install-adfree-windows-step2.bat
C:\adfreepatched2>adb-windows.exe install signed-Adfree_patched.apk
812 KB/s (39004 bytes in 0.046s)
pkg: /data/local/tmp/signed-Adfree_patched.apk
Success
The program is installed on my phone, it says Update found, i press ok, then click on Revert, all it does is it restarts my phone. Here, I went and replaced the 1KB hosts file from /sdcard/etc/ with the one in your folder, then when I clicked Revert, it said Success! Your hosts file has been restored. I then clicked Download & install hosts, and it said Success! your Android device should now be AdFree, however you might need to reboot to clear your cache. I rebooted the device. Ran AdFree again and it says your good to go! No need to update, your system already has the latest version.
So I guess it should now be working?
I installed a few 'free' apps from the market to see if I get the adds, and sure they are there.
For some reason, I still think it is using the /system/etc/hosts version instead of the version on the sdcard.
zoltar99 said:
If i boot into recovery mode and I get to the green recovery screen, I can no longer type any commands from the terminal window.
Click to expand...
Click to collapse
you have to open a second Command,if you are in the green recovery console
and run the step1.bat there
if you type after you have done all the steps
cd system
cd etc
ls -al *host*
you should see something like
lrwxrwxrwx 1 0 0 17 May 13 04:43 hosts -> /sdcard/etc/hosts
then its rights
I got that, thanks, but please read the second part of my last message and tell me do you think that is ok? I have installed Adfree, it says it is up to date, but it is still not blocking ads, apparently.
sould be right now
That's what I thought, but is there another way to tes apart from running apps that use adds? I tried by putting a few sites taken from the hosts file into the browser, and it opens all of them I have a customised hosts file on my pc as well, and it works like a charm.
then use your customized one. idk if the files from adfree uptodate. but i can say it will work
Finally Adfree working
kingchris said:
i have created a new version of the fiel with a step1 and step2 batch
boot into recovery.
run recovery-windows.bat
run install-adfree-windows-step1.bat
reboot into your normal system
install-adfree-windows-step2.bat
then start adfree
if you get the Error Message try it again.
i think this is not an error created by the modification,
this is a problem on checking and downloading the hosts file
i made an error in the first script
in the script i wrote adb mount but it has to be adb shell mount
Click to expand...
Click to collapse
Thanks a lot man, seems to be working ok now, I have had so much trouble getting this to work, finally working.
I have successfully updated adfree with your file. Thanks so much.
Sorry to ask a silly question...
because when I boot into the recovery mode, I can see several options available but I cannot choose them.
I hold volume down & power on, then I select "recovery" & press "power" again that means I choose this option then it goes into recovery mode, right? In the recovery mode, I cannot choose anything because if I press any button it simply turns off the monitor! What should I do??
(I take out the battery to complete the reboot........... There must be some other ways?)
veronl said:
I have successfully updated adfree with your file. Thanks so much.
Sorry to ask a silly question...
because when I boot into the recovery mode, I can see several options available but I cannot choose them.
I hold volume down & power on, then I select "recovery" & press "power" again that means I choose this option then it goes into recovery mode, right? In the recovery mode, I cannot choose anything because if I press any button it simply turns off the monitor! What should I do??
(I take out the battery to complete the reboot........... There must be some other ways?)
Click to expand...
Click to collapse
Not sure if you've resolved this or not. If not, what recovery are you using? Iv use Amon_Ra's on my HTC Magic, and Clockwork's on HTC Desire, both of which allow you to use the scrollball/pad to select the menu's

[Q] RESTORING Stock Apps

So I deleted a few apps and am curious as to how I go about restoring them to the phone if I say, deleted them by accident. I made a backup of all of the apps on my pc in the SDK Tools subdirectory so they are all there. Also, will installing an .odex file be the same as an .apk file? Do I need to restore the .odex files or will they automatically be rebuilt?
How did you perform this backup? With adb? Then it will be easy to put the apps back. You should just be able to use adb with the install command. Just type in adb at the command prompt and read the help instructons for install. Not sure if the install command takes care of the .odex files. You could try it and then copy them over manually if they dont get copied. I am sure once you boot the phone the default .odex will be built, just a quess on that though.
anika200 said:
How did you perform this backup? With adb? Then it will be easy to put the apps back. You should just be able to use adb with the install command. Just type in adb at the command prompt and read the help instructons for install. Not sure if the install command takes care of the .odex files. You could try it and then copy them over manually if they dont get copied. I am sure once you boot the phone the default .odex will be built, just a quess on that though.
Click to expand...
Click to collapse
I would think that pushing the files back to the original location from recovery would be the safest bet. ADB install will install it to /data and I would think that the apps being system apps originally then they don't have the signatures anyway to allow an ADB install.
I think you're right
I believe I originally used ADB to put them in Android SDK Tools/Desktop/~ folder. When I tried installing them back I don't believe it worked. I specifically remember receiving an error when trying to install the .odex file about a database issue. Assuming it's a system file I'm trying to restore, does someone have the syntax for the push command or how I go about doing that?
If you have the .apk and .odex files on your computer, or really backed up anywhere, you can install them a few ways:
ADB Method
#Prerequisites:
Make sure you have the APK files in AndroidSDK/tools.
1. Connect the phone to your computer
2. Launch a command prompt and enter the following commands:
cd C:\AndroidSDK\tools
Replace "C:\AndroidSDK\tools" with the path to the tools folder in your SDK installation.
adb install filename.apk
Replace "filename.apk" with the name of the file you're trying to install.
Actually, **** it, the ADB method works anyway, why list a bunch lol
No wait, these are original files so you should probably put them back in their original location.
Just use "adb push filename.apk /system/app", replacing filename.apk with your filename, of course..
Push it
Okay, thanks for the tips. So I guess when you have files in the system/app directory on the phone it knows automatically to look there for program installs. This is good to know.

Re-write damaged build.prop?

I've managed to make a typo somewhere when updating the build.prop and it hasn't written it, now my tab has a /System/build.prop.old file, but no /System/build.prop file. I've got a backup of the file, has anyone either got a valid UPDATE.ZIP file for a JK5 EU firmware version of the build.prop that I can write (will it work from the "external" SD card?) - or some other way of gaining root access via the recovery ADB shell so that i can rewrite this file, or am I going to need to reflash via Odin? I've tried creating my own update.zip file but it tells me that it can't find it, so I'm guessing it has to be on the internal SD card, which is not a lot of use as I can't mount it.
Not a big deal if I have to, I'd just rather know an alternative in case I stuff it up again
EDIT: Nevermind, I worked out how to gain root access whilst in recovery, pretty simple really - the same as the regular manual-root process but just using a different work folder. The /tmp folder is writeable in recovery mode so I just copied the rageagainstthecage binary into there via "adb push", set it to executable, ran it, killed the adb server and restarted it, reconnected and I had root access, moved the build.prop back and all is well again.
Based on this, it'd be a piece of cake to write an UPDATE.ZIP that did a full permanent shell-root and also installed busybox and superuser.apk. Any point or are people happy enough with the existing methods?

ADB offline issue

Could anyone please check and see if they have the adbd service in /sbin/adbd, using root explorer. I don't have it and am wondering if that is why my device is seen as offline.
Edit:
How to:
I don't know how or why this is happening yet, but if your Atrix is seen as offline by ADB for some reason like mine was, just copy this adbd file using root explorer to the /sbin directory and change the permissions to match the other files in the /sbin directory (rwxr-xr-x). (Extract the file from the zip first)
There is still one issue for me though. After a reboot the file disappears and I have to move another copy to the /sbin directory to get ADB working again. It seems as though the file is removed on shutdown, so I have not been able able to get the Early USB Enumeration working yet. Hopefully a solution will be found for this soon.
It is present on my phone.
Do you need me to upload it for you?
Yes please! That might fix my problem! For some reason I dont have it and I think that is why my phone is seen by my computer but is always offline. Hopefully this will work!
Sent from my MB860 using Tapatalk
Anyone that has the adbd service in /sbin/adbd, could you please upload it here for me. I would really appreciate it!
Sent from my MB860 using Tapatalk
here you go.
unzip and that's it. the file has no extension.
Let me know if this solved the ADB problem
Thanks a lot, I will let you know how it goes. Hopefully it works.
Sent from my MB860 using Tapatalk
clubtech said:
here you go.
unzip and that's it. the file has no extension.
Let me know if this solved the ADB problem
Click to expand...
Click to collapse
Holy crap, it worked!!! My device is not offline any more and adb is working!! For four days now I have been trying to figure this out. Thank you for the file!!
One weird thing though, after a reboot the file is gone and I have to copy it over to /sbin again to get it working. Now I need to figure out why it gets removed on a reboot. Anyone have any ideas?
airbillion said:
Could anyone please check and see if they have the adbd service in /sbin/adbd, using root explorer. I don't have it and am wondering if that is why my device is seen as offline.
Edit:
How to:
I don't know how or why this is happening yet, but if your Atrix is seen as offline by ADB for some reason like mine was, just copy this adbd file using root explorer to the /sbin directory and change the permissions to match the other files in the /sbin directory (rwxr-xr-x). (Extract the file from the zip first)
There is still one issue for me though. After a reboot the file disappears and I have to move another copy to the /sbin directory to get ADB working again. It seems as though the file is removed on shutdown, so I have not been able able to get the Early USB Enumeration working yet. Hopefully a solution will be found for this soon.
Click to expand...
Click to collapse
It gets removed because the ramdisk extracts it to that directory on boot
designgears said:
It gets removed because the ramdisk extracts it to that directory on boot
Click to expand...
Click to collapse
Is there a way to keep it in /sbin permanently? I think this is why early usb enumeration does not work for me.
Can I install your deodexed rom? I am nervous because I cant get the early usb enumeration working when the adbd file gets removed on reboot. Does the deodexed rom do anything requiring adb on the shutdown or reboot? Would I be ok without the adbd service until I reboot and replace the file?
airbillion said:
Is there a way to keep it in /sbin permanently? I think this is why early usb enumeration does not work for me.
Can I install your deodexed rom? I am nervous because I cant get the early usb enumeration working when the adbd file gets removed on reboot. Does the deodexed rom do anything requiring adb on the shutdown or reboot? Would I be ok without the adbd service until I reboot and replace the file?
Click to expand...
Click to collapse
on my phone, it is always in /sbin (before and after reboot).
The fact that on your phone it is getting deleted is strange.
Do you see other files under /sbin?
clubtech said:
on my phone, it is always in /sbin (before and after reboot).
The fact that on your phone it is getting deleted is strange.
Do you see other files under /sbin?
Click to expand...
Click to collapse
Yes a bunch: acpi_available, alsactl, apm_available, badblocks, blkid, blockdev.....vol_id. There are about 40 files, but the adbd seems to disappear after a reboot and my early usb enumeration does not work. I think it is because it adbd gets removed on a reboot. Is there a way to keep it in there after a reboot that you know of or to get usb early enumeration working?
not sure about a fix but as a work around, in theory you can try to create a script that runs on boot that always pushes the adbd file back into the /sbin folder. you can use a combination of programs like gscript to create the script and then a program like tasker to executive the script on boot or some other type of autostart program.
NguyenHuu said:
not sure about a fix but as a work around, in theory you can try to create a script that runs on boot that always pushes the adbd file back into the /sbin folder. you can use a combination of programs like gscript to create the script and then a program like tasker to executive the script on boot or some other type of autostart program.
Click to expand...
Click to collapse
Thanks, i will look into this.
What about adding it in then changing permissions on it to disable the system from deleting it?
Sent from my SAMSUNG-SGH-I897 using XDA App
Changing your adbd permissions back to stock may help, as the file in the .zip won't have the proper permissions. Do this:
Code:
chmod 0750 /sbin/adbd
The one in the zip will be 0777, which gives everyone read and write access, which isn't set normally.
Atrix ADB offline issue
clubtech said:
on my phone, it is always in /sbin (before and after reboot).
The fact that on your phone it is getting deleted is strange.
Do you see other files under /sbin?
Click to expand...
Click to collapse
I have the same problem! Any solutions found?
How do it get this onto a phone that is not rooted, so that I can root it?
Thanks.
Atrix Rooted Deodexed ADB Offine Issue
When I received my Atrix I used the program superoneclick to root the atrix and then Fully Deodexed, i enabled the sideloading of apps with the same program.
I then went to my external sd card where I had saved the apk's for titanium backup and adfree and installed them without any issues.Over the next few days I used my phone without any problems at all.I had some apk's on my computer that i wanted to push to my atrix so i tried to connect via adb and my phone was seen as offline no matter what computer, usb port or cable I used.I then thought that a hard reset might solve the issue so I went to the recovery menu and performed a system restore.This did not fix the problem.For days I tried to figure out how to fix it, until I realized that the adbd service in /sbins was missing so i got a copy and placed it in /sbins and adb worked again. However, after a reboot the adbd file is removed from /sbin and to get adb working again I have to place my copy of the adbd service back into the folder.The problem now though is that early usb enumeration in the recovery does not enable adb, the phone just boots normally after about 5 seconds.Thank you for your help and interest in my problem.Mroadster
airbillion said:
Could anyone please check and see if they have the adbd service in /sbin/adbd, using root explorer. I don't have it and am wondering if that is why my device is seen as offline.
Edit:
How to:
I don't know how or why this is happening yet, but if your Atrix is seen as offline by ADB for some reason like mine was, just copy this adbd file using root explorer to the /sbin directory and change the permissions to match the other files in the /sbin directory (rwxr-xr-x). (Extract the file from the zip first)
There is still one issue for me though. After a reboot the file disappears and I have to move another copy to the /sbin directory to get ADB working again. It seems as though the file is removed on shutdown, so I have not been able able to get the Early USB Enumeration working yet. Hopefully a solution will be found for this soon.
Click to expand...
Click to collapse
I really wish I could tell you how I did it, but I was going through this very same issue with loss of ADB after doing the SuperOneClick with a subsequent reset. After resetting the device I was not able to obtain ADB.
I got to a point where I decided I was going to just get rid of root and try to remove Superuser however every time I ran the script to remove it, it was still there. The script was running but no connection to ADB resulted in no execution.
I reset the device a couple more times and uninstalled all Motorola drivers from my computer. When I went through the initial setup and driver install again, it installed all the drivers like normal including the ADB communication. I confirmed ADB via "adb devices" and I everything seemed good to go.
I then used DG's aRoot to root once again without any issues at all. Every time I attempt to use ADB, it now connects flawlessly.
I have this problem as well and it is driving me insane as I bit off more than I could chew just trying to root my phone... Hopefully we can figure something out in the future.

Cant modify file?

I'm trying to replace one of the files in /system/usr/keylayout but i'm getting an error telling me the system is read only.
So i've gone back to the /system folder in Root Explorer and tried to remount it as rw but nothing happens.
So i've gone in and tried to use ADB. I turned on USB Debugging and connected with ADB, used "adb shell" to get in, then every variation of deleting the file and remounting the file system i can. Every method to delete the file tells me its read only, and every method to remount it tells me that the folder isnt in /proc/mounts. If i dont specify a folder and just use /, then it runs and shows a ton of folders, but i still cant delete the file. My goal is to replace it with another.
Any ideas why? I'm rooted with magisk, newest version of platform tools on the laptop, im running OOS 11.0.4.4 IN11AA, stock rom and kernel.

Categories

Resources