How to enable adbd to listen to a port at boot time in Android?

我怕爱的太早我们不能终老 提交于 2019-11-29 01:30:18

问题


I have a rooted HTC Hero, and what I want to do is to enable the adbd to listen to a port at boot time.

I tried some code found here:

setprop service.adb.tcp.port 5555
stop adbd
start adbd

in an Android shell and it works great.

I tried to change the init.rc file. I added the above code in init.rc and I replaced it with the original file, through these commands:

adb push init.rc sdcard

adb shell
adb su
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /
adb cp sdcard/init.rc /

The file is replaced successfully, but when I reboot my phone and try to connect through:

adb connect <IP>:5555

the connection is not being established.

Any ideas?

(PS. I don't want to use the remoteADB application and a shell command like am start -n ... )


回答1:


This will make it persistent:

setprop persist.adb.tcp.port 5555

ADB over USB might not be available after reboot. To undo this setting, do:

setprop persist.adb.tcp.port ""



回答2:


You need to unpack, modify, and repack the initrd inside the boot.img. You can find more on this at:

https://groups.google.com/forum/?fromgroups=#!topic/android-platform/w37x_WCrhMM




回答3:


Why don't you try using a BroadcastReceiver of the action BOOT_COMPLETED?

You can register one in you Manifest:

        <receiver
        android:name="com.myapp.BootCompleted"
        android:enabled="true"
        android:exported="false" >
        <intent-filter>
            <action android:name="android.intent.action.BOOT_COMPLETED" />
        </intent-filter>
    </receiver>

and in the class you can do whatever you want when boot is completed:

import java.util.*;
import android.content.*;

public class BootCompleted extends BroadcastReceiver
{
    @Override
    public void onReceive(Context context, Intent intent) 
    {
        // Do the actions you want
    }
}


来源:https://stackoverflow.com/questions/12251101/how-to-enable-adbd-to-listen-to-a-port-at-boot-time-in-android

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!