代码之家  ›  专栏  ›  技术社区  ›  TaQuangTu

如何禁用我的应用程序中的Toast消息?

  •  0
  • TaQuangTu  · 技术社区  · 8 年前

    我正在建立一个奥赛罗游戏(人类玩机器人)。在我的程序中没有任何toast命令和无限循环,我的游戏只需要很长的时间来计算我的机器人的每一个下一步(我正在努力使我的机器人更智能)。由于一些不清楚的原因,系统总是在logcat中按to as t和错误消息显示一条空消息,如下所示,我不想看到它的外观。如何禁用它,或者禁用所有Toast消息?

    enter image description here

    在logcat中:

    Package has already posted 50 toasts. Not showing more
    

    提前感谢!

    3 回复  |  直到 7 年前
        1
  •  1
  •   Andrei N    8 年前

    您可以有一个第三方库来创建祝酒词。 你可以用 Find in path Find usages 在Android Studio中查找正在显示祝酒词的位置。

        2
  •  1
  •   statosdotcom    8 年前

    你可以做的,虽然没有找到更好的解决方案,是手动进入你的设备设置和阻止通知从你的应用程序,这将阻止恼人的祝酒。

    您还可以使用代码调用应用程序通知设置屏幕(扩展为支持所有Android版本),然后可能稍后实现sharedPrefs例程,以便仅在第一次显示它(避免每次打开应用程序时打开设置):

    Intent intent = new Intent();
    if (android.os.Build.VERSION.SDK_INT > Build.VERSION_CODES.N_MR1) {
        intent.setAction("android.settings.APP_NOTIFICATION_SETTINGS");
        intent.putExtra("android.provider.extra.APP_PACKAGE", context.getPackageName());
    } else if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
        intent.setAction("android.settings.APP_NOTIFICATION_SETTINGS");
        intent.putExtra("app_package", context.getPackageName());
        intent.putExtra("app_uid", context.getApplicationInfo().uid);
    } else {
        intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
        intent.addCategory(Intent.CATEGORY_DEFAULT);
        intent.setData(Uri.parse("package:" + context.getPackageName()));
    }
    
    yourContext.startActivity(intent);
    

    附言:如果你认为这个答案有助于回答你的问题,请检查这个答案是否正确。T.Y.

        3
  •  0
  •   Bita Mirshafiee    8 年前

    在android studio中选择主包,然后按ctrl+shift+f搜索所有包和类,然后写“toast.show”以查找用代码编写的toast