Maheshchakkarwar / market-enabler

Automatically exported from code.google.com/p/market-enabler
0 stars 0 forks source link

"We got a problem Houston" on Developer G1 with Android 1.5 #33

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Launch MarketEnabler, select /settings list
2. select T-Mobile, or any
3. Houston :(

I built the latest version and ran on the G1 with logcat, see attached 
dump. It gets an IO exception the first time it trys to,
os.writeBytes(single + "\n")
at Line 40 in ShellInterface.

I have busybox installed. I tried executing each of the commands manually 
from adb. OK until the kill command which says,

cannot kill pid 724: no such process

So it seems like there are multiple problems behind this one.

Original issue reported on code.google.com by guywmcna...@gmail.com on 10 Nov 2009 at 8:20

Attachments:

GoogleCodeExporter commented 9 years ago
You did the kill command manually right? you have to search which PID the 
vending
process has and kill it but if you haven't started Market, no vening process 
exists
and the error message can be ignored (because it's not running, you wont need 
to kill
it).

About the Problem with the broken pipe (Unexpected error - Here is what I know:
Broken pipe):
On devel I tested ME a lot and this error was from SU app.
If the su app didn't responded fast enough (if not in white list).
I think the problem is the GC of dalvik that kills the child process su because 
the
superuser UI get started and if the memory is getting low, dalvik GC will end 
the ME
process and it's child processes.

I have to think, how to solve this in a clean way.
The solution that helped me and others is just witelisting ME in the superuser 
app.

Original comment by michel.racic on 10 Nov 2009 at 12:43

GoogleCodeExporter commented 9 years ago
Some extra info on this..

If I run the 8 commands manually using adb, they all execute OK until the kill 
command.
It seems not to matter if Market is started or not, it finds a pid, then says 
"no 
such process". If I run the kill command again, it finds a different pid with 
the 
same result.
The rm command executes OK.
After all this, when I launch MarketEnabler it shows the new T-Mobile settings 
but 
immediately errors with "A network error occurred".
Hope that helps...

Original comment by guywmcna...@gmail.com on 12 Nov 2009 at 6:30

GoogleCodeExporter commented 9 years ago
can you do a "ps" on the phone and attach the output?
Just do "ps > ps.log" and attach the generated ps.log, you can even trim it to 
just
include the header an one sample entry.

Some others with an early modaco rom discovered that ps didn't return in the 
same
format as ME was expecting and this leaded to a wrong PID (PID of Parent was 
taken
instead of own PID).

Original comment by michel.racic on 12 Nov 2009 at 8:41

GoogleCodeExporter commented 9 years ago
HYG
Guy

Original comment by guywmcna...@gmail.com on 12 Nov 2009 at 8:57

Attachments:

GoogleCodeExporter commented 9 years ago
hmmmm.... the header looks OK, the second column is the PID...
Can you try the following and post your output again?
$ echo "[ps]" > debug.log
$ ps >> debug.log
$ echo "[ps grep trim]" >> debug.log
$ ps | grep vending | tr -s ‘ ‘ | cut -d ‘ ‘ -f2 >> debug.log
$ echo "[kill]" >> debug.log
$ kill $(ps | grep vending | tr -s ‘ ‘ | cut -d ‘ ‘ -f2) >> debug.log

Original comment by michel.racic on 12 Nov 2009 at 9:30

GoogleCodeExporter commented 9 years ago
after both the ps and kill commands, the console reads,
cut: expected a list of bytes, characters, or fields

FYI, busybox is installed and I use
export PATH=/data/busybox:$PATH
in order for the grep, tr, cut commands to work.

Original comment by guywmcna...@gmail.com on 13 Nov 2009 at 1:33

Attachments:

GoogleCodeExporter commented 9 years ago
Ok, the output of ps in this log looks different than the output you posted 
before...
If you say you have to export the PATH variable, does this mean that you have 
to do
this every time you start a console?
If yes, ME can't access busybox because it doesn't make your export when 
opening a shell.
Anyway your ps output looks different than from most users but has been 
reported from
users with an older modaco rom.

Original comment by michel.racic on 13 Nov 2009 at 8:56

GoogleCodeExporter commented 9 years ago
Yes, I have to export the path every time I start a console.
Let me know if there is any more I can do.
G

Original comment by guywmcna...@gmail.com on 13 Nov 2009 at 9:01

GoogleCodeExporter commented 9 years ago
As soon i got some spare time I want to recode ME and build a version thats not
depending on busybox because most reported problems are from busybox.

You could try to modify init.rc and modify the path export there.
Be carefull to don't delete entries in there and you have to modify the
/system/init.rc (I think you have to remount the system partition for write 
access).
There exist 2 init.rc files and you have to modify the one in /system/, this 
gets
called by the other init.rc at the end and changes in the otherone might not be
permanent as I heard.

Before running ME, try the ps command in a terminal (without first exporting 
the PATH
and see if the PID column is the second column in the output, if not it wont 
work and
may cause your phone to reboot (because it may try to kill PID 0 and this is the
motherprocess of all processes.

Original comment by michel.racic on 13 Nov 2009 at 10:13

GoogleCodeExporter commented 9 years ago
I think I will wait for your rewrite - good luck!
G

Original comment by guywmcna...@gmail.com on 13 Nov 2009 at 10:43

GoogleCodeExporter commented 9 years ago

Original comment by michel.racic on 13 Nov 2009 at 11:21