如何在Android中启用adbd在引导时监听端口?

如何在Android中启用adbd在引导时监听端口?,android,adb,boot,init,remote-connection,Android,Adb,Boot,Init,Remote Connection,我有一个根深蒂固的HTC英雄,我想做的是启用adbd 在引导时侦听端口 我尝试了一些代码,发现: 在Android外壳中,它工作得很好 我试图更改init.rc文件。我在init.rc中添加了上述代码 我通过以下命令将其替换为原始文件: adb push init.rc sdcard adb shell adb su mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 / adb cp sdcard/init.rc / 文件已成功替换,但当我

我有一个根深蒂固的HTC英雄,我想做的是启用adbd 在引导时侦听端口

我尝试了一些代码,发现:

在Android外壳中,它工作得很好

我试图更改init.rc文件。我在init.rc中添加了上述代码 我通过以下命令将其替换为原始文件:

adb push init.rc sdcard

adb shell
adb su
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /
adb cp sdcard/init.rc /
文件已成功替换,但当我重新启动手机并尝试连接时 通过:

adb连接:5555
未建立连接

有什么想法吗

(注:我不想使用应用程序和shell命令,比如
am start-n…

)

您需要在boot.img中解包、修改和重新打包initrd。您可以在以下网址找到更多信息:


为什么不尝试使用操作
启动完成时的
广播接收器

您可以在清单中注册一个:


这将使其持久化:

setprop persist.adb.tcp.port 5555
重新启动后,USB上的ADB可能不可用。要撤消此设置,请执行以下操作:

setprop persist.adb.tcp.port ""

这肯定会有帮助:你不知道这项发现为我们节省了多少钱——这么简单&有效——为什么这项发现没有获得更多的选票?干杯。这些财产存放在哪里?与build.prop?相比,在我的Sony Xperia Z1 compact和Android 5.0.2的stock ROM上,USB即使在重新启动后仍能正常工作。如果你使用adb,命令是
adb shell setprop persist.adb.tcp.port 5555
。你真是太棒了:)我知道这很旧,但仍然非常有用!
        <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>
import java.util.*;
import android.content.*;

public class BootCompleted extends BroadcastReceiver
{
    @Override
    public void onReceive(Context context, Intent intent) 
    {
        // Do the actions you want
    }
}
setprop persist.adb.tcp.port 5555
setprop persist.adb.tcp.port ""