rho-tau-extensions 6.2.0 → 7.1.17

Sign up to get free protection for your applications and to get access to all the features.
Files changed (160) hide show
  1. checksums.yaml +4 -4
  2. data/libs/crosswalk/ext/platform/android/Rakefile +19 -1
  3. data/libs/enterprise-barcode/ext/platform/android/adds/lib/aarch64/liballbarcode.a +0 -0
  4. data/libs/enterprise-barcode/ext/platform/android/adds/lib/armeabi/liballbarcode.a +0 -0
  5. data/libs/enterprise-barcode/ext/platform/android/adds/lib/x86/liballbarcode.a +0 -0
  6. data/libs/enterprise-barcode/ext/platform/android/allbarcode.jar +0 -0
  7. data/libs/fcm-push-18/ext.yml +20 -0
  8. data/libs/fcm-push-18/ext/android/AndroidManifest.rb +10 -0
  9. data/libs/fcm-push-18/ext/android/ApplicationManifestAdds.erb +39 -0
  10. data/libs/fcm-push-18/ext/android/Rakefile +187 -0
  11. data/libs/fcm-push-18/ext/android/ext_java.files +3 -0
  12. data/libs/fcm-push-18/ext/android/ext_native.files +1 -0
  13. data/libs/fcm-push-18/ext/android/jni/src/fcmpushclient.cpp +215 -0
  14. data/libs/fcm-push-18/ext/android/jni/src/fcmpushclient.h +74 -0
  15. data/libs/fcm-push-18/ext/android/res/res/values/fireBaseValues.xml +5 -0
  16. data/libs/fcm-push-18/ext/android/src/com/rhomobile/rhodes/fcm/FCMFacade.java +164 -0
  17. data/libs/fcm-push-18/ext/android/src/com/rhomobile/rhodes/fcm/FCMIntentService.java +219 -0
  18. data/libs/fcm-push-18/ext/android/src/com/rhomobile/rhodes/fcm/FCMListener.java +88 -0
  19. data/libs/fcm-push-18/ext/build +16 -0
  20. data/libs/fcm-push-18/ext/build.bat +8 -0
  21. data/libs/fcm-push-18/ext/fcm.xml +9 -0
  22. data/libs/fcm-push-18/ext/iphone/ApplePush_Prefix.pch +7 -0
  23. data/libs/fcm-push-18/ext/iphone/Firebase.h +68 -0
  24. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseAnalytics.framework/FirebaseAnalytics +0 -0
  25. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRAnalytics+AppDelegate.h +62 -0
  26. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRAnalytics.h +115 -0
  27. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRAnalyticsConfiguration.h +1 -0
  28. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRAnalyticsSwiftNameSupport.h +13 -0
  29. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRApp.h +1 -0
  30. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRConfiguration.h +1 -0
  31. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIREventNames.h +389 -0
  32. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIROptions.h +1 -0
  33. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRParameterNames.h +485 -0
  34. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h +15 -0
  35. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h +10 -0
  36. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseAnalytics.framework/Modules/module.modulemap +10 -0
  37. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseCore.framework/FirebaseCore +0 -0
  38. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseCore.framework/Headers/FIRAnalyticsConfiguration.h +52 -0
  39. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseCore.framework/Headers/FIRApp.h +130 -0
  40. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseCore.framework/Headers/FIRConfiguration.h +78 -0
  41. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseCore.framework/Headers/FIRLoggerLevel.h +35 -0
  42. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseCore.framework/Headers/FIROptions.h +133 -0
  43. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseCore.framework/Headers/FirebaseCore.h +5 -0
  44. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseCore.framework/Modules/module.modulemap +7 -0
  45. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseCoreDiagnostics.framework/FirebaseCoreDiagnostics +0 -0
  46. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseCoreDiagnostics.framework/Modules/module.modulemap +6 -0
  47. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseInstanceID.framework/FirebaseInstanceID +0 -0
  48. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseInstanceID.framework/Headers/FIRInstanceID.h +276 -0
  49. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseInstanceID.framework/Headers/FirebaseInstanceID.h +1 -0
  50. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseInstanceID.framework/Modules/module.modulemap +7 -0
  51. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseMessaging.framework/FirebaseMessaging +0 -0
  52. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseMessaging.framework/Headers/FIRMessaging.h +508 -0
  53. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseMessaging.framework/Headers/FirebaseMessaging.h +1 -0
  54. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseMessaging.framework/Modules/module.modulemap +8 -0
  55. data/libs/fcm-push-18/ext/iphone/Frameworks/FirebaseNanoPB.framework/FirebaseNanoPB +0 -0
  56. data/libs/fcm-push-18/ext/iphone/Frameworks/GoogleToolboxForMac.framework/GoogleToolboxForMac +0 -0
  57. data/libs/fcm-push-18/ext/iphone/Frameworks/GoogleToolboxForMac.framework/Modules/module.modulemap +5 -0
  58. data/libs/fcm-push-18/ext/iphone/Frameworks/Protobuf.framework/Modules/module.modulemap +5 -0
  59. data/libs/fcm-push-18/ext/iphone/Frameworks/Protobuf.framework/Protobuf +0 -0
  60. data/libs/fcm-push-18/ext/iphone/Frameworks/nanopb.framework/Modules/module.modulemap +5 -0
  61. data/libs/fcm-push-18/ext/iphone/Frameworks/nanopb.framework/nanopb +0 -0
  62. data/libs/fcm-push-18/ext/iphone/Rakefile +81 -0
  63. data/libs/fcm-push-18/ext/iphone/fcm-push.xcodeproj/project.pbxproj +370 -0
  64. data/libs/fcm-push-18/ext/iphone/impl/PushNotificationsReceiver.h +28 -0
  65. data/libs/fcm-push-18/ext/iphone/impl/PushNotificationsReceiver.m +27 -0
  66. data/libs/fcm-push-18/ext/iphone/impl/PushNotificationsReceiver.mm +234 -0
  67. data/libs/fcm-push-18/ext/iphone/impl/applePushSetup.c +10 -0
  68. data/libs/fcm-push-18/ext/iphone/impl/applepushclient.h +69 -0
  69. data/libs/fcm-push-18/ext/iphone/impl/applepushclient.mm +164 -0
  70. data/libs/fcm-push-18/ext/iphone/impl/readme.txt +7 -0
  71. data/libs/fcm-push-18/ext/platform/iphone/impl/readme.txt +7 -0
  72. data/libs/nodejs/ext/platform/android/jxCore/jx.h +17 -1
  73. data/libs/nodejs/ext/platform/android/jxCore/libcares_arm.a +0 -0
  74. data/libs/nodejs/ext/platform/android/jxCore/libcares_ia32.a +0 -0
  75. data/libs/nodejs/ext/platform/android/jxCore/libcares_x64.a +0 -0
  76. data/libs/nodejs/ext/platform/android/jxCore/libchrome_zlib_arm.a +0 -0
  77. data/libs/nodejs/ext/platform/android/jxCore/libchrome_zlib_ia32.a +0 -0
  78. data/libs/nodejs/ext/platform/android/jxCore/libchrome_zlib_x64.a +0 -0
  79. data/libs/nodejs/ext/platform/android/jxCore/libhttp_parser_arm.a +0 -0
  80. data/libs/nodejs/ext/platform/android/jxCore/libhttp_parser_ia32.a +0 -0
  81. data/libs/nodejs/ext/platform/android/jxCore/libhttp_parser_x64.a +0 -0
  82. data/libs/nodejs/ext/platform/android/jxCore/libjx_arm.a +0 -0
  83. data/libs/nodejs/ext/platform/android/jxCore/libjx_ia32.a +0 -0
  84. data/libs/nodejs/ext/platform/android/jxCore/libjx_x64.a +0 -0
  85. data/libs/nodejs/ext/platform/android/jxCore/libopenssl_arm.a +0 -0
  86. data/libs/nodejs/ext/platform/android/jxCore/libopenssl_ia32.a +0 -0
  87. data/libs/nodejs/ext/platform/android/jxCore/libopenssl_x64.a +0 -0
  88. data/libs/nodejs/ext/platform/android/jxCore/libsqlite3_arm.a +0 -0
  89. data/libs/nodejs/ext/platform/android/jxCore/libsqlite3_ia32.a +0 -0
  90. data/libs/nodejs/ext/platform/android/jxCore/libsqlite3_x64.a +0 -0
  91. data/libs/nodejs/ext/platform/android/jxCore/libuv_arm.a +0 -0
  92. data/libs/nodejs/ext/platform/android/jxCore/libuv_ia32.a +0 -0
  93. data/libs/nodejs/ext/platform/android/jxCore/libuv_x64.a +0 -0
  94. data/libs/nodejs/ext/platform/android/jxCore/libv8_base_arm.a +0 -0
  95. data/libs/nodejs/ext/platform/android/jxCore/libv8_base_ia32.a +0 -0
  96. data/libs/nodejs/ext/platform/android/jxCore/libv8_base_x64.a +0 -0
  97. data/libs/nodejs/ext/platform/android/jxCore/libv8_nosnapshot_arm.a +0 -0
  98. data/libs/nodejs/ext/platform/android/jxCore/libv8_nosnapshot_ia32.a +0 -0
  99. data/libs/nodejs/ext/platform/android/jxCore/libv8_nosnapshot_x64.a +0 -0
  100. data/libs/nodejs/ext/platform/iphone/jxCore/jx.h +17 -1
  101. data/libs/nodejs/ext/platform/iphone/jxCore/libcares.a +0 -0
  102. data/libs/nodejs/ext/platform/iphone/jxCore/libchrome_zlib.a +0 -0
  103. data/libs/nodejs/ext/platform/iphone/jxCore/libhttp_parser.a +0 -0
  104. data/libs/nodejs/ext/platform/iphone/jxCore/libjx.a +0 -0
  105. data/libs/nodejs/ext/platform/iphone/jxCore/libmozjs.a +0 -0
  106. data/libs/nodejs/ext/platform/iphone/jxCore/libopenssl.a +0 -0
  107. data/libs/nodejs/ext/platform/iphone/jxCore/libsqlite3.a +0 -0
  108. data/libs/nodejs/ext/platform/iphone/jxCore/libuv.a +0 -0
  109. data/libs/rexml-edge/rexml/attlistdecl.rb +63 -0
  110. data/libs/rexml-edge/rexml/attribute.rb +192 -0
  111. data/libs/rexml-edge/rexml/cdata.rb +68 -0
  112. data/libs/rexml-edge/rexml/child.rb +97 -0
  113. data/libs/rexml-edge/rexml/comment.rb +80 -0
  114. data/libs/rexml-edge/rexml/doctype.rb +270 -0
  115. data/libs/rexml-edge/rexml/document.rb +291 -0
  116. data/libs/rexml-edge/rexml/dtd/attlistdecl.rb +11 -0
  117. data/libs/rexml-edge/rexml/dtd/dtd.rb +47 -0
  118. data/libs/rexml-edge/rexml/dtd/elementdecl.rb +18 -0
  119. data/libs/rexml-edge/rexml/dtd/entitydecl.rb +57 -0
  120. data/libs/rexml-edge/rexml/dtd/notationdecl.rb +40 -0
  121. data/libs/rexml-edge/rexml/element.rb +1241 -0
  122. data/libs/rexml-edge/rexml/encoding.rb +51 -0
  123. data/libs/rexml-edge/rexml/entity.rb +174 -0
  124. data/libs/rexml-edge/rexml/formatters/default.rb +112 -0
  125. data/libs/rexml-edge/rexml/formatters/pretty.rb +142 -0
  126. data/libs/rexml-edge/rexml/formatters/transitive.rb +58 -0
  127. data/libs/rexml-edge/rexml/functions.rb +418 -0
  128. data/libs/rexml-edge/rexml/instruction.rb +71 -0
  129. data/libs/rexml-edge/rexml/light/node.rb +196 -0
  130. data/libs/rexml-edge/rexml/namespace.rb +48 -0
  131. data/libs/rexml-edge/rexml/node.rb +76 -0
  132. data/libs/rexml-edge/rexml/output.rb +30 -0
  133. data/libs/rexml-edge/rexml/parent.rb +166 -0
  134. data/libs/rexml-edge/rexml/parseexception.rb +52 -0
  135. data/libs/rexml-edge/rexml/parsers/baseparser.rb +533 -0
  136. data/libs/rexml-edge/rexml/parsers/lightparser.rb +59 -0
  137. data/libs/rexml-edge/rexml/parsers/pullparser.rb +197 -0
  138. data/libs/rexml-edge/rexml/parsers/sax2parser.rb +273 -0
  139. data/libs/rexml-edge/rexml/parsers/streamparser.rb +61 -0
  140. data/libs/rexml-edge/rexml/parsers/treeparser.rb +101 -0
  141. data/libs/rexml-edge/rexml/parsers/ultralightparser.rb +57 -0
  142. data/libs/rexml-edge/rexml/parsers/xpathparser.rb +657 -0
  143. data/libs/rexml-edge/rexml/quickpath.rb +266 -0
  144. data/libs/rexml-edge/rexml/rexml.rb +32 -0
  145. data/libs/rexml-edge/rexml/sax2listener.rb +98 -0
  146. data/libs/rexml-edge/rexml/security.rb +28 -0
  147. data/libs/rexml-edge/rexml/source.rb +297 -0
  148. data/libs/rexml-edge/rexml/streamlistener.rb +93 -0
  149. data/libs/rexml-edge/rexml/syncenumerator.rb +33 -0
  150. data/libs/rexml-edge/rexml/text.rb +426 -0
  151. data/libs/rexml-edge/rexml/undefinednamespaceexception.rb +9 -0
  152. data/libs/rexml-edge/rexml/validation/relaxng.rb +539 -0
  153. data/libs/rexml-edge/rexml/validation/validation.rb +144 -0
  154. data/libs/rexml-edge/rexml/validation/validationexception.rb +10 -0
  155. data/libs/rexml-edge/rexml/xmldecl.rb +116 -0
  156. data/libs/rexml-edge/rexml/xmltokens.rb +85 -0
  157. data/libs/rexml-edge/rexml/xpath.rb +81 -0
  158. data/libs/rexml-edge/rexml/xpath_parser.rb +704 -0
  159. data/version +1 -1
  160. metadata +118 -2
