Easy switching of logging for TextClassifier

This way there is a single switch for detailed logging vs summarised
logging. We can keep the switch on in development but limit the logs
in production devices.

Test: manually tested log switch turned on/off.
Change-Id: I8ad291b19554f393a05fbc7cae3d545163d21a99
This commit is contained in:
Abodunrinwa Toki
2017-10-17 15:31:39 +01:00
parent 0751b7249c
commit 786188536f
2 changed files with 47 additions and 2 deletions

View File

@@ -0,0 +1,46 @@
/*
* Copyright (C) 2017 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.view.textclassifier;
import android.util.Slog;
/**
* Logging for android.view.textclassifier package.
*/
final class Log {
/**
* true: Enables full logging.
* false: Limits logging to debug level.
*/
private static final boolean ENABLE_FULL_LOGGING = false;
private Log() {}
public static void d(String tag, String msg) {
Slog.d(tag, msg);
}
public static void e(String tag, String msg, Throwable tr) {
if (ENABLE_FULL_LOGGING) {
Slog.e(tag, msg, tr);
} else {
final String trString = (tr != null) ? tr.getClass().getSimpleName() : "??";
Slog.d(tag, String.format("%s (%s)", msg, trString));
}
}
}

View File

@@ -35,7 +35,6 @@ import android.text.TextUtils;
import android.text.method.WordIterator;
import android.text.style.ClickableSpan;
import android.text.util.Linkify;
import android.util.Log;
import android.util.Patterns;
import android.view.View;
import android.widget.TextViewMetrics;
@@ -163,7 +162,7 @@ final class TextClassifierImpl implements TextClassifier {
}
} catch (Throwable t) {
// Avoid throwing from this method. Log the error.
Log.e(LOG_TAG, "Error getting assist info.", t);
Log.e(LOG_TAG, "Error getting text classification info.", t);
}
// Getting here means something went wrong, return a NO_OP result.
return TextClassifier.NO_OP.classifyText(