Android 是否在每条日志(cat)消息上自动启动?

Android 是否在每条日志(cat)消息上自动启动?,android,logcat,toast,Android,Logcat,Toast,我有一个Android应用程序,它可以与附件进行通信。我需要调试它的通信,这意味着USB端口已经被使用。我尝试过使用无线ADB,但它对我不起作用(它会工作几秒钟,然后几秒钟后断开并断开连接),因此我想知道是否有人知道这样做的方法: 我想显示发送给自动登录toast的消息。我正在从一个没有上下文的类生成日志消息,因此无法单独生成祝酒词。我希望有一个简单的方法,我可以做到这一点,这样我的主要活动就是听logcat的消息,并把它们放在祝酒辞中 想法?创建一个接口,让您的应用程序实现该接口 public

我有一个Android应用程序,它可以与附件进行通信。我需要调试它的通信,这意味着USB端口已经被使用。我尝试过使用无线ADB,但它对我不起作用(它会工作几秒钟,然后几秒钟后断开并断开连接),因此我想知道是否有人知道这样做的方法:

我想显示发送给自动登录toast的消息。我正在从一个没有上下文的类生成日志消息,因此无法单独生成祝酒词。我希望有一个简单的方法,我可以做到这一点,这样我的主要活动就是听logcat的消息,并把它们放在祝酒辞中


想法?

创建一个接口,让您的应用程序实现该接口

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();
        }
    });
}
有几种选择

  • 您可以使用类似的方式查看设备上的日志
  • 您可以在调试会话后查看日志,只需将手机插入USB电缆,然后启动ADB即可
  • 通过在应用程序启动时记住
    Context
    Application.onCreate()
    )并为其提供静态getter,您可以从应用程序中的任何类获取
    Context
    。从这里,您可以轻松地提供自己的日志功能,将消息发送到日志和Toast

  • 在某个类中创建一个静态实用程序方法(我几乎在每个项目中都有一个实用程序类),并在其中放置一个用于日志记录的方法。不要直接调用Log.X,始终使用实用程序方法。该实用程序方法将调用Log.X(在您想要的任何日志级别),并创建同一消息的Toast。

    如果您可以捕获日志消息,那么有一种简单的方法可以让它们成为Toast或通知。所有这些建议都有一个问题,即它们不是实时的。我看不到事件何时发生。您可以使用选项3。只需实现自己的日志函数,这些函数调用logcat函数并显示祝酒词,然后从应用程序中获取所需的上下文。