@@ -0,0 +1,88 @@
1
+ /*------------------------------------------------------------------------
2
+ * (The MIT License)
3
+ *
4
+ * Copyright (c) 2008-2017 Rhomobile, Inc.
5
+ *
6
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
7
+ * of this software and associated documentation files (the "Software"), to deal
8
+ * in the Software without restriction, including without limitation the rights
9
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
+ * copies of the Software, and to permit persons to whom the Software is
11
+ * furnished to do so, subject to the following conditions:
12
+ *
13
+ * The above copyright notice and this permission notice shall be included in
14
+ * all copies or substantial portions of the Software.
15
+ *
16
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22
+ * THE SOFTWARE.
23
+ *
24
+ * http://rhomobile.com
25
+ *------------------------------------------------------------------------*/
26
+
27
+ package com.rhomobile.rhodes.fcm;
28
+
29
+ import com.rhomobile.rhodes.Push;
30
+ import com.rhomobile.rhodes.Logger;
31
+ import com.rhomobile.rhodes.PushContract;
32
+ import com.rhomobile.rhodes.util.ContextFactory;
33
+ import com.rhomobile.rhodes.fcm.FCMIntentService;
34
+ import android.content.Intent;
35
+ import com.google.firebase.messaging.FirebaseMessagingService;
36
+ import com.google.firebase.messaging.RemoteMessage;
37
+ import com.google.firebase.FirebaseApp;
38
+ import com.google.firebase.FirebaseOptions;
39
+ import com.google.firebase.messaging.FirebaseMessaging;
40
+ import com.google.firebase.iid.FirebaseInstanceId;
41
+ import com.rhomobile.rhodes.R;
42
+ import java.lang.Throwable;
43
+ import com.rhomobile.rhodes.extmanager.AbstractRhoListener;
44
+ import com.rhomobile.rhodes.RhodesActivity;
45
+ import com.rhomobile.rhodes.RhodesService;
46
+ import com.rhomobile.rhodes.extmanager.RhoExtManager;
47
+ import com.rhomobile.rhodes.extmanager.RhoExtManagerImpl;
48
+ import com.rhomobile.rhodes.extmanager.IRhoExtManager;
49
+
50
+
51
+ public class FCMListener extends AbstractRhoListener{
52
+ private static final String TAG = FCMListener.class.getSimpleName();
53
+
54
+ private static FCMListener listener = null;
55
+ private boolean applicationOnScrean = false;
56
+ public boolean applicationVisible(){
57
+ return applicationOnScrean;
58
+ }
59
+ public static FCMListener getInstance(){
60
+ if (listener == null){
61
+ listener = new FCMListener();
62
+ }
63
+ RhoExtManager.getImplementationInstance().addRhoListener(listener);
64
+ return listener;
65
+ }
66
+
67
+
68
+ public FCMListener(){
69
+ super();
70
+ Logger.W("fcm", "FCM: FCMListener created");
71
+ }
72
+
73
+ @Override
74
+ public void onResume(RhodesActivity activity) {
75
+ Logger.W("fcm", "FCM: onResume");
76
+ applicationOnScrean = true;
77
+ FCMIntentService.resume();
78
+ }
79
+ @Override
80
+ public void onPause(RhodesActivity activity)
81
+ {
82
+ applicationOnScrean = false;
83
+ }
84
+ @Override
85
+ public void onCreateApplication(IRhoExtManager extManager) {
86
+ Logger.W("fcm", "FCM: onCreateApplication");
87
+ }
88
+ }
@@ -0,0 +1,16 @@
1
+ #!/bin/sh
2
+
3
+ if [ "$RHO_PLATFORM" = "android" ]; then
4
+
5
+ cd ./android
6
+ rake --trace
7
+
8
+ elif [ "$RHO_PLATFORM" = "iphone" ]; then
9
+
10
+ cd ./iphone
11
+ rake --trace
12
+
13
+ fi
14
+
15
+
16
+
@@ -0,0 +1,8 @@
1
+
2
+ if "%RHO_PLATFORM%" == "android" (
3
+
4
+ cd android
5
+ rake --trace
6
+
7
+ )
8
+
@@ -0,0 +1,9 @@
1
+ <?xml version = "1.0"?>
2
+ <?xml-stylesheet type="text/xsl" href="pb_help.xsl"?>
3
+ <API>
4
+ <MODULE name="Fcm" parent="Rho">
5
+ <HELP_OVERVIEW>Fake FCM API</HELP_OVERVIEW>
6
+ <PLATFORM>Android</PLATFORM>
7
+ <VER_INTRODUCED>5.1.0</VER_INTRODUCED>
8
+ </MODULE>
9
+ </API>
@@ -0,0 +1,7 @@
1
+ //
2
+ // Prefix header for all source files of the 'CocoaTouchStaticLibrary' target in the 'CocoaTouchStaticLibrary' project.
3
+ //
4
+
5
+ #ifdef __OBJC__
6
+ #import <Foundation/Foundation.h>
7
+ #endif
@@ -0,0 +1,68 @@
1
+ #import <FirebaseAnalytics/FirebaseAnalytics.h>
2
+ #import <FirebaseCore/FirebaseCore.h>
3
+
4
+ #if !defined(__has_include)
5
+ #error "Firebase.h won't import anything if your compiler doesn't support __has_include. Please \
6
+ import the headers individually."
7
+ #else
8
+ #if __has_include(<FirebaseAppIndexing/FirebaseAppIndexing.h>)
9
+ #import <FirebaseAppIndexing/FirebaseAppIndexing.h>
10
+ #endif
11
+
12
+ #if __has_include(<FirebaseAuth/FirebaseAuth.h>)
13
+ #import <FirebaseAuth/FirebaseAuth.h>
14
+ #endif
15
+
16
+ #if __has_include(<FirebaseCrash/FirebaseCrash.h>)
17
+ #import <FirebaseCrash/FirebaseCrash.h>
18
+ #endif
19
+
20
+ #if __has_include(<FirebaseDatabase/FirebaseDatabase.h>)
21
+ #import <FirebaseDatabase/FirebaseDatabase.h>
22
+ #endif
23
+
24
+ #if __has_include(<FirebaseDynamicLinks/FirebaseDynamicLinks.h>)
25
+ #import <FirebaseDynamicLinks/FirebaseDynamicLinks.h>
26
+ #endif
27
+
28
+ #if __has_include(<FirebaseFirestore/FirebaseFirestore.h>)
29
+ #import <FirebaseFirestore/FirebaseFirestore.h>
30
+ #endif
31
+
32
+ #if __has_include(<FirebaseInstanceID/FirebaseInstanceID.h>)
33
+ #import <FirebaseInstanceID/FirebaseInstanceID.h>
34
+ #endif
35
+
36
+ #if __has_include(<FirebaseInvites/FirebaseInvites.h>)
37
+ #import <FirebaseInvites/FirebaseInvites.h>
38
+ #endif
39
+
40
+ #if __has_include(<FirebaseMessaging/FirebaseMessaging.h>)
41
+ #import <FirebaseMessaging/FirebaseMessaging.h>
42
+ #endif
43
+
44
+ #if __has_include(<FirebasePerformance/FirebasePerformance.h>)
45
+ #import <FirebasePerformance/FirebasePerformance.h>
46
+ #endif
47
+
48
+ #if __has_include(<FirebaseRemoteConfig/FirebaseRemoteConfig.h>)
49
+ #import <FirebaseRemoteConfig/FirebaseRemoteConfig.h>
50
+ #endif
51
+
52
+ #if __has_include(<FirebaseStorage/FirebaseStorage.h>)
53
+ #import <FirebaseStorage/FirebaseStorage.h>
54
+ #endif
55
+
56
+ #if __has_include(<GoogleMobileAds/GoogleMobileAds.h>)
57
+ #import <GoogleMobileAds/GoogleMobileAds.h>
58
+ #endif
59
+
60
+ #if __has_include(<Fabric/Fabric.h>)
61
+ #import <Fabric/Fabric.h>
62
+ #endif
63
+
64
+ #if __has_include(<Crashlytics/Crashlytics.h>)
65
+ #import <Crashlytics/Crashlytics.h>
66
+ #endif
67
+
68
+ #endif // defined(__has_include)
@@ -0,0 +1,62 @@
1
+ #import <Foundation/Foundation.h>
2
+
3
+ #import "FIRAnalytics.h"
4
+
5
+ NS_ASSUME_NONNULL_BEGIN
6
+
7
+ /**
8
+ * Provides App Delegate handlers to be used in your App Delegate.
9
+ *
10
+ * To save time integrating Firebase Analytics in an application, Firebase Analytics does not
11
+ * require delegation implementation from the AppDelegate. Instead this is automatically done by
12
+ * Firebase Analytics. Should you choose instead to delegate manually, you can turn off the App
13
+ * Delegate Proxy by adding FirebaseAppDelegateProxyEnabled into your app's Info.plist and setting
14
+ * it to NO, and adding the methods in this category to corresponding delegation handlers.
15
+ *
16
+ * To handle Universal Links, you must return YES in
17
+ * [UIApplicationDelegate application:didFinishLaunchingWithOptions:].
18
+ */
19
+ @interface FIRAnalytics (AppDelegate)
20
+
21
+ /**
22
+ * Handles events related to a URL session that are waiting to be processed.
23
+ *
24
+ * For optimal use of Firebase Analytics, call this method from the
25
+ * [UIApplicationDelegate application:handleEventsForBackgroundURLSession:completionHandler]
26
+ * method of the app delegate in your app.
27
+ *
28
+ * @param identifier The identifier of the URL session requiring attention.
29
+ * @param completionHandler The completion handler to call when you finish processing the events.
30
+ * Calling this completion handler lets the system know that your app's user interface is
31
+ * updated and a new snapshot can be taken.
32
+ */
33
+ + (void)handleEventsForBackgroundURLSession:(NSString *)identifier
34
+ completionHandler:(nullable void (^)(void))completionHandler;
35
+
36
+ /**
37
+ * Handles the event when the app is launched by a URL.
38
+ *
39
+ * Call this method from [UIApplicationDelegate application:openURL:options:] &#40;on iOS 9.0 and
40
+ * above&#41;, or [UIApplicationDelegate application:openURL:sourceApplication:annotation:] &#40;on
41
+ * iOS 8.x and below&#41; in your app.
42
+ *
43
+ * @param url The URL resource to open. This resource can be a network resource or a file.
44
+ */
45
+ + (void)handleOpenURL:(NSURL *)url;
46
+
47
+ /**
48
+ * Handles the event when the app receives data associated with user activity that includes a
49
+ * Universal Link (on iOS 9.0 and above).
50
+ *
51
+ * Call this method from [UIApplication continueUserActivity:restorationHandler:] in your app
52
+ * delegate (on iOS 9.0 and above).
53
+ *
54
+ * @param userActivity The activity object containing the data associated with the task the user
55
+ * was performing.
56
+ */
57
+ + (void)handleUserActivity:(id)userActivity;
58
+
59
+ @end
60
+
61
+ NS_ASSUME_NONNULL_END
62
+
@@ -0,0 +1,115 @@
1
+ #import <Foundation/Foundation.h>
2
+
3
+ #import "FIREventNames.h"
4
+ #import "FIRParameterNames.h"
5
+ #import "FIRUserPropertyNames.h"
6
+
7
+ NS_ASSUME_NONNULL_BEGIN
8
+
9
+ /// The top level Firebase Analytics singleton that provides methods for logging events and setting
10
+ /// user properties. See <a href="http://goo.gl/gz8SLz">the developer guides</a> for general
11
+ /// information on using Firebase Analytics in your apps.
12
+ NS_SWIFT_NAME(Analytics)
13
+ @interface FIRAnalytics : NSObject
14
+
15
+ /// Logs an app event. The event can have up to 25 parameters. Events with the same name must have
16
+ /// the same parameters. Up to 500 event names are supported. Using predefined events and/or
17
+ /// parameters is recommended for optimal reporting.
18
+ ///
19
+ /// The following event names are reserved and cannot be used:
20
+ /// <ul>
21
+ /// <li>ad_activeview</li>
22
+ /// <li>ad_click</li>
23
+ /// <li>ad_exposure</li>
24
+ /// <li>ad_impression</li>
25
+ /// <li>ad_query</li>
26
+ /// <li>adunit_exposure</li>
27
+ /// <li>app_clear_data</li>
28
+ /// <li>app_remove</li>
29
+ /// <li>app_update</li>
30
+ /// <li>error</li>
31
+ /// <li>first_open</li>
32
+ /// <li>in_app_purchase</li>
33
+ /// <li>notification_dismiss</li>
34
+ /// <li>notification_foreground</li>
35
+ /// <li>notification_open</li>
36
+ /// <li>notification_receive</li>
37
+ /// <li>os_update</li>
38
+ /// <li>screen_view</li>
39
+ /// <li>session_start</li>
40
+ /// <li>user_engagement</li>
41
+ /// </ul>
42
+ ///
43
+ /// @param name The name of the event. Should contain 1 to 40 alphanumeric characters or
44
+ /// underscores. The name must start with an alphabetic character. Some event names are
45
+ /// reserved. See FIREventNames.h for the list of reserved event names. The "firebase_",
46
+ /// "google_", and "ga_" prefixes are reserved and should not be used. Note that event names are
47
+ /// case-sensitive and that logging two events whose names differ only in case will result in
48
+ /// two distinct events.
49
+ /// @param parameters The dictionary of event parameters. Passing nil indicates that the event has
50
+ /// no parameters. Parameter names can be up to 40 characters long and must start with an
51
+ /// alphabetic character and contain only alphanumeric characters and underscores. Only NSString
52
+ /// and NSNumber (signed 64-bit integer and 64-bit floating-point number) parameter types are
53
+ /// supported. NSString parameter values can be up to 100 characters long. The "firebase_",
54
+ /// "google_", and "ga_" prefixes are reserved and should not be used for parameter names.
55
+ + (void)logEventWithName:(NSString *)name
56
+ parameters:(nullable NSDictionary<NSString *, id> *)parameters
57
+ NS_SWIFT_NAME(logEvent(_:parameters:));
58
+
59
+ /// Sets a user property to a given value. Up to 25 user property names are supported. Once set,
60
+ /// user property values persist throughout the app lifecycle and across sessions.
61
+ ///
62
+ /// The following user property names are reserved and cannot be used:
63
+ /// <ul>
64
+ /// <li>first_open_time</li>
65
+ /// <li>last_deep_link_referrer</li>
66
+ /// <li>user_id</li>
67
+ /// </ul>
68
+ ///
69
+ /// @param value The value of the user property. Values can be up to 36 characters long. Setting the
70
+ /// value to nil removes the user property.
71
+ /// @param name The name of the user property to set. Should contain 1 to 24 alphanumeric characters
72
+ /// or underscores and must start with an alphabetic character. The "firebase_", "google_", and
73
+ /// "ga_" prefixes are reserved and should not be used for user property names.
74
+ + (void)setUserPropertyString:(nullable NSString *)value forName:(NSString *)name
75
+ NS_SWIFT_NAME(setUserProperty(_:forName:));
76
+
77
+ /// Sets the user ID property. This feature must be used in accordance with
78
+ /// <a href="https://www.google.com/policies/privacy">Google's Privacy Policy</a>
79
+ ///
80
+ /// @param userID The user ID to ascribe to the user of this app on this device, which must be
81
+ /// non-empty and no more than 36 characters long. Setting userID to nil removes the user ID.
82
+ + (void)setUserID:(nullable NSString *)userID;
83
+
84
+ /// Sets the current screen name, which specifies the current visual context in your app. This helps
85
+ /// identify the areas in your app where users spend their time and how they interact with your app.
86
+ /// Must be called on the main thread.
87
+ ///
88
+ /// Note that screen reporting is enabled automatically and records the class name of the current
89
+ /// UIViewController for you without requiring you to call this method. If you implement
90
+ /// viewDidAppear in your UIViewController but do not call [super viewDidAppear:], that screen class
91
+ /// will not be automatically tracked. The class name can optionally be overridden by calling this
92
+ /// method in the viewDidAppear callback of your UIViewController and specifying the
93
+ /// screenClassOverride parameter. setScreenName:screenClass: must be called after
94
+ /// [super viewDidAppear:].
95
+ ///
96
+ /// If your app does not use a distinct UIViewController for each screen, you should call this
97
+ /// method and specify a distinct screenName each time a new screen is presented to the user.
98
+ ///
99
+ /// The screen name and screen class remain in effect until the current UIViewController changes or
100
+ /// a new call to setScreenName:screenClass: is made.
101
+ ///
102
+ /// @param screenName The name of the current screen. Should contain 1 to 100 characters. Set to nil
103
+ /// to clear the current screen name.
104
+ /// @param screenClassOverride The name of the screen class. Should contain 1 to 100 characters. By
105
+ /// default this is the class name of the current UIViewController. Set to nil to revert to the
106
+ /// default class name.
107
+ + (void)setScreenName:(nullable NSString *)screenName
108
+ screenClass:(nullable NSString *)screenClassOverride;
109
+
110
+ /// The unique ID for this instance of the application.
111
+ + (NSString *)appInstanceID;
112
+
113
+ @end
114
+
115
+ NS_ASSUME_NONNULL_END
@@ -0,0 +1 @@
1
+ #import <FirebaseCore/FIRAnalyticsConfiguration.h>
@@ -0,0 +1,13 @@
1
+ #ifndef FIR_SWIFT_NAME
2
+
3
+ #import <Foundation/Foundation.h>
4
+
5
+ // NS_SWIFT_NAME can only translate factory methods before the iOS 9.3 SDK.
6
+ // Wrap it in our own macro if it's a non-compatible SDK.
7
+ #ifdef __IPHONE_9_3
8
+ #define FIR_SWIFT_NAME(X) NS_SWIFT_NAME(X)
9
+ #else
10
+ #define FIR_SWIFT_NAME(X) // Intentionally blank.
11
+ #endif // #ifdef __IPHONE_9_3
12
+
13
+ #endif // FIR_SWIFT_NAME
@@ -0,0 +1,389 @@
1
+ /// @file FIREventNames.h
2
+ ///
3
+ /// Predefined event names.
4
+ ///
5
+ /// An Event is an important occurrence in your app that you want to measure. You can report up to
6
+ /// 500 different types of Events per app and you can associate up to 25 unique parameters with each
7
+ /// Event type. Some common events are suggested below, but you may also choose to specify custom
8
+ /// Event types that are associated with your specific app. Each event type is identified by a
9
+ /// unique name. Event names can be up to 40 characters long, may only contain alphanumeric
10
+ /// characters and underscores ("_"), and must start with an alphabetic character. The "firebase_",
11
+ /// "google_", and "ga_" prefixes are reserved and should not be used.
12
+
13
+ /// Add Payment Info event. This event signifies that a user has submitted their payment information
14
+ /// to your app.
15
+ static NSString *const kFIREventAddPaymentInfo NS_SWIFT_NAME(AnalyticsEventAddPaymentInfo) =
16
+ @"add_payment_info";
17
+
18
+ /// E-Commerce Add To Cart event. This event signifies that an item was added to a cart for
19
+ /// purchase. Add this event to a funnel with kFIREventEcommercePurchase to gauge the effectiveness
20
+ /// of your checkout process. Note: If you supply the @c kFIRParameterValue parameter, you must
21
+ /// also supply the @c kFIRParameterCurrency parameter so that revenue metrics can be computed
22
+ /// accurately. Params:
23
+ ///
24
+ /// <ul>
25
+ /// <li>@c kFIRParameterQuantity (signed 64-bit integer as NSNumber)</li>
26
+ /// <li>@c kFIRParameterItemID (NSString)</li>
27
+ /// <li>@c kFIRParameterItemName (NSString)</li>
28
+ /// <li>@c kFIRParameterItemCategory (NSString)</li>
29
+ /// <li>@c kFIRParameterItemLocationID (NSString) (optional)</li>
30
+ /// <li>@c kFIRParameterPrice (double as NSNumber) (optional)</li>
31
+ /// <li>@c kFIRParameterCurrency (NSString) (optional)</li>
32
+ /// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li>
33
+ /// <li>@c kFIRParameterOrigin (NSString) (optional)</li>
34
+ /// <li>@c kFIRParameterDestination (NSString) (optional)</li>
35
+ /// <li>@c kFIRParameterStartDate (NSString) (optional)</li>
36
+ /// <li>@c kFIRParameterEndDate (NSString) (optional)</li>
37
+ /// </ul>
38
+ static NSString *const kFIREventAddToCart NS_SWIFT_NAME(AnalyticsEventAddToCart) = @"add_to_cart";
39
+
40
+ /// E-Commerce Add To Wishlist event. This event signifies that an item was added to a wishlist.
41
+ /// Use this event to identify popular gift items in your app. Note: If you supply the
42
+ /// @c kFIRParameterValue parameter, you must also supply the @c kFIRParameterCurrency
43
+ /// parameter so that revenue metrics can be computed accurately. Params:
44
+ ///
45
+ /// <ul>
46
+ /// <li>@c kFIRParameterQuantity (signed 64-bit integer as NSNumber)</li>
47
+ /// <li>@c kFIRParameterItemID (NSString)</li>
48
+ /// <li>@c kFIRParameterItemName (NSString)</li>
49
+ /// <li>@c kFIRParameterItemCategory (NSString)</li>
50
+ /// <li>@c kFIRParameterItemLocationID (NSString) (optional)</li>
51
+ /// <li>@c kFIRParameterPrice (double as NSNumber) (optional)</li>
52
+ /// <li>@c kFIRParameterCurrency (NSString) (optional)</li>
53
+ /// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li>
54
+ /// </ul>
55
+ static NSString *const kFIREventAddToWishlist NS_SWIFT_NAME(AnalyticsEventAddToWishlist) =
56
+ @"add_to_wishlist";
57
+
58
+ /// App Open event. By logging this event when an App is moved to the foreground, developers can
59
+ /// understand how often users leave and return during the course of a Session. Although Sessions
60
+ /// are automatically reported, this event can provide further clarification around the continuous
61
+ /// engagement of app-users.
62
+ static NSString *const kFIREventAppOpen NS_SWIFT_NAME(AnalyticsEventAppOpen) = @"app_open";
63
+
64
+ /// E-Commerce Begin Checkout event. This event signifies that a user has begun the process of
65
+ /// checking out. Add this event to a funnel with your kFIREventEcommercePurchase event to gauge the
66
+ /// effectiveness of your checkout process. Note: If you supply the @c kFIRParameterValue
67
+ /// parameter, you must also supply the @c kFIRParameterCurrency parameter so that revenue
68
+ /// metrics can be computed accurately. Params:
69
+ ///
70
+ /// <ul>
71
+ /// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li>
72
+ /// <li>@c kFIRParameterCurrency (NSString) (optional)</li>
73
+ /// <li>@c kFIRParameterTransactionID (NSString) (optional)</li>
74
+ /// <li>@c kFIRParameterStartDate (NSString) (optional)</li>
75
+ /// <li>@c kFIRParameterEndDate (NSString) (optional)</li>
76
+ /// <li>@c kFIRParameterNumberOfNights (signed 64-bit integer as NSNumber) (optional) for
77
+ /// hotel bookings</li>
78
+ /// <li>@c kFIRParameterNumberOfRooms (signed 64-bit integer as NSNumber) (optional) for
79
+ /// hotel bookings</li>
80
+ /// <li>@c kFIRParameterNumberOfPassengers (signed 64-bit integer as NSNumber) (optional)
81
+ /// for travel bookings</li>
82
+ /// <li>@c kFIRParameterOrigin (NSString) (optional)</li>
83
+ /// <li>@c kFIRParameterDestination (NSString) (optional)</li>
84
+ /// <li>@c kFIRParameterTravelClass (NSString) (optional) for travel bookings</li>
85
+ /// </ul>
86
+ static NSString *const kFIREventBeginCheckout NS_SWIFT_NAME(AnalyticsEventBeginCheckout) =
87
+ @"begin_checkout";
88
+
89
+ /// Campaign Detail event. Log this event to supply the referral details of a re-engagement
90
+ /// campaign. Note: you must supply at least one of the required parameters kFIRParameterSource,
91
+ /// kFIRParameterMedium or kFIRParameterCampaign. Params:
92
+ ///
93
+ /// <ul>
94
+ /// <li>@c kFIRParameterSource (NSString)</li>
95
+ /// <li>@c kFIRParameterMedium (NSString)</li>
96
+ /// <li>@c kFIRParameterCampaign (NSString)</li>
97
+ /// <li>@c kFIRParameterTerm (NSString) (optional)</li>
98
+ /// <li>@c kFIRParameterContent (NSString) (optional)</li>
99
+ /// <li>@c kFIRParameterAdNetworkClickID (NSString) (optional)</li>
100
+ /// <li>@c kFIRParameterCP1 (NSString) (optional)</li>
101
+ /// </ul>
102
+ static NSString *const kFIREventCampaignDetails NS_SWIFT_NAME(AnalyticsEventCampaignDetails) =
103
+ @"campaign_details";
104
+
105
+ /// Checkout progress. Params:
106
+ ///
107
+ /// <ul>
108
+ /// <li>@c kFIRParameterCheckoutStep (unsigned 64-bit integer as NSNumber)</li>
109
+ /// <li>@c kFIRParameterCheckoutOption (NSString) (optional)</li>
110
+ /// </ul>
111
+ static NSString *const kFIREventCheckoutProgress NS_SWIFT_NAME(AnalyticsEventCheckoutProgress) =
112
+ @"checkout_progress";
113
+
114
+ /// Earn Virtual Currency event. This event tracks the awarding of virtual currency in your app. Log
115
+ /// this along with @c kFIREventSpendVirtualCurrency to better understand your virtual economy.
116
+ /// Params:
117
+ ///
118
+ /// <ul>
119
+ /// <li>@c kFIRParameterVirtualCurrencyName (NSString)</li>
120
+ /// <li>@c kFIRParameterValue (signed 64-bit integer or double as NSNumber)</li>
121
+ /// </ul>
122
+ static NSString *const kFIREventEarnVirtualCurrency
123
+ NS_SWIFT_NAME(AnalyticsEventEarnVirtualCurrency) = @"earn_virtual_currency";
124
+
125
+ /// E-Commerce Purchase event. This event signifies that an item was purchased by a user. Note:
126
+ /// This is different from the in-app purchase event, which is reported automatically for App
127
+ /// Store-based apps. Note: If you supply the @c kFIRParameterValue parameter, you must also
128
+ /// supply the @c kFIRParameterCurrency parameter so that revenue metrics can be computed
129
+ /// accurately. Params:
130
+ ///
131
+ /// <ul>
132
+ /// <li>@c kFIRParameterCurrency (NSString) (optional)</li>
133
+ /// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li>
134
+ /// <li>@c kFIRParameterTransactionID (NSString) (optional)</li>
135
+ /// <li>@c kFIRParameterTax (double as NSNumber) (optional)</li>
136
+ /// <li>@c kFIRParameterShipping (double as NSNumber) (optional)</li>
137
+ /// <li>@c kFIRParameterCoupon (NSString) (optional)</li>
138
+ /// <li>@c kFIRParameterLocation (NSString) (optional)</li>
139
+ /// <li>@c kFIRParameterStartDate (NSString) (optional)</li>
140
+ /// <li>@c kFIRParameterEndDate (NSString) (optional)</li>
141
+ /// <li>@c kFIRParameterNumberOfNights (signed 64-bit integer as NSNumber) (optional) for
142
+ /// hotel bookings</li>
143
+ /// <li>@c kFIRParameterNumberOfRooms (signed 64-bit integer as NSNumber) (optional) for
144
+ /// hotel bookings</li>
145
+ /// <li>@c kFIRParameterNumberOfPassengers (signed 64-bit integer as NSNumber) (optional)
146
+ /// for travel bookings</li>
147
+ /// <li>@c kFIRParameterOrigin (NSString) (optional)</li>
148
+ /// <li>@c kFIRParameterDestination (NSString) (optional)</li>
149
+ /// <li>@c kFIRParameterTravelClass (NSString) (optional) for travel bookings</li>
150
+ /// </ul>
151
+ static NSString *const kFIREventEcommercePurchase NS_SWIFT_NAME(AnalyticsEventEcommercePurchase) =
152
+ @"ecommerce_purchase";
153
+
154
+ /// Generate Lead event. Log this event when a lead has been generated in the app to understand the
155
+ /// efficacy of your install and re-engagement campaigns. Note: If you supply the
156
+ /// @c kFIRParameterValue parameter, you must also supply the @c kFIRParameterCurrency
157
+ /// parameter so that revenue metrics can be computed accurately. Params:
158
+ ///
159
+ /// <ul>
160
+ /// <li>@c kFIRParameterCurrency (NSString) (optional)</li>
161
+ /// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li>
162
+ /// </ul>
163
+ static NSString *const kFIREventGenerateLead NS_SWIFT_NAME(AnalyticsEventGenerateLead) =
164
+ @"generate_lead";
165
+
166
+ /// Join Group event. Log this event when a user joins a group such as a guild, team or family. Use
167
+ /// this event to analyze how popular certain groups or social features are in your app. Params:
168
+ ///
169
+ /// <ul>
170
+ /// <li>@c kFIRParameterGroupID (NSString)</li>
171
+ /// </ul>
172
+ static NSString *const kFIREventJoinGroup NS_SWIFT_NAME(AnalyticsEventJoinGroup) = @"join_group";
173
+
174
+ /// Level Up event. This event signifies that a player has leveled up in your gaming app. It can
175
+ /// help you gauge the level distribution of your userbase and help you identify certain levels that
176
+ /// are difficult to pass. Params:
177
+ ///
178
+ /// <ul>
179
+ /// <li>@c kFIRParameterLevel (signed 64-bit integer as NSNumber)</li>
180
+ /// <li>@c kFIRParameterCharacter (NSString) (optional)</li>
181
+ /// </ul>
182
+ static NSString *const kFIREventLevelUp NS_SWIFT_NAME(AnalyticsEventLevelUp) = @"level_up";
183
+
184
+ /// Login event. Apps with a login feature can report this event to signify that a user has logged
185
+ /// in.
186
+ static NSString *const kFIREventLogin NS_SWIFT_NAME(AnalyticsEventLogin) = @"login";
187
+
188
+ /// Post Score event. Log this event when the user posts a score in your gaming app. This event can
189
+ /// help you understand how users are actually performing in your game and it can help you correlate
190
+ /// high scores with certain audiences or behaviors. Params:
191
+ ///
192
+ /// <ul>
193
+ /// <li>@c kFIRParameterScore (signed 64-bit integer as NSNumber)</li>
194
+ /// <li>@c kFIRParameterLevel (signed 64-bit integer as NSNumber) (optional)</li>
195
+ /// <li>@c kFIRParameterCharacter (NSString) (optional)</li>
196
+ /// </ul>
197
+ static NSString *const kFIREventPostScore NS_SWIFT_NAME(AnalyticsEventPostScore) = @"post_score";
198
+
199
+ /// Present Offer event. This event signifies that the app has presented a purchase offer to a user.
200
+ /// Add this event to a funnel with the kFIREventAddToCart and kFIREventEcommercePurchase to gauge
201
+ /// your conversion process. Note: If you supply the @c kFIRParameterValue parameter, you must
202
+ /// also supply the @c kFIRParameterCurrency parameter so that revenue metrics can be computed
203
+ /// accurately. Params:
204
+ ///
205
+ /// <ul>
206
+ /// <li>@c kFIRParameterQuantity (signed 64-bit integer as NSNumber)</li>
207
+ /// <li>@c kFIRParameterItemID (NSString)</li>
208
+ /// <li>@c kFIRParameterItemName (NSString)</li>
209
+ /// <li>@c kFIRParameterItemCategory (NSString)</li>
210
+ /// <li>@c kFIRParameterItemLocationID (NSString) (optional)</li>
211
+ /// <li>@c kFIRParameterPrice (double as NSNumber) (optional)</li>
212
+ /// <li>@c kFIRParameterCurrency (NSString) (optional)</li>
213
+ /// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li>
214
+ /// </ul>
215
+ static NSString *const kFIREventPresentOffer NS_SWIFT_NAME(AnalyticsEventPresentOffer) =
216
+ @"present_offer";
217
+
218
+ /// E-Commerce Purchase Refund event. This event signifies that an item purchase was refunded.
219
+ /// Note: If you supply the @c kFIRParameterValue parameter, you must also supply the
220
+ /// @c kFIRParameterCurrency parameter so that revenue metrics can be computed accurately.
221
+ /// Params:
222
+ ///
223
+ /// <ul>
224
+ /// <li>@c kFIRParameterCurrency (NSString) (optional)</li>
225
+ /// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li>
226
+ /// <li>@c kFIRParameterTransactionID (NSString) (optional)</li>
227
+ /// </ul>
228
+ static NSString *const kFIREventPurchaseRefund NS_SWIFT_NAME(AnalyticsEventPurchaseRefund) =
229
+ @"purchase_refund";
230
+
231
+ /// Remove from cart event. Params:
232
+ ///
233
+ /// <ul>
234
+ /// <li>@c kFIRParameterQuantity (signed 64-bit integer as NSNumber)</li>
235
+ /// <li>@c kFIRParameterItemID (NSString)</li>
236
+ /// <li>@c kFIRParameterItemName (NSString)</li>
237
+ /// <li>@c kFIRParameterItemCategory (NSString)</li>
238
+ /// <li>@c kFIRParameterItemLocationID (NSString) (optional)</li>
239
+ /// <li>@c kFIRParameterPrice (double as NSNumber) (optional)</li>
240
+ /// <li>@c kFIRParameterCurrency (NSString) (optional)</li>
241
+ /// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li>
242
+ /// <li>@c kFIRParameterOrigin (NSString) (optional)</li>
243
+ /// <li>@c kFIRParameterDestination (NSString) (optional)</li>
244
+ /// <li>@c kFIRParameterStartDate (NSString) (optional)</li>
245
+ /// <li>@c kFIRParameterEndDate (NSString) (optional)</li>
246
+ /// </ul>
247
+ static NSString *const kFIREventRemoveFromCart NS_SWIFT_NAME(AnalyticsEventRemoveFromCart) =
248
+ @"remove_from_cart";
249
+
250
+ /// Search event. Apps that support search features can use this event to contextualize search
251
+ /// operations by supplying the appropriate, corresponding parameters. This event can help you
252
+ /// identify the most popular content in your app. Params:
253
+ ///
254
+ /// <ul>
255
+ /// <li>@c kFIRParameterSearchTerm (NSString)</li>
256
+ /// <li>@c kFIRParameterStartDate (NSString) (optional)</li>
257
+ /// <li>@c kFIRParameterEndDate (NSString) (optional)</li>
258
+ /// <li>@c kFIRParameterNumberOfNights (signed 64-bit integer as NSNumber) (optional) for
259
+ /// hotel bookings</li>
260
+ /// <li>@c kFIRParameterNumberOfRooms (signed 64-bit integer as NSNumber) (optional) for
261
+ /// hotel bookings</li>
262
+ /// <li>@c kFIRParameterNumberOfPassengers (signed 64-bit integer as NSNumber) (optional)
263
+ /// for travel bookings</li>
264
+ /// <li>@c kFIRParameterOrigin (NSString) (optional)</li>
265
+ /// <li>@c kFIRParameterDestination (NSString) (optional)</li>
266
+ /// <li>@c kFIRParameterTravelClass (NSString) (optional) for travel bookings</li>
267
+ /// </ul>
268
+ static NSString *const kFIREventSearch NS_SWIFT_NAME(AnalyticsEventSearch) = @"search";
269
+
270
+ /// Select Content event. This general purpose event signifies that a user has selected some content
271
+ /// of a certain type in an app. The content can be any object in your app. This event can help you
272
+ /// identify popular content and categories of content in your app. Params:
273
+ ///
274
+ /// <ul>
275
+ /// <li>@c kFIRParameterContentType (NSString)</li>
276
+ /// <li>@c kFIRParameterItemID (NSString)</li>
277
+ /// </ul>
278
+ static NSString *const kFIREventSelectContent NS_SWIFT_NAME(AnalyticsEventSelectContent) =
279
+ @"select_content";
280
+
281
+ /// Set checkout option. Params:
282
+ ///
283
+ /// <ul>
284
+ /// <li>@c kFIRParameterCheckoutStep (unsigned 64-bit integer as NSNumber)</li>
285
+ /// <li>@c kFIRParameterCheckoutOption (NSString)</li>
286
+ /// </ul>
287
+ static NSString *const kFIREventSetCheckoutOption NS_SWIFT_NAME(AnalyticsEventSetCheckoutOption) =
288
+ @"set_checkout_option";
289
+
290
+ /// Share event. Apps with social features can log the Share event to identify the most viral
291
+ /// content. Params:
292
+ ///
293
+ /// <ul>
294
+ /// <li>@c kFIRParameterContentType (NSString)</li>
295
+ /// <li>@c kFIRParameterItemID (NSString)</li>
296
+ /// </ul>
297
+ static NSString *const kFIREventShare NS_SWIFT_NAME(AnalyticsEventShare) = @"share";
298
+
299
+ /// Sign Up event. This event indicates that a user has signed up for an account in your app. The
300
+ /// parameter signifies the method by which the user signed up. Use this event to understand the
301
+ /// different behaviors between logged in and logged out users. Params:
302
+ ///
303
+ /// <ul>
304
+ /// <li>@c kFIRParameterSignUpMethod (NSString)</li>
305
+ /// </ul>
306
+ static NSString *const kFIREventSignUp NS_SWIFT_NAME(AnalyticsEventSignUp) = @"sign_up";
307
+
308
+ /// Spend Virtual Currency event. This event tracks the sale of virtual goods in your app and can
309
+ /// help you identify which virtual goods are the most popular objects of purchase. Params:
310
+ ///
311
+ /// <ul>
312
+ /// <li>@c kFIRParameterItemName (NSString)</li>
313
+ /// <li>@c kFIRParameterVirtualCurrencyName (NSString)</li>
314
+ /// <li>@c kFIRParameterValue (signed 64-bit integer or double as NSNumber)</li>
315
+ /// </ul>
316
+ static NSString *const kFIREventSpendVirtualCurrency
317
+ NS_SWIFT_NAME(AnalyticsEventSpendVirtualCurrency) = @"spend_virtual_currency";
318
+
319
+ /// Tutorial Begin event. This event signifies the start of the on-boarding process in your app. Use
320
+ /// this in a funnel with kFIREventTutorialComplete to understand how many users complete this
321
+ /// process and move on to the full app experience.
322
+ static NSString *const kFIREventTutorialBegin NS_SWIFT_NAME(AnalyticsEventTutorialBegin) =
323
+ @"tutorial_begin";
324
+
325
+ /// Tutorial End event. Use this event to signify the user's completion of your app's on-boarding
326
+ /// process. Add this to a funnel with kFIREventTutorialBegin to gauge the completion rate of your
327
+ /// on-boarding process.
328
+ static NSString *const kFIREventTutorialComplete NS_SWIFT_NAME(AnalyticsEventTutorialComplete) =
329
+ @"tutorial_complete";
330
+
331
+ /// Unlock Achievement event. Log this event when the user has unlocked an achievement in your
332
+ /// game. Since achievements generally represent the breadth of a gaming experience, this event can
333
+ /// help you understand how many users are experiencing all that your game has to offer. Params:
334
+ ///
335
+ /// <ul>
336
+ /// <li>@c kFIRParameterAchievementID (NSString)</li>
337
+ /// </ul>
338
+ static NSString *const kFIREventUnlockAchievement NS_SWIFT_NAME(AnalyticsEventUnlockAchievement) =
339
+ @"unlock_achievement";
340
+
341
+ /// View Item event. This event signifies that some content was shown to the user. This content may
342
+ /// be a product, a webpage or just a simple image or text. Use the appropriate parameters to
343
+ /// contextualize the event. Use this event to discover the most popular items viewed in your app.
344
+ /// Note: If you supply the @c kFIRParameterValue parameter, you must also supply the
345
+ /// @c kFIRParameterCurrency parameter so that revenue metrics can be computed accurately.
346
+ /// Params:
347
+ ///
348
+ /// <ul>
349
+ /// <li>@c kFIRParameterItemID (NSString)</li>
350
+ /// <li>@c kFIRParameterItemName (NSString)</li>
351
+ /// <li>@c kFIRParameterItemCategory (NSString)</li>
352
+ /// <li>@c kFIRParameterItemLocationID (NSString) (optional)</li>
353
+ /// <li>@c kFIRParameterPrice (double as NSNumber) (optional)</li>
354
+ /// <li>@c kFIRParameterQuantity (signed 64-bit integer as NSNumber) (optional)</li>
355
+ /// <li>@c kFIRParameterCurrency (NSString) (optional)</li>
356
+ /// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li>
357
+ /// <li>@c kFIRParameterStartDate (NSString) (optional)</li>
358
+ /// <li>@c kFIRParameterEndDate (NSString) (optional)</li>
359
+ /// <li>@c kFIRParameterFlightNumber (NSString) (optional) for travel bookings</li>
360
+ /// <li>@c kFIRParameterNumberOfPassengers (signed 64-bit integer as NSNumber) (optional)
361
+ /// for travel bookings</li>
362
+ /// <li>@c kFIRParameterNumberOfNights (signed 64-bit integer as NSNumber) (optional) for
363
+ /// travel bookings</li>
364
+ /// <li>@c kFIRParameterNumberOfRooms (signed 64-bit integer as NSNumber) (optional) for
365
+ /// travel bookings</li>
366
+ /// <li>@c kFIRParameterOrigin (NSString) (optional)</li>
367
+ /// <li>@c kFIRParameterDestination (NSString) (optional)</li>
368
+ /// <li>@c kFIRParameterSearchTerm (NSString) (optional) for travel bookings</li>
369
+ /// <li>@c kFIRParameterTravelClass (NSString) (optional) for travel bookings</li>
370
+ /// </ul>
371
+ static NSString *const kFIREventViewItem NS_SWIFT_NAME(AnalyticsEventViewItem) = @"view_item";
372
+
373
+ /// View Item List event. Log this event when the user has been presented with a list of items of a
374
+ /// certain category. Params:
375
+ ///
376
+ /// <ul>
377
+ /// <li>@c kFIRParameterItemCategory (NSString)</li>
378
+ /// </ul>
379
+ static NSString *const kFIREventViewItemList NS_SWIFT_NAME(AnalyticsEventViewItemList) =
380
+ @"view_item_list";
381
+
382
+ /// View Search Results event. Log this event when the user has been presented with the results of a
383
+ /// search. Params:
384
+ ///
385
+ /// <ul>
386
+ /// <li>@c kFIRParameterSearchTerm (NSString)</li>
387
+ /// </ul>
388
+ static NSString *const kFIREventViewSearchResults NS_SWIFT_NAME(AnalyticsEventViewSearchResults) =
389
+ @"view_search_results";