com.onesignal.unity.ios 5.0.2 → 5.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Editor/BuildPostProcessor.cs +17 -0
- package/Editor/OneSignaliOSDependencies.xml +1 -1
- package/Runtime/Plugins/iOS/OneSignalUnityBridgeNotifications.mm +2 -1
- package/Runtime/Plugins/iOS/UIApplication+OneSignalUnity.mm +2 -2
- package/Runtime/iOSNotificationsManager.cs +19 -18
- package/package.json +2 -2
|
@@ -111,6 +111,8 @@ namespace OneSignalSDK.iOS {
|
|
|
111
111
|
// Add the service extension
|
|
112
112
|
AddNotificationServiceExtension();
|
|
113
113
|
|
|
114
|
+
DisableBitcode();
|
|
115
|
+
|
|
114
116
|
// Save the project back out
|
|
115
117
|
File.WriteAllText(_projectPath, _project.WriteToString());
|
|
116
118
|
}
|
|
@@ -191,6 +193,7 @@ namespace OneSignalSDK.iOS {
|
|
|
191
193
|
_project.SetBuildProperty(extensionGuid, "SWIFT_VERSION", "5.0");
|
|
192
194
|
_project.SetBuildProperty(extensionGuid, "ARCHS", "arm64");
|
|
193
195
|
_project.SetBuildProperty(extensionGuid, "DEVELOPMENT_TEAM", PlayerSettings.iOS.appleDeveloperTeamID);
|
|
196
|
+
_project.SetBuildProperty(extensionGuid, "ENABLE_BITCODE", "NO");
|
|
194
197
|
|
|
195
198
|
_project.AddBuildProperty(extensionGuid, "LIBRARY_SEARCH_PATHS",
|
|
196
199
|
$"$(PROJECT_DIR)/Libraries/{PluginLibrariesPath.Replace("\\", "/")}");
|
|
@@ -282,6 +285,20 @@ namespace OneSignalSDK.iOS {
|
|
|
282
285
|
|
|
283
286
|
File.WriteAllText(podfilePath, podfile);
|
|
284
287
|
}
|
|
288
|
+
|
|
289
|
+
private void DisableBitcode() {
|
|
290
|
+
// Main
|
|
291
|
+
var targetGuid = _project.GetMainTargetGuid();
|
|
292
|
+
_project.SetBuildProperty(targetGuid, "ENABLE_BITCODE", "NO");
|
|
293
|
+
|
|
294
|
+
// Unity Tests
|
|
295
|
+
var unityTests = _project.TargetGuidByName(PBXProject.GetUnityTestTargetName());
|
|
296
|
+
_project.SetBuildProperty(unityTests, "ENABLE_BITCODE", "NO");
|
|
297
|
+
|
|
298
|
+
// Unity Framework
|
|
299
|
+
var unityFramework = _project.GetUnityFrameworkTargetGuid();
|
|
300
|
+
_project.SetBuildProperty(unityFramework, "ENABLE_BITCODE", "NO");
|
|
301
|
+
}
|
|
285
302
|
}
|
|
286
303
|
}
|
|
287
304
|
#endif
|
|
@@ -70,7 +70,6 @@ typedef void (*ClickListenerDelegate)(const char* notification, const char* resu
|
|
|
70
70
|
if (self = [super init]) {
|
|
71
71
|
[OneSignal.Notifications addPermissionObserver:self];
|
|
72
72
|
[OneSignal.Notifications addForegroundLifecycleListener:self];
|
|
73
|
-
[OneSignal.Notifications addClickListener:self];
|
|
74
73
|
|
|
75
74
|
_willDisplayEvents = [NSMutableDictionary new];
|
|
76
75
|
}
|
|
@@ -161,5 +160,7 @@ extern "C" {
|
|
|
161
160
|
|
|
162
161
|
void _notificationsSetClickCallback(ClickListenerDelegate callback) {
|
|
163
162
|
[[OneSignalNotificationsObserver sharedNotificationsObserver] setClickDelegate:callback];
|
|
163
|
+
|
|
164
|
+
[OneSignal.Notifications addClickListener:[OneSignalNotificationsObserver sharedNotificationsObserver]];
|
|
164
165
|
}
|
|
165
166
|
}
|
|
@@ -96,8 +96,8 @@ static bool swizzled = false;
|
|
|
96
96
|
|
|
97
97
|
- (BOOL)oneSignalApplication:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
|
|
98
98
|
[OneSignalWrapper setSdkType:@"unity"];
|
|
99
|
-
[OneSignalWrapper setSdkVersion:@"
|
|
100
|
-
[OneSignal
|
|
99
|
+
[OneSignalWrapper setSdkVersion:@"050004"];
|
|
100
|
+
[OneSignal initialize:nil withLaunchOptions:launchOptions];
|
|
101
101
|
|
|
102
102
|
if ([self respondsToSelector:@selector(oneSignalApplication:didFinishLaunchingWithOptions:)])
|
|
103
103
|
return [self oneSignalApplication:application didFinishLaunchingWithOptions:launchOptions];
|
|
@@ -48,15 +48,30 @@ namespace OneSignalSDK.iOS.Notifications {
|
|
|
48
48
|
[DllImport("__Internal")] private static extern void _notificationsWillDisplayEventPreventDefault(string notificationId);
|
|
49
49
|
[DllImport("__Internal")] private static extern void _notificationsSetClickCallback(ClickListenerDelegate callback);
|
|
50
50
|
|
|
51
|
-
|
|
51
|
+
private delegate void PermissionListenerDelegate(bool permission);
|
|
52
52
|
private delegate void WillDisplayListenerDelegate(string notification);
|
|
53
53
|
private delegate void ClickListenerDelegate(string notification, string resultActionId, string resultUrl);
|
|
54
54
|
private delegate void BooleanResponseDelegate(int hashCode, bool response);
|
|
55
55
|
|
|
56
56
|
public event EventHandler<NotificationWillDisplayEventArgs> ForegroundWillDisplay;
|
|
57
|
-
public event EventHandler<NotificationClickEventArgs> Clicked;
|
|
58
57
|
public event EventHandler<NotificationPermissionChangedEventArgs> PermissionChanged;
|
|
59
58
|
|
|
59
|
+
// Only set the native listner once
|
|
60
|
+
private bool _clickNativeListenerSet;
|
|
61
|
+
|
|
62
|
+
private EventHandler<NotificationClickEventArgs> _clicked;
|
|
63
|
+
public event EventHandler<NotificationClickEventArgs> Clicked {
|
|
64
|
+
add {
|
|
65
|
+
_clicked += value;
|
|
66
|
+
|
|
67
|
+
if (!_clickNativeListenerSet) {
|
|
68
|
+
_clickNativeListenerSet = true;
|
|
69
|
+
_notificationsSetClickCallback(_onClicked);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
remove { _clicked -= value; }
|
|
73
|
+
}
|
|
74
|
+
|
|
60
75
|
private static iOSNotificationsManager _instance;
|
|
61
76
|
|
|
62
77
|
public iOSNotificationsManager() {
|
|
@@ -88,7 +103,6 @@ namespace OneSignalSDK.iOS.Notifications {
|
|
|
88
103
|
public void Initialize() {
|
|
89
104
|
_notificationsAddPermissionObserver(_onPermissionStateChanged);
|
|
90
105
|
_notificationsSetForegroundWillDisplayCallback(_onForegroundWillDisplay);
|
|
91
|
-
_notificationsSetClickCallback(_onClicked);
|
|
92
106
|
}
|
|
93
107
|
|
|
94
108
|
[AOT.MonoPInvokeCallback(typeof(PermissionListenerDelegate))]
|
|
@@ -133,23 +147,10 @@ namespace OneSignalSDK.iOS.Notifications {
|
|
|
133
147
|
_fillNotifFromObj(ref notif, Json.Deserialize(notification));
|
|
134
148
|
|
|
135
149
|
var result = new NotificationClickResult(resultActionId, resultUrl);
|
|
136
|
-
|
|
137
150
|
NotificationClickEventArgs args = new NotificationClickEventArgs(notif, result);
|
|
138
151
|
|
|
139
|
-
EventHandler<NotificationClickEventArgs> handler = _instance.
|
|
140
|
-
|
|
141
|
-
{
|
|
142
|
-
if (OneSignalPlatform.DidInitialize)
|
|
143
|
-
UnityMainThreadDispatch.Post(state => handler(_instance, args));
|
|
144
|
-
else {
|
|
145
|
-
void invokeOpened(string appId) {
|
|
146
|
-
OneSignalPlatform.OnInitialize -= invokeOpened;
|
|
147
|
-
UnityMainThreadDispatch.Post(state => handler(_instance, args));
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
OneSignalPlatform.OnInitialize += invokeOpened;
|
|
151
|
-
}
|
|
152
|
-
}
|
|
152
|
+
EventHandler<NotificationClickEventArgs> handler = _instance._clicked;
|
|
153
|
+
UnityMainThreadDispatch.Post(state => handler(_instance, args));
|
|
153
154
|
}
|
|
154
155
|
|
|
155
156
|
private static void _fillNotifFromObj(ref iOSDisplayableNotification notif, object notifObj) {
|
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "com.onesignal.unity.ios",
|
|
3
3
|
"displayName": "OneSignal Unity SDK - iOS",
|
|
4
|
-
"version": "5.0.
|
|
4
|
+
"version": "5.0.4",
|
|
5
5
|
"unity": "2018.4",
|
|
6
6
|
"description": "OneSignal is the market leader in customer engagement, powering mobile push, web push, email, and in-app messages.",
|
|
7
7
|
"dependencies": {
|
|
8
|
-
"com.onesignal.unity.core": "5.0.
|
|
8
|
+
"com.onesignal.unity.core": "5.0.4"
|
|
9
9
|
},
|
|
10
10
|
"keywords": [
|
|
11
11
|
"push-notifications",
|