Register local receivers in TetheringService

This commit is contained in:
Mygod
2018-01-13 23:54:43 +08:00
parent 6f43369ca1
commit c96398168b

View File

@@ -60,6 +60,8 @@ class TetheringService : Service(), VpnListener.Callback {
if (failed) Toast.makeText(this, getText(R.string.noisy_su_failure), Toast.LENGTH_SHORT).show() if (failed) Toast.makeText(this, getText(R.string.noisy_su_failure), Toast.LENGTH_SHORT).show()
} else if (!receiverRegistered) { } else if (!receiverRegistered) {
registerReceiver(receiver, intentFilter(NetUtils.ACTION_TETHER_STATE_CHANGED)) registerReceiver(receiver, intentFilter(NetUtils.ACTION_TETHER_STATE_CHANGED))
LocalBroadcastManager.getInstance(this)
.registerReceiver(receiver, intentFilter(App.ACTION_CLEAN_ROUTINGS))
VpnListener.registerCallback(this) VpnListener.registerCallback(this)
receiverRegistered = true receiverRegistered = true
} }
@@ -111,6 +113,7 @@ class TetheringService : Service(), VpnListener.Callback {
private fun unregisterReceiver() { private fun unregisterReceiver() {
if (receiverRegistered) { if (receiverRegistered) {
unregisterReceiver(receiver) unregisterReceiver(receiver)
LocalBroadcastManager.getInstance(this).unregisterReceiver(receiver)
VpnListener.unregisterCallback(this) VpnListener.unregisterCallback(this)
upstream = null upstream = null
receiverRegistered = false receiverRegistered = false