/
iOSImpl.uno
35 lines (30 loc) · 929 Bytes
/
iOSImpl.uno
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
using Uno;
using Uno.UX;
using Uno.Collections;
using Uno.Compiler.ExportTargetInterop;
using Fuse;
using Fuse.Triggers;
using Uno.Threading;
namespace Firebase.Notifications
{
[Require("Cocoapods.Podfile.Target", "pod 'Firebase/Messaging'")]
[extern(iOS) Require("Source.Include", "iOSFirebaseNotificationCallbacks.h")]
[extern(iOS) Require("Source.Include", "Firebase/Firebase.h")]
public class iOSImpl
{
extern(ios) static internal ObjC.Object _iosDelegate;
public iOSImpl() {
Start();
}
extern(!iOS)
public void Start() { }
[Foreign(Language.ObjC)]
extern(iOS)
public void Start()
@{
FireNotificationCallbacks* fireCB = [[FireNotificationCallbacks alloc] init];
@{_iosDelegate:Set(fireCB)};
[FIRMessaging messaging].delegate = (id<FIRMessagingDelegate>)fireCB;
@}
}
}