gpt4 book ai didi

java - apk 应用程序的类似 Dumpsys 的功能

转载 作者:搜寻专家 更新时间:2023-11-01 08:21:53 38 4
gpt4 key购买 nike

我正在寻找一种解决方案来从 adb 访问我们应用程序的内部状态以进行调试。我经常使用 dumpsys 来获取系统服务的内部状态,所以现在我想知道我是否可以将我们的应用程序的接口(interface)公开给 adb。到目前为止,我唯一想到的就是定期记录信息,然后只阅读 logcat,但如果可能的话,我希望能够通过 adb 直接与应用程序交互,所以问题是如何在我们的应用程序中实现这一点。

最佳答案

在您的 Activity 中覆盖 dump() 方法,例如:

@Override
public void dump(String prefix, FileDescriptor fd, PrintWriter writer, String[] args) {
//super.dump(prefix, fd, writer, args);
writer.println();
writer.println("command line arguments:");
writer.format("length: %d, args: %s", args.length, Arrays.toString(args)).println();
}

然后启动您的 Activity 并在终端中输入:

adb shell dumpsys activity top your cmd line arguments

或:

adb shell dumpsys Activity 顶部

如果您不想将任何参数传递给dump() 方法

相同的方法存在于其他组件中,如 ServiceContentProvider - 请参阅它们的官方文档,了解如何使用 adb shell dumpsys activity 命令,还有一些类具有可用于转储其内部状态的 dump() 方法 - 例如 ApplicationInfoActivityInfoLooperHandlerBinderFragment 等等

关于java - apk 应用程序的类似 Dumpsys 的功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50112989/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com