我正试图在一个有根的acer iconia标签上运行eclipse中的应用程序,没什么特别的,只是一个简单的helloworld应用程序,我得到了这个输出:
[2011-06-28 21:45:12 - HelloAndroid] Android Launch!
[2011-06-28 21:45:12 - HelloAndroid] adb is running normally.
[2011-06-28 21:45:12 - HelloAndroid] Performing com.androidbook.hello.HelloActivity activity launch
[2011-06-28 21:45:12 - HelloAndroid] Automatic Target Mode: using device '37c618743c06297'
[2011-06-28 21:45:12 - HelloAndroid] Uploading HelloAndroid.apk onto device '37c618743c06297'
[2011-06-28 21:45:12 - HelloAndroid] Installing HelloAndroid.apk...
[2011-06-28 21:45:12 - HelloAndroid] Success!
[2011-06-28 21:45:12 - HelloAndroid] Starting activity com.androidbook.hello.HelloActivity on device 37c618743c06297
[2011-06-28 21:45:12 - HelloAndroid] ActivityManager: /sbin/sh: am: not found
我也试过运行“adb shell”,它正确地打开了设备上的根终端,我尝试运行am命令,我得到了同样的错误,即“/ sbin / sh:am:not found”。但是,该命令正确位于/ system / bin,而/ system / bin位于路径
中/ # echo $PATH
/sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin
有谁知道会出现什么问题?
答案 0 :(得分:5)
问题在于行
#!/system/bin/sh
从am文件的顶部丢失。 只需使用vi编辑器将其添加回来,它就会起作用......
如果您有root用户,可以使用busybox vi am
编辑文件。如果文件系统是只读的,那么之前运行mount -o remount,rw /system
并在mount -o remount,ro /system
之后运行以允许编辑/ system。您可能必须在mount命令前加上busybox
,如果失败并打印用法(这可能意味着您没有root用户)。
答案 1 :(得分:1)
找到了“解决方案”。不知道为什么am命令无法运行,即使它出现在设备上,但是在安装了不同的rom后,问题仍然存在。我使用了很好的ROM 1.0.8,并切换到良性星系1.0.2。
感谢任何提供反馈的人。