ProfilingManager.RequestProfiling 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
请求系统分析。
[Android.Runtime.Register("requestProfiling", "(ILandroid/os/Bundle;Ljava/lang/String;Landroid/os/CancellationSignal;Ljava/util/concurrent/Executor;Ljava/util/function/Consumer;)V", "", ApiSince=35)]
public void RequestProfiling(Android.OS.ProfilingType profilingType, Android.OS.Bundle? parameters, string? tag, Android.OS.CancellationSignal? cancellationSignal, Java.Util.Concurrent.IExecutor? executor, Java.Util.Functions.IConsumer? listener);
[<Android.Runtime.Register("requestProfiling", "(ILandroid/os/Bundle;Ljava/lang/String;Landroid/os/CancellationSignal;Ljava/util/concurrent/Executor;Ljava/util/function/Consumer;)V", "", ApiSince=35)>]
member this.RequestProfiling : Android.OS.ProfilingType * Android.OS.Bundle * string * Android.OS.CancellationSignal * Java.Util.Concurrent.IExecutor * Java.Util.Functions.IConsumer -> unit
参数
- profilingType
- ProfilingType
要收集的分析的类型。
- parameters
- Bundle
请求相关参数的捆绑包。 如果捆绑包包含任何无法识别的参数,则请求将失败。android.os.ProfilingResult#ERROR_FAILED_INVALID_REQUEST 如果参数的值超出支持的范围,则会选择最接近的范围值。
建议直接生成 androidx 包装器 。
- tag
- String
调用方定义数据以帮助标识输出。 前 20 个字母数字字符加上短划线将小写并包含在输出文件名中。
- cancellationSignal
- CancellationSignal
对于请求取消的调用方。 如果可用,将返回结果。 如果为 null,则请求的应用将无法停止集合。 使用提供的配置或系统默认值超时后,集合将停止
- executor
- IExecutor
要回调的执行程序。 将仅用于此方法中提供的侦听器。 如果这是 null,并且请求时没有注册全局执行器和侦听器组合,则将删除该请求。
- listener
- IConsumer
要触发结果的侦听器。 还将触发通过 #registerForAllProfilingResults 注册的任何全局侦听器。 如果这是 null,并且请求时没有注册全局侦听器和执行程序组合,则将删除该请求。
- 属性
注解
请求系统分析。
注意:不建议对大多数用例直接使用此 API。 请考虑使用 AndroidX 提供的更高级别的包装器 来正确构造请求,从而支持使用简化的请求参数的可用选项。
必须在请求时设置侦听器和执行程序,以便将请求视为履行。 可以在此方法中设置侦听器/执行程序对,同时设置 #registerForAllProfilingResults侦听器/执行程序对和/或两者。 必须在同一个调用中将侦听器和执行程序设置在一起。 如果未设置侦听器和执行程序组合,将放弃请求,并且不会收到任何回调。
请求速率有限,不能保证填充。
分析开始前可能存在延迟。 对于连续分析类型(系统跟踪、堆栈采样和堆分析),我们建议提前启动集合,并在感兴趣的区域之后立即停止该 cancellationSignal 集合,以确保捕获要分析的部分。 对于堆转储,我们建议在本地进行测试,以确保在适当的时间收集堆转储。
本页的某些部分是根据 创建和共享的工作进行的修改,并根据 许可证中所述的条款使用。