|
14 | 14 |
|
15 | 15 | namespace Unity.Notifications.Android
|
16 | 16 | {
|
17 |
| - /// <summary> |
18 |
| - /// Represents a status of the Android runtime permission. |
19 |
| - /// </summary> |
20 |
| - public enum PermissionStatus |
21 |
| - { |
22 |
| - /// <summary> |
23 |
| - /// No permission as user was not prompted for it. |
24 |
| - /// </summary> |
25 |
| - NotRequested = 0, |
26 |
| - |
27 |
| - /// <summary> |
28 |
| - /// User gave permission. |
29 |
| - /// </summary> |
30 |
| - Allowed = 1, |
31 |
| - |
32 |
| - /// <summary> |
33 |
| - /// User denied permission. |
34 |
| - /// </summary> |
35 |
| - Denied = 2, |
36 |
| - |
37 |
| - /// <summary> |
38 |
| - /// User denied permission and expressed intent to not be prompted again. |
39 |
| - /// </summary> |
40 |
| - DeniedDontAskAgain = 3, |
41 |
| - |
42 |
| - /// <summary> |
43 |
| - /// A request for permission was made and user hasn't responded yet. |
44 |
| - /// </summary> |
45 |
| - RequestPending = 4, |
46 |
| - } |
47 |
| - |
48 | 17 | /// <summary>
|
49 | 18 | /// Current status of a scheduled notification, can be queried using CheckScheduledNotificationStatus.
|
50 | 19 | /// </summary>
|
@@ -568,7 +537,7 @@ public static JniMethodID FindMethod(AndroidJavaClass clazz, string name, string
|
568 | 537 | public class AndroidNotificationCenter
|
569 | 538 | {
|
570 | 539 | private static int API_POST_NOTIFICATIONS_PERMISSION_REQUIRED = 33;
|
571 |
| - private static string PERMISSION_POST_NOTIFICATIONS = "android.permission.POST_NOTIFICATIONS"; |
| 540 | + internal static string PERMISSION_POST_NOTIFICATIONS = "android.permission.POST_NOTIFICATIONS"; |
572 | 541 |
|
573 | 542 | /// <summary>
|
574 | 543 | /// A PlayerPrefs key used to save users reply to POST_NOTIFICATIONS request (integer value of the PermissionStatus).
|
@@ -627,7 +596,7 @@ public static bool Initialize()
|
627 | 596 | return s_Initialized;
|
628 | 597 | }
|
629 | 598 |
|
630 |
| - static void SetPostPermissionSetting(PermissionStatus status) |
| 599 | + internal static void SetPostPermissionSetting(PermissionStatus status) |
631 | 600 | {
|
632 | 601 | PlayerPrefs.SetInt(SETTING_POST_NOTIFICATIONS_PERMISSION, (int)status);
|
633 | 602 | }
|
@@ -668,36 +637,6 @@ public static PermissionStatus UserPermissionToPost
|
668 | 637 | }
|
669 | 638 | }
|
670 | 639 |
|
671 |
| - /// <summary> |
672 |
| - /// Request user permission to post notifications. |
673 |
| - /// Before Android 13 (API 33) will allow immediately. |
674 |
| - /// May succeed or fail immediately. Users response is saved to PlayerPrefs. |
675 |
| - /// Respects users wish to not be asked again. |
676 |
| - /// </summary> |
677 |
| - /// <returns>PermissionStatus.RequestPending if user is prompted for permission or immediately known reply.</returns> |
678 |
| - /// <seealso cref="SETTING_POST_NOTIFICATIONS_PERMISSION"/> |
679 |
| - public static PermissionStatus RequestPermissionToPost() |
680 |
| - { |
681 |
| - var permissionStatus = UserPermissionToPost; |
682 |
| - if (permissionStatus == PermissionStatus.Allowed) |
683 |
| - return permissionStatus; |
684 |
| - if (permissionStatus == PermissionStatus.DeniedDontAskAgain) |
685 |
| - return permissionStatus; |
686 |
| - // Can only request permission if applications target SDK is 33, not actual device SDK |
687 |
| - if (s_TargetApiLevel < API_POST_NOTIFICATIONS_PERMISSION_REQUIRED) |
688 |
| - { |
689 |
| - // don't change setting here, in case app gets updated |
690 |
| - return PermissionStatus.DeniedDontAskAgain; |
691 |
| - } |
692 |
| - |
693 |
| - var callbacks = new PermissionCallbacks(); |
694 |
| - callbacks.PermissionGranted += (unused) => SetPostPermissionSetting(PermissionStatus.Allowed); |
695 |
| - callbacks.PermissionDenied += (unused) => SetPostPermissionSetting(PermissionStatus.Denied); |
696 |
| - callbacks.PermissionDeniedAndDontAskAgain += (unused) => SetPostPermissionSetting(PermissionStatus.DeniedDontAskAgain); |
697 |
| - Permission.RequestUserPermission(PERMISSION_POST_NOTIFICATIONS, callbacks); |
698 |
| - return PermissionStatus.RequestPending; |
699 |
| - } |
700 |
| - |
701 | 640 | /// <summary>
|
702 | 641 | /// Creates a notification channel that notifications can be posted to.
|
703 | 642 | /// Notification channel settings can be changed by users on devices running Android 8.0 and above.
|
|
0 commit comments