Make read error toast configurable
Sometimes nfc read error toast would reset screen timeout,
because NFC would detect the same tag every few seconds
when unknown_tag_polling_delay enabled.
Set read error toast default disable,
since read error toast conflicts with unknown_tag_polling_delay.
Test: manual
Bug: 159865156
Change-Id: I0ce6e53ba2dcb8a7780437ec8e9d21fb303e09ce
(cherry picked from commit ded912677609b751fe92c25ea8930dce35dd73af)
diff --git a/res/values/config.xml b/res/values/config.xml
index 2186cb8..c350181 100644
--- a/res/values/config.xml
+++ b/res/values/config.xml
@@ -4,6 +4,7 @@
<bool name="enable_nfc_url_open_dialog">false</bool>
<bool name="enable_auto_play">true</bool>
<bool name="enable_notify_dispatch_failed">false</bool>
+ <bool name="enable_notify_read_failed">false</bool>
<bool name="enable_antenna_blocked_alert">false</bool>
<bool name="polling_disable_allowed">false</bool>
<integer name="max_antenna_blocked_failure_count">10</integer>
diff --git a/src/com/android/nfc/NfcService.java b/src/com/android/nfc/NfcService.java
index 0bbe4ce..837940c 100644
--- a/src/com/android/nfc/NfcService.java
+++ b/src/com/android/nfc/NfcService.java
@@ -309,6 +309,7 @@
int mPollDelay;
boolean mNotifyDispatchFailed;
+ boolean mNotifyReadFailed;
private NfcDispatcher mNfcDispatcher;
private PowerManager mPowerManager;
@@ -553,6 +554,7 @@
// Polling delay variables
mPollDelay = mContext.getResources().getInteger(R.integer.unknown_tag_polling_delay);
mNotifyDispatchFailed = mContext.getResources().getBoolean(R.bool.enable_notify_dispatch_failed);
+ mNotifyReadFailed = mContext.getResources().getBoolean(R.bool.enable_notify_read_failed);
mPollingDisableAllowed = mContext.getResources().getBoolean(R.bool.polling_disable_allowed);
@@ -2341,7 +2343,7 @@
if (!tag.reconnect()) {
tag.disconnect();
if (mScreenState == ScreenStateHelper.SCREEN_STATE_ON_UNLOCKED) {
- if (!sToast_debounce) {
+ if (!sToast_debounce && mNotifyReadFailed) {
Toast.makeText(mContext, R.string.tag_read_error,
Toast.LENGTH_SHORT).show();
sToast_debounce = true;