GenericLogcatEventParser

public class GenericLogcatEventParser
extends Object implements Closeable

java.lang.Object
com.android.tradefed.util.GenericLogcatEventParser<LogcatEventType>


解析 logcat 输入以获取事件。

此类会解读 logcat 消息,并以阻塞 和轮询方式告知监听器事件。

摘要

嵌套类

class GenericLogcatEventParser.LogcatEvent

用于保存 Logcat 事件的结构体,包含事件类型和触发 Logcat 消息

公共构造函数

GenericLogcatEventParser(ITestDevice device)

实例化新的 LogcatEventParser

公共方法

void close()

停止监听 logcat。

void parseEvents(String[] lines)

解析 logcat 行,并将捕获的所有事件(已使用 registerEventTrigger(String,String,LogcatEventType) 注册)添加到事件队列。

GenericLogcatEventParser.LogcatEvent pollForEvent()

轮询事件队列。

void registerEventTrigger(String tag, String msg, LogcatEventType response)

使用所需响应注册给定 logcat 标记和消息的事件。

void registerEventTrigger(Log.LogLevel logLevel, String tag, String msg, LogcatEventType response)

使用所需响应注册给定 logcat 级别、标记和消息的事件。

void start()

开始监听 logcat 并解析事件。

GenericLogcatEventParser.LogcatEvent waitForEvent(long timeoutMs)

阻塞,直到收到事件。

公共构造函数

GenericLogcatEventParser

public GenericLogcatEventParser (ITestDevice device)

实例化新的 LogcatEventParser

参数
device ITestDevice:用于读取 logcat

公共方法

close

public void close ()

停止监听 logcat。

parseEvents

public void parseEvents (String[] lines)

解析 logcat 行,并将捕获的所有事件(已使用 registerEventTrigger(String,String,LogcatEventType) 注册)添加到事件队列。

参数
lines String

pollForEvent

public GenericLogcatEventParser.LogcatEvent pollForEvent ()

轮询事件队列。立即返回。

返回
GenericLogcatEventParser.LogcatEvent 事件;如果未找到匹配的事件,则返回 null

registerEventTrigger

public void registerEventTrigger (String tag, 
                String msg, 
                LogcatEventType response)

使用所需响应注册给定 logcat 标记和消息的事件。消息可能不完整。

参数
tag String

msg String

response LogcatEventType

registerEventTrigger

public void registerEventTrigger (Log.LogLevel logLevel, 
                String tag, 
                String msg, 
                LogcatEventType response)

使用所需响应注册给定 logcat 级别、标记和消息的事件。消息 可能不完整。

参数
logLevel Log.LogLevel

tag String

msg String

response LogcatEventType

start

public void start ()

开始监听 logcat 并解析事件。

waitForEvent

public GenericLogcatEventParser.LogcatEvent waitForEvent (long timeoutMs)

阻塞,直到收到事件。

参数
timeoutMs long:等待时间(以毫秒为单位)

返回
GenericLogcatEventParser.LogcatEvent 事件;如果达到超时时间,则返回 null

抛出
InterruptedException