Android 是否在每条日志(cat)消息上自动启动?
我有一个Android应用程序,它可以与附件进行通信。我需要调试它的通信,这意味着USB端口已经被使用。我尝试过使用无线ADB,但它对我不起作用(它会工作几秒钟,然后几秒钟后断开并断开连接),因此我想知道是否有人知道这样做的方法: 我想显示发送给自动登录toast的消息。我正在从一个没有上下文的类生成日志消息,因此无法单独生成祝酒词。我希望有一个简单的方法,我可以做到这一点,这样我的主要活动就是听logcat的消息,并把它们放在祝酒辞中Android 是否在每条日志(cat)消息上自动启动?,android,logcat,toast,Android,Logcat,Toast,我有一个Android应用程序,它可以与附件进行通信。我需要调试它的通信,这意味着USB端口已经被使用。我尝试过使用无线ADB,但它对我不起作用(它会工作几秒钟,然后几秒钟后断开并断开连接),因此我想知道是否有人知道这样做的方法: 我想显示发送给自动登录toast的消息。我正在从一个没有上下文的类生成日志消息,因此无法单独生成祝酒词。我希望有一个简单的方法,我可以做到这一点,这样我的主要活动就是听logcat的消息,并把它们放在祝酒辞中 想法?创建一个接口,让您的应用程序实现该接口 public
想法?创建一个接口,让您的应用程序实现该接口
public interface Toaster
{
public void fireToast(String toast);
}
public void fireToast(final String toast)
{
runOnUiThread(new Runnable()
{
@Override
public void run()
{
Toast.makeText(getApplicationContext(), toast, Toast.LENGTH_SHORT).show();
}
});
}
有几种选择
Context
(Application.onCreate()
)并为其提供静态getter,您可以从应用程序中的任何类获取Context
。从这里,您可以轻松地提供自己的日志功能,将消息发送到日志和Toast在某个类中创建一个静态实用程序方法(我几乎在每个项目中都有一个实用程序类),并在其中放置一个用于日志记录的方法。不要直接调用Log.X,始终使用实用程序方法。该实用程序方法将调用Log.X(在您想要的任何日志级别),并创建同一消息的Toast。如果您可以捕获日志消息,那么有一种简单的方法可以让它们成为Toast或通知。所有这些建议都有一个问题,即它们不是实时的。我看不到事件何时发生。您可以使用选项3。只需实现自己的日志函数,这些函数调用logcat函数并显示祝酒词,然后从应用程序中获取所需的上下文。