NowAnalyticsServiceDelegate-Protokoll – iOS

  • Freigeben Version: Zurich
  • Aktualisiert 31. Juli 2025
  • 5 Minuten Lesedauer
  • Die Now AnalyticsServiceDelegate das protokoll bietet Rückruffunktionen, die Informationen zum Start und Ende einer Anwendersitzung und zur Erkennung von Bildschirmänderungen bereitstellen.

    NowAnalyticsServiceDelegate – nowAnalyticsDidDetectScreen( _ sessionId: Zeichenfolge)

    Benachrichtigt, wenn eine Bildschirmänderung erkannt wird. Der Bildschirmname wird in der Navigationsleiste erkannt. Wenn dies nicht möglich ist, ist dies der Name der ViewController-Unterklasse.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    Bildschirmname Zeichenfolge Name des Bildschirms, um zu erkennen, ob eine Änderung vorliegt.
    Tabelle : 2. Rückgaben
    Typ Beschreibung
    Zeichenfolge Anwenderdefinierter Name, der zum Überschreiben des übergebenen Screennamens verwendet werden soll.

    Dieses Beispiel zeigt, wie eine Delegiertenklasse für definiert wird Now AnalyticsServiceDelegate .

    import NowAnalytics
    
    // Initialize the Analytics SDK
    NowAnalytics.configure(for: URL(string: "https://my.instance.service-now.com")!)
    
    // Define a delegate class for NowAnalyticsServiceDelegate
    class NowAnalyticsDelegate: NowAnalytics.NowAnalyticsServiceDelegate {
      func nowAnalyticsSessionShouldStart() -> Bool {
        // Session is about to start, return true to allow session to start
        return true
      }
    
      func nowAnalyticsSessionDidStart(_ sessionId: String) {
        // Session was started
      }
    
      func nowAnalyticsSessionShouldEnd(_ sessionId: String) -> Bool {
        // Session is about to end, return true to allow session to end
        return true
      }
    
      func nowAnalyticsSessionDidEnd(_ sessionId: String) {
        // Session was ended
      }
    
      func nowAnalyticsDidDetectScreen(_ screenName: String) -> String? {
        // Example of skipping specific screen detection
        if (screenName == "LoginViewController") {
          return nil
        }
    
        // Example of appending a prefix for every screen detected
        return "MyApp_" + screenName
      }
    }
    
    // Register delegate
    private var analyticsDelegate = NowAnalyticsDelegate()  // Keep ref of delegate
    NowAnalytics.sharedAnalyticsService.setDelegate(analyticsDelegate)

    NowAnalyticsServiceDelegate – nowAnalyticsSessionDidEnd( _ sessionId: Zeichenfolge)

    Benachrichtigt, wann Die angegebene Sitzung wurde beendet.

    Dies ist eine Rückruffunktion, die aufgerufen wird, wenn die angegebene Sitzung tatsächlich endet.

    Tabelle : 3. Parameter
    Name Typ Beschreibung
    sessionId Zeichenfolge Eindeutiger Bezeichner der zu überprüfenden Sitzung.
    Tabelle : 4. Ausgabe
    Typ Beschreibung
    Keine

    Dieses Beispiel zeigt, wie eine Delegiertenklasse für definiert wird Now AnalyticsServiceDelegate .

    import NowAnalytics
    
    // Initialize the Analytics SDK
    NowAnalytics.configure(for: URL(string: "https://my.instance.service-now.com")!)
    
    // Define a delegate class for NowAnalyticsServiceDelegate
    class NowAnalyticsDelegate: NowAnalytics.NowAnalyticsServiceDelegate {
      func nowAnalyticsSessionShouldStart() -> Bool {
        // Session is about to start, return true to allow session to start
        return true
      }
    
      func nowAnalyticsSessionDidStart(_ sessionId: String) {
        // Session was started
      }
    
      func nowAnalyticsSessionShouldEnd(_ sessionId: String) -> Bool {
        // Session is about to end, return true to allow session to end
        return true
      }
    
      func nowAnalyticsSessionDidEnd(_ sessionId: String) {
        // Session was ended
      }
    
      func nowAnalyticsDidDetectScreen(_ screenName: String) -> String? {
        // Example of skipping specific screen detection
        if (screenName == "LoginViewController") {
          return nil
        }
    
        // Example of appending a prefix for every screen detected
        return "MyApp_" + screenName
      }
    }
    
    // Register delegate
    private var analyticsDelegate = NowAnalyticsDelegate()  // Keep ref of delegate
    NowAnalytics.sharedAnalyticsService.setDelegate(analyticsDelegate)

    NowAnalyticsServiceDelegate – nowAnalyticsSessionDidStart( _ sessionId: Zeichenfolge)

    Benachrichtigt, wenn die angegebene Sitzung gestartet wurde.

    Dies ist eine Rückruffunktion, die aufgerufen wird, wenn die angegebene Sitzung tatsächlich startet.

    Tabelle : 5. Parameter
    Name Typ Beschreibung
    sessionId Zeichenfolge Eindeutiger Bezeichner der zu überprüfenden Sitzung.
    Tabelle : 6. Ausgabe
    Typ Beschreibung
    Boolean Kennzeichnung, die angibt, dass die Sitzung gestartet wird.
    Gültige Werte:
    • Wahr: Sitzung wird gestartet
    • Falsch: Sitzung wird nicht gestartet

    Dieses Beispiel zeigt, wie eine Delegiertenklasse für definiert wird Now AnalyticsServiceDelegate .

    import NowAnalytics
    
    // Initialize the Analytics SDK
    NowAnalytics.configure(for: URL(string: "https://my.instance.service-now.com")!)
    
    // Define a delegate class for NowAnalyticsServiceDelegate
    class NowAnalyticsDelegate: NowAnalytics.NowAnalyticsServiceDelegate {
      func nowAnalyticsSessionShouldStart() -> Bool {
        // Session is about to start, return true to allow session to start
        return true
      }
    
      func nowAnalyticsSessionDidStart(_ sessionId: String) {
        // Session was started
      }
    
      func nowAnalyticsSessionShouldEnd(_ sessionId: String) -> Bool {
        // Session is about to end, return true to allow session to end
        return true
      }
    
      func nowAnalyticsSessionDidEnd(_ sessionId: String) {
        // Session was ended
      }
    
      func nowAnalyticsDidDetectScreen(_ screenName: String) -> String? {
        // Example of skipping specific screen detection
        if (screenName == "LoginViewController") {
          return nil
        }
    
        // Example of appending a prefix for every screen detected
        return "MyApp_" + screenName
      }
    }
    
    // Register delegate
    private var analyticsDelegate = NowAnalyticsDelegate()  // Keep ref of delegate
    NowAnalytics.sharedAnalyticsService.setDelegate(analyticsDelegate)

    NowAnalyticsServiceDelegate – nowAnalyticsSessionShouldEnd( _ sessionId: Zeichenfolge)

    Benachrichtigt, wenn die angegebene Sitzung vorliegt Steht kurz vor dem Ende

    Dies ist eine Rückruffunktion, die aufgerufen wird, wenn die angegebene Sitzung kurz vor dem Ende steht

    Tabelle : 7. Parameter
    Name Typ Beschreibung
    sessionId Zeichenfolge Eindeutiger Bezeichner der zu überprüfenden Sitzung.
    Tabelle : 8. Ausgabe
    Typ Beschreibung
    Boolean Kennzeichnung, die angibt, dass Sitzung wird beendet .
    Gültige Werte:
    • Wahr: Sitzung wird beendet
    • Falsch: Sitzung wird nicht beendet

    Dieses Beispiel zeigt, wie eine Delegiertenklasse für definiert wird Now AnalyticsServiceDelegate .

    import NowAnalytics
    
    // Initialize the Analytics SDK
    NowAnalytics.configure(for: URL(string: "https://my.instance.service-now.com")!)
    
    // Define a delegate class for NowAnalyticsServiceDelegate
    class NowAnalyticsDelegate: NowAnalytics.NowAnalyticsServiceDelegate {
      func nowAnalyticsSessionShouldStart() -> Bool {
        // Session is about to start, return true to allow session to start
        return true
      }
    
      func nowAnalyticsSessionDidStart(_ sessionId: String) {
        // Session was started
      }
    
      func nowAnalyticsSessionShouldEnd(_ sessionId: String) -> Bool {
        // Session is about to end, return true to allow session to end
        return true
      }
    
      func nowAnalyticsSessionDidEnd(_ sessionId: String) {
        // Session was ended
      }
    
      func nowAnalyticsDidDetectScreen(_ screenName: String) -> String? {
        // Example of skipping specific screen detection
        if (screenName == "LoginViewController") {
          return nil
        }
    
        // Example of appending a prefix for every screen detected
        return "MyApp_" + screenName
      }
    }
    
    // Register delegate
    private var analyticsDelegate = NowAnalyticsDelegate()  // Keep ref of delegate
    NowAnalytics.sharedAnalyticsService.setDelegate(analyticsDelegate)

    NowAnalyticsServiceDelegate – nowAnalyticsSessionShouldStart( _ sessionId: Zeichenfolge)

    Benachrichtigt, ob die angegebene Sitzung kurz vor dem Start steht.

    Dies ist eine Rückruffunktion, die aufgerufen wird, wenn die angegebene Sitzung kurz vor dem Start steht.

    Tabelle : 9. Parameter
    Name Typ Beschreibung
    sessionId Zeichenfolge Eindeutiger Bezeichner der zu überprüfenden Sitzung.
    Tabelle : 10. Ausgabe
    Typ Beschreibung
    Keine

    Dieses Beispiel zeigt, wie eine Delegiertenklasse für definiert wird Now AnalyticsServiceDelegate .

    import NowAnalytics
    
    // Initialize the Analytics SDK
    NowAnalytics.configure(for: URL(string: "https://my.instance.service-now.com")!)
    
    // Define a delegate class for NowAnalyticsServiceDelegate
    class NowAnalyticsDelegate: NowAnalytics.NowAnalyticsServiceDelegate {
      func nowAnalyticsSessionShouldStart() -> Bool {
        // Session is about to start, return true to allow session to start
        return true
      }
    
      func nowAnalyticsSessionDidStart(_ sessionId: String) {
        // Session was started
      }
    
      func nowAnalyticsSessionShouldEnd(_ sessionId: String) -> Bool {
        // Session is about to end, return true to allow session to end
        return true
      }
    
      func nowAnalyticsSessionDidEnd(_ sessionId: String) {
        // Session was ended
      }
    
      func nowAnalyticsDidDetectScreen(_ screenName: String) -> String? {
        // Example of skipping specific screen detection
        if (screenName == "LoginViewController") {
          return nil
        }
    
        // Example of appending a prefix for every screen detected
        return "MyApp_" + screenName
      }
    }
    
    // Register delegate
    private var analyticsDelegate = NowAnalyticsDelegate()  // Keep ref of delegate
    NowAnalytics.sharedAnalyticsService.setDelegate(analyticsDelegate)