自学内容网 自学内容网

Android PMS——PMS处理pm命令(九)

        上一篇文章介绍到最后通过 IBinder::shellCommand 调用到 PMS 中的 onShellCommand 方法。这里我们就来分析一下 PMS 中的处理流程。

一、PMS处理命令

1、PackageManagerService

源码位置:/frameworks/base/services/core/java/com/android/server/pm/PackageManagerService.java

@Override
public void onShellCommand(FileDescriptor in, FileDescriptor out, FileDescriptor err, String[] args, ShellCallback callback, ResultReceiver resultReceiver) {
    (new PackageManagerShellCommand(this, mPermissionManagerService)).exec(this, in, out, err, args, callback, resultReceiver);
}

        这里创建 PackageManagerShellCommand 对象并调用它 exec 函数的进行处理。 而该函数又是继承自其父类 ShellCommand。

2、ShellCommand

源码位置:/frameworks/base/core/java/android/os/ShellCommand.java

public int exec(Binder target, FileDescriptor in, FileDescriptor out, FileDescriptor err, String[] args, ShellCallback callback, ResultReceiver resultReceiver) {

原文地址:https://blog.csdn.net/c19344881x/article/details/135986892

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!