|
58 | 58 |
|
59 | 59 | import javax.annotation.Nonnull; |
60 | 60 |
|
| 61 | +import androidx.core.content.ContextCompat; |
61 | 62 | import io.github.sds100.keymapper.api.IKeyEventRelayServiceCallback; |
62 | 63 | import io.github.sds100.keymapper.inputmethod.accessibility.AccessibilityUtils; |
63 | 64 | import io.github.sds100.keymapper.inputmethod.annotations.UsedForTesting; |
@@ -744,39 +745,39 @@ public void onCreate() { |
744 | 745 | // Register to receive ringer mode change. |
745 | 746 | final IntentFilter filter = new IntentFilter(); |
746 | 747 | filter.addAction(AudioManager.RINGER_MODE_CHANGED_ACTION); |
747 | | - registerReceiver(mRingerModeChangeReceiver, filter); |
| 748 | + ContextCompat.registerReceiver(this, mRingerModeChangeReceiver, filter, ContextCompat.RECEIVER_EXPORTED); |
748 | 749 |
|
749 | 750 | // Register to receive installation and removal of a dictionary pack. |
750 | 751 | final IntentFilter packageFilter = new IntentFilter(); |
751 | 752 | packageFilter.addAction(Intent.ACTION_PACKAGE_ADDED); |
752 | 753 | packageFilter.addAction(Intent.ACTION_PACKAGE_REMOVED); |
753 | 754 | packageFilter.addDataScheme(SCHEME_PACKAGE); |
754 | | - registerReceiver(mDictionaryPackInstallReceiver, packageFilter); |
| 755 | + ContextCompat.registerReceiver(this, mDictionaryPackInstallReceiver, packageFilter, ContextCompat.RECEIVER_EXPORTED); |
755 | 756 |
|
756 | 757 | final IntentFilter newDictFilter = new IntentFilter(); |
757 | 758 | newDictFilter.addAction(DictionaryPackConstants.NEW_DICTIONARY_INTENT_ACTION); |
758 | | - registerReceiver(mDictionaryPackInstallReceiver, newDictFilter); |
| 759 | + ContextCompat.registerReceiver(this, mDictionaryPackInstallReceiver, newDictFilter, ContextCompat.RECEIVER_NOT_EXPORTED); |
759 | 760 |
|
760 | 761 | final IntentFilter dictDumpFilter = new IntentFilter(); |
761 | 762 | dictDumpFilter.addAction(DictionaryDumpBroadcastReceiver.DICTIONARY_DUMP_INTENT_ACTION); |
762 | | - registerReceiver(mDictionaryDumpBroadcastReceiver, dictDumpFilter); |
| 763 | + ContextCompat.registerReceiver(this, mDictionaryDumpBroadcastReceiver, dictDumpFilter, ContextCompat.RECEIVER_NOT_EXPORTED); |
763 | 764 |
|
764 | 765 | final IntentFilter hideSoftInputFilter = new IntentFilter(); |
765 | 766 | hideSoftInputFilter.addAction(ACTION_HIDE_SOFT_INPUT); |
766 | | - registerReceiver(mHideSoftInputReceiver, hideSoftInputFilter, PERMISSION_HIDE_SOFT_INPUT, |
767 | | - null /* scheduler */); |
| 767 | + ContextCompat.registerReceiver(this, mHideSoftInputReceiver, hideSoftInputFilter, PERMISSION_HIDE_SOFT_INPUT, |
| 768 | + null /* scheduler */, ContextCompat.RECEIVER_EXPORTED); |
768 | 769 |
|
769 | 770 | final IntentFilter restartAfterUnlockFilter = new IntentFilter(); |
770 | 771 | restartAfterUnlockFilter.addAction(Intent.ACTION_USER_UNLOCKED); |
771 | | - registerReceiver(mRestartAfterDeviceUnlockReceiver, restartAfterUnlockFilter); |
| 772 | + ContextCompat.registerReceiver(this, mRestartAfterDeviceUnlockReceiver, restartAfterUnlockFilter, ContextCompat.RECEIVER_EXPORTED); |
772 | 773 |
|
773 | 774 | final IntentFilter keyMapperIntentFilter = new IntentFilter(); |
774 | 775 | keyMapperIntentFilter.addAction(KEY_MAPPER_INPUT_METHOD_ACTION_INPUT_DOWN_UP); |
775 | 776 | keyMapperIntentFilter.addAction(KEY_MAPPER_INPUT_METHOD_ACTION_INPUT_DOWN); |
776 | 777 | keyMapperIntentFilter.addAction(KEY_MAPPER_INPUT_METHOD_ACTION_INPUT_UP); |
777 | 778 | keyMapperIntentFilter.addAction(KEY_MAPPER_INPUT_METHOD_ACTION_TEXT); |
778 | 779 |
|
779 | | - registerReceiver(mKeyMapperBroadcastReceiver, keyMapperIntentFilter); |
| 780 | + ContextCompat.registerReceiver(this, mKeyMapperBroadcastReceiver, keyMapperIntentFilter, ContextCompat.RECEIVER_EXPORTED); |
780 | 781 |
|
781 | 782 | // Connect to the different key mapper build types. |
782 | 783 | mKeyEventRelayServiceWrapperRelease = |
|
0 commit comments