Skip to content

zunda-pixel/firebaseanalytics-swift

Repository files navigation

firebaseanalytics-swift

Important

This project is under development

Firebase Analytics Client for Swift.

let clientInformation: ClientInformation = .init( os: "ios", osVersion: "18.3", deviceModel: "iPhone17,3", locale: "ja-jp", localeId: 540, installMethod: "manual_install", bundleId: "com.apple.SampleApp", appVersion: "1.0", googleAppId: "1:21332412389:ios:11681asd2a3cd5d8" ) let session: Session = .init( firstInteraction: false, firstOpenTime: 1_737_550_800_666, nonPersonalizedAds: false, sessionId: 1_737_555_666, sessionNumber: 2, lifetimeEngagement: 1_175_666, sessionEngagement: 10055, userId: "user-id" ) let payload = Payload( value: 1, events: [ EventPayload( eventName: "login", parameters: [ .method: "Google", .platform: "app", ], previousTimestampMillis: UInt(Date.now.timeIntervalSince1970 * 100), timestampMillis: UInt(Date.now.timeIntervalSince1970 * 100) ), EventPayload( eventName: "_e", parameters: [ "_et": .uint(891), .platform: "auto" ], previousTimestampMillis: UInt(Date.now.timeIntervalSince1970 * 100), timestampMillis: UInt(Date.now.timeIntervalSince1970 * 100) ), ], sessionInformations: session.parameters, value4: UInt(Date.now.timeIntervalSince1970 * 100), // upload_timestamp_millis value5: UInt(Date.now.timeIntervalSince1970 * 100), // start_timestamp_millis value6: UInt(Date.now.timeIntervalSince1970 * 100), // end_timestamp_millis value7: UInt(Date.now.timeIntervalSince1970 * 100), // previous_bundle_end_timestamp_millis os: clientInformation.os, osVersion: clientInformation.osVersion, deviceModel: clientInformation.deviceModel, value11: clientInformation.locale, value12: clientInformation.localeId, installMethod: clientInformation.installMethod, bundleId: clientInformation.bundleId, appVersion: clientInformation.appVersion, value17: 110700, // gmp_version value18: 110700, // uploading_gmp_version value21: "BC75E87831231231B7A179248F24080C", // fix // app_instance_id value23: 25, // count up // bundle_sequential_index googleAppId: clientInformation.googleAppId, value26: UInt(Date.now.timeIntervalSince1970 * 100), // free // previous_bundle_start_timestamp_millis value27: "CAIIJF38-E407-4954-BC16-F693A22F9FA9", // fix // resettable_device_id value30: "d4Xw8qsfsadBoMYlsYHnot", // fix // firebase_instance_id value31: 1, // app_version_major value35: 1_727_127_969_769_945, // fix // config_version value45: 42_820_019, // fix value52: "G1--", // fix // consent_signals value64: "google_signals", // fix value71: "19911", // fix // consent_diagnostics value72: 0, // fix value77: 13 // count up ) let analytics = Analytics( httpClient: .urlSession(.shared), userAgent: "SampleApp/1 CFNetwork/3826.400.120 Darwin/24.3.0", clientInformation: clientInformation, session: session ) try await analytics.log(payload: payload)

About

Firebase Analytics Client Open Source Project for Swift

Topics

Resources

License

Stars

Watchers

Forks

Contributors 2

  •  
  •  

Languages