├── .gitignore ├── Example ├── Example-iOS │ ├── Example.xcodeproj │ │ ├── project.pbxproj │ │ ├── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata │ │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcshareddata │ │ │ └── xcschemes │ │ │ ├── SensorsData.xcscheme │ │ │ └── SensorsDataSwift.xcscheme │ ├── Example.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ ├── Podfile │ ├── Podfile.lock │ ├── SensorsData │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── AutoTrackViewController.h │ │ ├── AutoTrackViewController.m │ │ ├── Base.lproj │ │ │ ├── LaunchScreen.xib │ │ │ └── Main.storyboard │ │ ├── DemoController.h │ │ ├── DemoController.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Info.plist │ │ ├── JSCallOC.html │ │ ├── JSCallOCViewController.h │ │ ├── JSCallOCViewController.m │ │ ├── SensorsData.entitlements │ │ ├── TestCollectionViewController.h │ │ ├── TestCollectionViewController.m │ │ ├── TestTableViewController.h │ │ ├── TestTableViewController.m │ │ ├── TestViewController.h │ │ ├── TestViewController.m │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── ic_test.png │ │ ├── main.m │ │ └── test2.html │ └── SensorsDataSwift │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ ├── LaunchImage-2.launchimage │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ │ ├── Base.lproj │ │ ├── LaunchScreen.storyboard │ │ └── Main.storyboard │ │ ├── Info.plist │ │ └── ViewController.swift ├── Example-macOS │ ├── Example-macOS │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── Contents.json │ │ ├── Base.lproj │ │ │ └── Main.storyboard │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── WebViewController.h │ │ ├── WebViewController.m │ │ ├── example_macOS.entitlements │ │ └── main.m │ ├── Podfile │ ├── Podfile.lock │ ├── example-macOS.xcodeproj │ │ ├── project.pbxproj │ │ ├── project.xcworkspace │ │ │ └── contents.xcworkspacedata │ │ └── xcshareddata │ │ │ └── xcschemes │ │ │ └── example-macOS.xcscheme │ └── example-macOS.xcworkspace │ │ └── contents.xcworkspacedata ├── Example-tvOS │ ├── Podfile │ ├── Podfile.lock │ ├── example-tvOS.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ └── contents.xcworkspacedata │ ├── example-tvOS.xcworkspace │ │ └── contents.xcworkspacedata │ └── example-tvOS │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Assets.xcassets │ │ ├── AccentColor.colorset │ │ │ └── Contents.json │ │ ├── App Icon & Top Shelf Image.brandassets │ │ │ ├── App Icon - App Store.imagestack │ │ │ │ ├── Back.imagestacklayer │ │ │ │ │ ├── Content.imageset │ │ │ │ │ │ └── Contents.json │ │ │ │ │ └── Contents.json │ │ │ │ ├── Contents.json │ │ │ │ ├── Front.imagestacklayer │ │ │ │ │ ├── Content.imageset │ │ │ │ │ │ └── Contents.json │ │ │ │ │ └── Contents.json │ │ │ │ └── Middle.imagestacklayer │ │ │ │ │ ├── Content.imageset │ │ │ │ │ └── Contents.json │ │ │ │ │ └── Contents.json │ │ │ ├── App Icon.imagestack │ │ │ │ ├── Back.imagestacklayer │ │ │ │ │ ├── Content.imageset │ │ │ │ │ │ └── Contents.json │ │ │ │ │ └── Contents.json │ │ │ │ ├── Contents.json │ │ │ │ ├── Front.imagestacklayer │ │ │ │ │ ├── Content.imageset │ │ │ │ │ │ └── Contents.json │ │ │ │ │ └── Contents.json │ │ │ │ └── Middle.imagestacklayer │ │ │ │ │ ├── Content.imageset │ │ │ │ │ └── Contents.json │ │ │ │ │ └── Contents.json │ │ │ ├── Contents.json │ │ │ ├── Top Shelf Image Wide.imageset │ │ │ │ └── Contents.json │ │ │ └── Top Shelf Image.imageset │ │ │ │ └── Contents.json │ │ └── Contents.json │ │ ├── Base.lproj │ │ ├── LaunchScreen.storyboard │ │ └── Main.storyboard │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ └── main.m └── Example-watchOS │ ├── Example-watchOS Watch App │ ├── Assets.xcassets │ │ ├── AccentColor.colorset │ │ │ └── Contents.json │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── Contents.json │ ├── ContentView.swift │ ├── Preview Content │ │ └── Preview Assets.xcassets │ │ │ └── Contents.json │ └── example_watchOSApp.swift │ ├── Example-watchOS.xcodeproj │ ├── project.pbxproj │ └── project.xcworkspace │ │ └── contents.xcworkspacedata │ ├── Example-watchOS.xcworkspace │ └── contents.xcworkspacedata │ ├── Example-watchOS │ ├── Assets.xcassets │ │ ├── AccentColor.colorset │ │ │ └── Contents.json │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── Contents.json │ ├── ContentView.swift │ ├── Preview Content │ │ └── Preview Assets.xcassets │ │ │ └── Contents.json │ └── example_watchOSApp.swift │ ├── Podfile │ └── Podfile.lock ├── LICENSE ├── README.md ├── SensorsAnalyticsSDK.podspec ├── SensorsAnalyticsSDK ├── Resources │ ├── Base │ │ └── PrivacyInfo.xcprivacy │ ├── Core │ │ └── PrivacyInfo.xcprivacy │ ├── EnglishResources │ │ └── EnglishResources.txt │ └── Exposure │ │ └── Exposure.txt └── Source │ ├── Base │ └── SensorsAnalyticsSDK.xcframework │ │ ├── Info.plist │ │ ├── ios-arm64 │ │ └── SensorsAnalyticsSDK.framework │ │ │ ├── Headers │ │ │ ├── SAAESStorePlugin.h │ │ │ ├── SABaseStoreManager.h │ │ │ ├── SAConfigOptions.h │ │ │ ├── SAConstants.h │ │ │ ├── SAModuleProtocol.h │ │ │ ├── SAPropertyPlugin.h │ │ │ ├── SASecurityPolicy.h │ │ │ ├── SAStorePlugin.h │ │ │ ├── SensorsAnalyticsExtension.h │ │ │ ├── SensorsAnalyticsSDK+JavaScriptBridge.h │ │ │ ├── SensorsAnalyticsSDK+Public.h │ │ │ ├── SensorsAnalyticsSDK+SAAppExtension.h │ │ │ └── SensorsAnalyticsSDK.h │ │ │ ├── Info.plist │ │ │ ├── Modules │ │ │ └── module.modulemap │ │ │ ├── SensorsAnalyticsSDK │ │ │ └── _CodeSignature │ │ │ └── CodeResources │ │ ├── ios-arm64_x86_64-maccatalyst │ │ └── SensorsAnalyticsSDK.framework │ │ │ ├── Headers │ │ │ ├── Modules │ │ │ ├── Resources │ │ │ ├── SensorsAnalyticsSDK │ │ │ └── Versions │ │ │ ├── A │ │ │ ├── Headers │ │ │ │ ├── SAAESStorePlugin.h │ │ │ │ ├── SABaseStoreManager.h │ │ │ │ ├── SAConfigOptions.h │ │ │ │ ├── SAConstants.h │ │ │ │ ├── SAModuleProtocol.h │ │ │ │ ├── SAPropertyPlugin.h │ │ │ │ ├── SASecurityPolicy.h │ │ │ │ ├── SAStorePlugin.h │ │ │ │ ├── SensorsAnalyticsExtension.h │ │ │ │ ├── SensorsAnalyticsSDK+JavaScriptBridge.h │ │ │ │ ├── SensorsAnalyticsSDK+Public.h │ │ │ │ ├── SensorsAnalyticsSDK+SAAppExtension.h │ │ │ │ └── SensorsAnalyticsSDK.h │ │ │ ├── Modules │ │ │ │ └── module.modulemap │ │ │ ├── Resources │ │ │ │ └── Info.plist │ │ │ ├── SensorsAnalyticsSDK │ │ │ └── _CodeSignature │ │ │ │ └── CodeResources │ │ │ └── Current │ │ ├── ios-arm64_x86_64-simulator │ │ └── SensorsAnalyticsSDK.framework │ │ │ ├── Headers │ │ │ ├── SAAESStorePlugin.h │ │ │ ├── SABaseStoreManager.h │ │ │ ├── SAConfigOptions.h │ │ │ ├── SAConstants.h │ │ │ ├── SAModuleProtocol.h │ │ │ ├── SAPropertyPlugin.h │ │ │ ├── SASecurityPolicy.h │ │ │ ├── SAStorePlugin.h │ │ │ ├── SensorsAnalyticsExtension.h │ │ │ ├── SensorsAnalyticsSDK+JavaScriptBridge.h │ │ │ ├── SensorsAnalyticsSDK+Public.h │ │ │ ├── SensorsAnalyticsSDK+SAAppExtension.h │ │ │ └── SensorsAnalyticsSDK.h │ │ │ ├── Info.plist │ │ │ ├── Modules │ │ │ └── module.modulemap │ │ │ ├── SensorsAnalyticsSDK │ │ │ └── _CodeSignature │ │ │ └── CodeResources │ │ ├── macos-arm64_x86_64 │ │ └── SensorsAnalyticsSDK.framework │ │ │ ├── Headers │ │ │ ├── Modules │ │ │ ├── Resources │ │ │ ├── SensorsAnalyticsSDK │ │ │ └── Versions │ │ │ ├── A │ │ │ ├── Headers │ │ │ │ ├── SAAESStorePlugin.h │ │ │ │ ├── SABaseStoreManager.h │ │ │ │ ├── SAConfigOptions.h │ │ │ │ ├── SAConstants.h │ │ │ │ ├── SAModuleProtocol.h │ │ │ │ ├── SAPropertyPlugin.h │ │ │ │ ├── SASecurityPolicy.h │ │ │ │ ├── SAStorePlugin.h │ │ │ │ ├── SensorsAnalyticsExtension.h │ │ │ │ ├── SensorsAnalyticsSDK+JavaScriptBridge.h │ │ │ │ ├── SensorsAnalyticsSDK+Public.h │ │ │ │ ├── SensorsAnalyticsSDK+SAAppExtension.h │ │ │ │ └── SensorsAnalyticsSDK.h │ │ │ ├── Modules │ │ │ │ └── module.modulemap │ │ │ ├── Resources │ │ │ │ └── Info.plist │ │ │ ├── SensorsAnalyticsSDK │ │ │ └── _CodeSignature │ │ │ │ └── CodeResources │ │ │ └── Current │ │ ├── tvos-arm64 │ │ └── SensorsAnalyticsSDK.framework │ │ │ ├── Headers │ │ │ ├── SAAESStorePlugin.h │ │ │ ├── SABaseStoreManager.h │ │ │ ├── SAConfigOptions.h │ │ │ ├── SAConstants.h │ │ │ ├── SAModuleProtocol.h │ │ │ ├── SAPropertyPlugin.h │ │ │ ├── SASecurityPolicy.h │ │ │ ├── SAStorePlugin.h │ │ │ ├── SensorsAnalyticsExtension.h │ │ │ ├── SensorsAnalyticsSDK+JavaScriptBridge.h │ │ │ ├── SensorsAnalyticsSDK+Public.h │ │ │ ├── SensorsAnalyticsSDK+SAAppExtension.h │ │ │ └── SensorsAnalyticsSDK.h │ │ │ ├── Info.plist │ │ │ ├── Modules │ │ │ └── module.modulemap │ │ │ ├── SensorsAnalyticsSDK │ │ │ └── _CodeSignature │ │ │ └── CodeResources │ │ ├── tvos-arm64_x86_64-simulator │ │ └── SensorsAnalyticsSDK.framework │ │ │ ├── Headers │ │ │ ├── SAAESStorePlugin.h │ │ │ ├── SABaseStoreManager.h │ │ │ ├── SAConfigOptions.h │ │ │ ├── SAConstants.h │ │ │ ├── SAModuleProtocol.h │ │ │ ├── SAPropertyPlugin.h │ │ │ ├── SASecurityPolicy.h │ │ │ ├── SAStorePlugin.h │ │ │ ├── SensorsAnalyticsExtension.h │ │ │ ├── SensorsAnalyticsSDK+JavaScriptBridge.h │ │ │ ├── SensorsAnalyticsSDK+Public.h │ │ │ ├── SensorsAnalyticsSDK+SAAppExtension.h │ │ │ └── SensorsAnalyticsSDK.h │ │ │ ├── Info.plist │ │ │ ├── Modules │ │ │ └── module.modulemap │ │ │ ├── SensorsAnalyticsSDK │ │ │ └── _CodeSignature │ │ │ └── CodeResources │ │ ├── watchos-arm64_arm64_32_armv7k │ │ └── SensorsAnalyticsSDK.framework │ │ │ ├── Headers │ │ │ ├── SAAESStorePlugin.h │ │ │ ├── SABaseStoreManager.h │ │ │ ├── SAConfigOptions.h │ │ │ ├── SAConstants.h │ │ │ ├── SAModuleProtocol.h │ │ │ ├── SAPropertyPlugin.h │ │ │ ├── SASecurityPolicy.h │ │ │ ├── SAStorePlugin.h │ │ │ ├── SensorsAnalyticsExtension.h │ │ │ ├── SensorsAnalyticsSDK+JavaScriptBridge.h │ │ │ ├── SensorsAnalyticsSDK+Public.h │ │ │ ├── SensorsAnalyticsSDK+SAAppExtension.h │ │ │ └── SensorsAnalyticsSDK.h │ │ │ ├── Info.plist │ │ │ ├── Modules │ │ │ └── module.modulemap │ │ │ ├── SensorsAnalyticsSDK │ │ │ └── _CodeSignature │ │ │ └── CodeResources │ │ └── watchos-arm64_x86_64-simulator │ │ └── SensorsAnalyticsSDK.framework │ │ ├── Headers │ │ ├── SAAESStorePlugin.h │ │ ├── SABaseStoreManager.h │ │ ├── SAConfigOptions.h │ │ ├── SAConstants.h │ │ ├── SAModuleProtocol.h │ │ ├── SAPropertyPlugin.h │ │ ├── SASecurityPolicy.h │ │ ├── SAStorePlugin.h │ │ ├── SensorsAnalyticsExtension.h │ │ ├── SensorsAnalyticsSDK+JavaScriptBridge.h │ │ ├── SensorsAnalyticsSDK+Public.h │ │ ├── SensorsAnalyticsSDK+SAAppExtension.h │ │ └── SensorsAnalyticsSDK.h │ │ ├── Info.plist │ │ ├── Modules │ │ └── module.modulemap │ │ ├── SensorsAnalyticsSDK │ │ └── _CodeSignature │ │ └── CodeResources │ └── Core │ └── SensorsAnalyticsSDK.xcframework │ ├── Info.plist │ ├── ios-arm64 │ └── SensorsAnalyticsSDK.framework │ │ ├── Headers │ │ ├── SAAESStorePlugin.h │ │ ├── SAAdvertisingConfig.h │ │ ├── SABaseStoreManager.h │ │ ├── SAConfigOptions+AppPush.h │ │ ├── SAConfigOptions+Encrypt.h │ │ ├── SAConfigOptions+Exception.h │ │ ├── SAConfigOptions+Exposure.h │ │ ├── SAConfigOptions+RemoteConfig.h │ │ ├── SAConfigOptions.h │ │ ├── SAConstants.h │ │ ├── SAEncryptProtocol.h │ │ ├── SAExposureConfig.h │ │ ├── SAExposureData.h │ │ ├── SAExposureListener.h │ │ ├── SAModuleProtocol.h │ │ ├── SAPropertyPlugin.h │ │ ├── SASecretKey.h │ │ ├── SASecurityPolicy.h │ │ ├── SASlinkCreator.h │ │ ├── SAStorePlugin.h │ │ ├── SensorsAnalyticsExtension.h │ │ ├── SensorsAnalyticsSDK+DebugMode.h │ │ ├── SensorsAnalyticsSDK+DeepLink.h │ │ ├── SensorsAnalyticsSDK+Exposure.h │ │ ├── SensorsAnalyticsSDK+JavaScriptBridge.h │ │ ├── SensorsAnalyticsSDK+Public.h │ │ ├── SensorsAnalyticsSDK+SAAppExtension.h │ │ ├── SensorsAnalyticsSDK+SAAutoTrack.h │ │ ├── SensorsAnalyticsSDK+SAChannelMatch.h │ │ ├── SensorsAnalyticsSDK+Visualized.h │ │ ├── SensorsAnalyticsSDK.h │ │ ├── UIView+ExposureIdentifier.h │ │ └── UIView+SensorsAnalytics.h │ │ ├── Info.plist │ │ ├── Modules │ │ └── module.modulemap │ │ ├── SensorsAnalyticsSDK │ │ └── _CodeSignature │ │ └── CodeResources │ └── ios-arm64_x86_64-simulator │ └── SensorsAnalyticsSDK.framework │ ├── Headers │ ├── SAAESStorePlugin.h │ ├── SAAdvertisingConfig.h │ ├── SABaseStoreManager.h │ ├── SAConfigOptions+AppPush.h │ ├── SAConfigOptions+Encrypt.h │ ├── SAConfigOptions+Exception.h │ ├── SAConfigOptions+Exposure.h │ ├── SAConfigOptions+RemoteConfig.h │ ├── SAConfigOptions.h │ ├── SAConstants.h │ ├── SAEncryptProtocol.h │ ├── SAExposureConfig.h │ ├── SAExposureData.h │ ├── SAExposureListener.h │ ├── SAModuleProtocol.h │ ├── SAPropertyPlugin.h │ ├── SASecretKey.h │ ├── SASecurityPolicy.h │ ├── SASlinkCreator.h │ ├── SAStorePlugin.h │ ├── SensorsAnalyticsExtension.h │ ├── SensorsAnalyticsSDK+DebugMode.h │ ├── SensorsAnalyticsSDK+DeepLink.h │ ├── SensorsAnalyticsSDK+Exposure.h │ ├── SensorsAnalyticsSDK+JavaScriptBridge.h │ ├── SensorsAnalyticsSDK+Public.h │ ├── SensorsAnalyticsSDK+SAAppExtension.h │ ├── SensorsAnalyticsSDK+SAAutoTrack.h │ ├── SensorsAnalyticsSDK+SAChannelMatch.h │ ├── SensorsAnalyticsSDK+Visualized.h │ ├── SensorsAnalyticsSDK.h │ ├── UIView+ExposureIdentifier.h │ └── UIView+SensorsAnalytics.h │ ├── Info.plist │ ├── Modules │ └── module.modulemap │ ├── SensorsAnalyticsSDK │ └── _CodeSignature │ └── CodeResources ├── SensorsAnalytics_DeviceOrientation.podspec ├── SensorsAnalytics_DeviceOrientation ├── Resources │ └── PrivacyInfo.xcprivacy └── Source │ └── SensorsAnalytics_DeviceOrientation.xcframework │ ├── Info.plist │ ├── ios-arm64 │ └── SensorsAnalytics_DeviceOrientation.framework │ │ ├── Headers │ │ ├── SensorsAnalyticsSDK+DeviceOrientation.h │ │ ├── SensorsAnalytics_DeviceOrientation-umbrella.h │ │ └── SensorsAnalytics_DeviceOrientation.h │ │ ├── Info.plist │ │ ├── Modules │ │ └── module.modulemap │ │ └── SensorsAnalytics_DeviceOrientation │ └── ios-arm64_x86_64-simulator │ └── SensorsAnalytics_DeviceOrientation.framework │ ├── Headers │ ├── SensorsAnalyticsSDK+DeviceOrientation.h │ ├── SensorsAnalytics_DeviceOrientation-umbrella.h │ └── SensorsAnalytics_DeviceOrientation.h │ ├── Info.plist │ ├── Modules │ └── module.modulemap │ ├── SensorsAnalytics_DeviceOrientation │ └── _CodeSignature │ └── CodeResources ├── SensorsAnalytics_Location.podspec └── SensorsAnalytics_Location ├── Resources └── PrivacyInfo.xcprivacy └── Source └── SensorsAnalytics_Location.xcframework ├── Info.plist ├── ios-arm64 └── SensorsAnalytics_Location.framework │ ├── Headers │ ├── SensorsAnalyticsSDK+Location.h │ ├── SensorsAnalytics_Location-umbrella.h │ └── SensorsAnalytics_Location.h │ ├── Info.plist │ ├── Modules │ └── module.modulemap │ └── SensorsAnalytics_Location └── ios-arm64_x86_64-simulator └── SensorsAnalytics_Location.framework ├── Headers ├── SensorsAnalyticsSDK+Location.h ├── SensorsAnalytics_Location-umbrella.h └── SensorsAnalytics_Location.h ├── Info.plist ├── Modules └── module.modulemap ├── SensorsAnalytics_Location └── _CodeSignature └── CodeResources /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | git.properties 3 | 4 | # Xcode 5 | build/* 6 | *.pbxuser 7 | !default.pbxuser 8 | *.mode1v3 9 | !default.mode1v3 10 | *.mode2v3 11 | !default.mode2v3 12 | *.perspectivev3 13 | !default.perspectivev3 14 | !default.xcworkspace 15 | xcuserdata 16 | profile 17 | *.moved-aside 18 | *.cer 19 | *.p12 20 | *.mobileprovision 21 | 22 | ## Other 23 | *.moved-aside 24 | *.xccheckout 25 | *.xcscmblueprint 26 | 27 | ## Obj-C/Swift specific 28 | *.hmap 29 | *.ipa 30 | *.dSYM.zip 31 | *.dSYM 32 | 33 | # AppCode 34 | .idea 35 | 36 | # CocoaPods 37 | # 38 | # We recommend against adding the Pods directory to your .gitignore. However 39 | # you should judge for yourself, the pros and cons are mentioned at: 40 | # https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control 41 | # 42 | # Pods/ 43 | 44 | # Carthage 45 | # 46 | # Add this line if you want to avoid checking in source code from Carthage dependencies. 47 | Carthage/Checkouts 48 | Carthage/Build 49 | 50 | # fastlane 51 | # 52 | # It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the 53 | # screenshots whenever they are needed. 54 | # For more information about the recommended setup visit: 55 | # https://docs.fastlane.tools/best-practices/source-control/#source-control 56 | 57 | fastlane/report.xml 58 | fastlane/Preview.html 59 | fastlane/screenshots 60 | fastlane/test_output 61 | fastlane/ReleaseNote.md 62 | fastlane/README.md 63 | 64 | # Code Injection 65 | # 66 | # After new code Injection tools there's a generated folder /iOSInjectionProject 67 | # https://github.com/johnno1962/injectionforxcode 68 | 69 | iOSInjectionProject/ -------------------------------------------------------------------------------- /Example/Example-iOS/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Example/Example-iOS/Example.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Example/Example-iOS/Example.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Example/Example-iOS/Example.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Example/Example-iOS/Podfile: -------------------------------------------------------------------------------- 1 | # Uncomment the next line to define a global platform for your project 2 | platform :ios, '9.0' 3 | 4 | target 'SensorsData' do 5 | # Comment the next line if you don't want to use dynamic frameworks 6 | use_frameworks! 7 | 8 | # Pods for SensorsData 9 | # , :subspecs => ['Exposure', 'Base', 'EnglishResources'] 10 | 11 | pod 'SensorsAnalyticsSDK', :path=>'../../SensorsAnalyticsSDK.podspec' 12 | pod 'SensorsAnalytics_Location', :path=>'../../SensorsAnalytics_Location.podspec' 13 | pod 'SensorsAnalytics_DeviceOrientation',:path=>'../../SensorsAnalytics_DeviceOrientation.podspec' 14 | 15 | end 16 | 17 | target 'SensorsDataSwift' do 18 | # Comment the next line if you don't want to use dynamic frameworks 19 | use_frameworks! 20 | 21 | # Pods for SensorsDataSwift 22 | 23 | pod 'SensorsAnalyticsSDK', :path=>'../../SensorsAnalyticsSDK.podspec' 24 | 25 | end 26 | -------------------------------------------------------------------------------- /Example/Example-iOS/Podfile.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - SensorsAnalytics_DeviceOrientation (5.0.0): 3 | - SensorsAnalytics_DeviceOrientation/Core (= 5.0.0) 4 | - SensorsAnalyticsSDK (>= 5.0.0) 5 | - SensorsAnalytics_DeviceOrientation/Core (5.0.0): 6 | - SensorsAnalyticsSDK (>= 5.0.0) 7 | - SensorsAnalytics_Location (5.0.0): 8 | - SensorsAnalytics_Location/Core (= 5.0.0) 9 | - SensorsAnalyticsSDK (>= 5.0.0) 10 | - SensorsAnalytics_Location/Core (5.0.0): 11 | - SensorsAnalyticsSDK (>= 5.0.0) 12 | - SensorsAnalyticsSDK (5.0.0): 13 | - SensorsAnalyticsSDK/Core (= 5.0.0) 14 | - SensorsAnalyticsSDK/Core (5.0.0) 15 | 16 | DEPENDENCIES: 17 | - SensorsAnalytics_DeviceOrientation (from `../../SensorsAnalytics_DeviceOrientation.podspec`) 18 | - SensorsAnalytics_Location (from `../../SensorsAnalytics_Location.podspec`) 19 | - SensorsAnalyticsSDK (from `../../SensorsAnalyticsSDK.podspec`) 20 | 21 | EXTERNAL SOURCES: 22 | SensorsAnalytics_DeviceOrientation: 23 | :path: "../../SensorsAnalytics_DeviceOrientation.podspec" 24 | SensorsAnalytics_Location: 25 | :path: "../../SensorsAnalytics_Location.podspec" 26 | SensorsAnalyticsSDK: 27 | :path: "../../SensorsAnalyticsSDK.podspec" 28 | 29 | SPEC CHECKSUMS: 30 | SensorsAnalytics_DeviceOrientation: 7405364334bb0951d060c2838b935a97bc8a8392 31 | SensorsAnalytics_Location: c87aeffe070822cc829a1d6ee852b999046c0783 32 | SensorsAnalyticsSDK: 67bc4018e2594e1b875133750c136002459d0c95 33 | 34 | PODFILE CHECKSUM: 66b70a9f97e5ac6f96c4685504f364daac209931 35 | 36 | COCOAPODS: 1.16.2 37 | -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsData/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // SensorsData 4 | // 5 | // Created by 曹犟 on 15/7/4. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | // Licensed under the Apache License, Version 2.0 (the "License"); 9 | // you may not use this file except in compliance with the License. 10 | // You may obtain a copy of the License at 11 | // 12 | // http://www.apache.org/licenses/LICENSE-2.0 13 | // 14 | // Unless required by applicable law or agreed to in writing, software 15 | // distributed under the License is distributed on an "AS IS" BASIS, 16 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | // See the License for the specific language governing permissions and 18 | // limitations under the License. 19 | // 20 | 21 | #import 22 | 23 | @interface AppDelegate : UIResponder 24 | 25 | @property (strong, nonatomic) UIWindow *window; 26 | 27 | @property (strong, nonatomic) UINavigationController *navController; 28 | 29 | @end 30 | 31 | -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsData/AutoTrackViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // AutoTrackViewController.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 王灼洲 on 2017/4/27. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | // Licensed under the Apache License, Version 2.0 (the "License"); 9 | // you may not use this file except in compliance with the License. 10 | // You may obtain a copy of the License at 11 | // 12 | // http://www.apache.org/licenses/LICENSE-2.0 13 | // 14 | // Unless required by applicable law or agreed to in writing, software 15 | // distributed under the License is distributed on an "AS IS" BASIS, 16 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | // See the License for the specific language governing permissions and 18 | // limitations under the License. 19 | // 20 | 21 | #import 22 | 23 | @interface AutoTrackViewController : UIViewController 24 | 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsData/DemoController.h: -------------------------------------------------------------------------------- 1 | // 2 | // DemoController.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by ZouYuhan on 1/19/16. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | // Licensed under the Apache License, Version 2.0 (the "License"); 9 | // you may not use this file except in compliance with the License. 10 | // You may obtain a copy of the License at 11 | // 12 | // http://www.apache.org/licenses/LICENSE-2.0 13 | // 14 | // Unless required by applicable law or agreed to in writing, software 15 | // distributed under the License is distributed on an "AS IS" BASIS, 16 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | // See the License for the specific language governing permissions and 18 | // limitations under the License. 19 | // 20 | 21 | #ifndef DemoController_h 22 | #define DemoController_h 23 | 24 | #import 25 | #import 26 | 27 | @interface DemoController : UITableViewController 28 | 29 | @end 30 | 31 | #endif /* DemoController_h */ 32 | -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsData/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "20x20", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "20x20", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "29x29", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "29x29", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "40x40", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "40x40", 31 | "scale" : "3x" 32 | }, 33 | { 34 | "idiom" : "iphone", 35 | "size" : "60x60", 36 | "scale" : "2x" 37 | }, 38 | { 39 | "idiom" : "iphone", 40 | "size" : "60x60", 41 | "scale" : "3x" 42 | }, 43 | { 44 | "idiom" : "ipad", 45 | "size" : "20x20", 46 | "scale" : "1x" 47 | }, 48 | { 49 | "idiom" : "ipad", 50 | "size" : "20x20", 51 | "scale" : "2x" 52 | }, 53 | { 54 | "idiom" : "ipad", 55 | "size" : "29x29", 56 | "scale" : "1x" 57 | }, 58 | { 59 | "idiom" : "ipad", 60 | "size" : "29x29", 61 | "scale" : "2x" 62 | }, 63 | { 64 | "idiom" : "ipad", 65 | "size" : "40x40", 66 | "scale" : "1x" 67 | }, 68 | { 69 | "idiom" : "ipad", 70 | "size" : "40x40", 71 | "scale" : "2x" 72 | }, 73 | { 74 | "idiom" : "ipad", 75 | "size" : "76x76", 76 | "scale" : "1x" 77 | }, 78 | { 79 | "idiom" : "ipad", 80 | "size" : "76x76", 81 | "scale" : "2x" 82 | }, 83 | { 84 | "idiom" : "ipad", 85 | "size" : "83.5x83.5", 86 | "scale" : "2x" 87 | }, 88 | { 89 | "idiom" : "ios-marketing", 90 | "size" : "1024x1024", 91 | "scale" : "1x" 92 | } 93 | ], 94 | "info" : { 95 | "version" : 1, 96 | "author" : "xcode" 97 | } 98 | } 99 | -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsData/Images.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsData/JSCallOC.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | js test 7 | 8 | 9 | 10 | 11 |

12 | 13 |

14 | 15 |

16 | 17 | 39 |
40 |
41 | 42 | 打通 43 | 44 | 45 | -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsData/JSCallOCViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // JSCallOCViewController.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 王灼洲 on 16/9/6. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | // Licensed under the Apache License, Version 2.0 (the "License"); 9 | // you may not use this file except in compliance with the License. 10 | // You may obtain a copy of the License at 11 | // 12 | // http://www.apache.org/licenses/LICENSE-2.0 13 | // 14 | // Unless required by applicable law or agreed to in writing, software 15 | // distributed under the License is distributed on an "AS IS" BASIS, 16 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | // See the License for the specific language governing permissions and 18 | // limitations under the License. 19 | // 20 | 21 | #import 22 | 23 | @interface JSCallOCViewController : UIViewController 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsData/SensorsData.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.security.application-groups 6 | 7 | group.cn.sensorsdata.SensorsData 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsData/TestCollectionViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // TestCollectionViewController.h 3 | // SensorsData 4 | // 5 | // Created by 王灼洲 on 2017/11/3. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | // Licensed under the Apache License, Version 2.0 (the "License"); 9 | // you may not use this file except in compliance with the License. 10 | // You may obtain a copy of the License at 11 | // 12 | // http://www.apache.org/licenses/LICENSE-2.0 13 | // 14 | // Unless required by applicable law or agreed to in writing, software 15 | // distributed under the License is distributed on an "AS IS" BASIS, 16 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | // See the License for the specific language governing permissions and 18 | // limitations under the License. 19 | // 20 | 21 | #import 22 | 23 | @interface TestCollectionViewController : UIViewController 24 | 25 | @end 26 | 27 | @interface TestCollectionViewController_A: TestCollectionViewController 28 | 29 | @end 30 | @interface TestCollectionViewController_B: TestCollectionViewController 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsData/TestTableViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // TestTableViewController.h 3 | // SensorsData 4 | // 5 | // Created by 王灼洲 on 2017/10/16. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | // Licensed under the Apache License, Version 2.0 (the "License"); 9 | // you may not use this file except in compliance with the License. 10 | // You may obtain a copy of the License at 11 | // 12 | // http://www.apache.org/licenses/LICENSE-2.0 13 | // 14 | // Unless required by applicable law or agreed to in writing, software 15 | // distributed under the License is distributed on an "AS IS" BASIS, 16 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | // See the License for the specific language governing permissions and 18 | // limitations under the License. 19 | // 20 | 21 | #import 22 | 23 | @interface TestTableViewController : UIViewController 24 | @property(nonatomic,strong)UITableView *tableView; 25 | @property(nonatomic,strong)NSArray *dataArray; 26 | @property(nonatomic,strong)UITableView *tableView_1; 27 | @property(nonatomic,strong)NSArray *dataArray_1; 28 | @end 29 | 30 | @interface TestTableViewController_A: TestTableViewController 31 | 32 | @end 33 | @interface TestTableViewController_B: TestTableViewController 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsData/TestViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // TestViewController.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 王灼洲 on 2017/9/14. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | // Licensed under the Apache License, Version 2.0 (the "License"); 9 | // you may not use this file except in compliance with the License. 10 | // You may obtain a copy of the License at 11 | // 12 | // http://www.apache.org/licenses/LICENSE-2.0 13 | // 14 | // Unless required by applicable law or agreed to in writing, software 15 | // distributed under the License is distributed on an "AS IS" BASIS, 16 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | // See the License for the specific language governing permissions and 18 | // limitations under the License. 19 | // 20 | 21 | #import 22 | 23 | @interface TestViewController : UIViewController 24 | - (IBAction)onButtonClick:(id)sender; 25 | - (IBAction)onButtonClick2:(id)sender; 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsData/TestViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // TestViewController.m 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 王灼洲 on 2017/9/14. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | // Licensed under the Apache License, Version 2.0 (the "License"); 9 | // you may not use this file except in compliance with the License. 10 | // You may obtain a copy of the License at 11 | // 12 | // http://www.apache.org/licenses/LICENSE-2.0 13 | // 14 | // Unless required by applicable law or agreed to in writing, software 15 | // distributed under the License is distributed on an "AS IS" BASIS, 16 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | // See the License for the specific language governing permissions and 18 | // limitations under the License. 19 | // 20 | 21 | #import "TestViewController.h" 22 | 23 | @interface TestViewController () 24 | 25 | @end 26 | 27 | @implementation TestViewController 28 | 29 | - (void)viewDidLoad { 30 | [super viewDidLoad]; 31 | // Do any additional setup after loading the view. 32 | 33 | self.title = @"Test"; 34 | 35 | self.view.backgroundColor = [UIColor whiteColor]; 36 | } 37 | 38 | - (void)didReceiveMemoryWarning { 39 | [super didReceiveMemoryWarning]; 40 | // Dispose of any resources that can be recreated. 41 | } 42 | 43 | /* 44 | #pragma mark - Navigation 45 | 46 | // In a storyboard-based application, you will often want to do a little preparation before navigation 47 | - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { 48 | // Get the new view controller using [segue destinationViewController]. 49 | // Pass the selected object to the new view controller. 50 | } 51 | */ 52 | 53 | - (IBAction)onControlClick:(id)sender { 54 | NSLog(@"****:onControlClick"); 55 | } 56 | 57 | - (IBAction)onButtonClick:(id)sender { 58 | NSLog(@"****:onButtonClick"); 59 | } 60 | 61 | - (IBAction)onButtonClick2:(id)sender { 62 | NSLog(@"****:onButtonClick2"); 63 | } 64 | @end 65 | -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsData/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // SensorsData 4 | // 5 | // Created by 曹犟 on 15/7/4. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | // Licensed under the Apache License, Version 2.0 (the "License"); 9 | // you may not use this file except in compliance with the License. 10 | // You may obtain a copy of the License at 11 | // 12 | // http://www.apache.org/licenses/LICENSE-2.0 13 | // 14 | // Unless required by applicable law or agreed to in writing, software 15 | // distributed under the License is distributed on an "AS IS" BASIS, 16 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | // See the License for the specific language governing permissions and 18 | // limitations under the License. 19 | // 20 | 21 | #import 22 | 23 | @interface ViewController : UITableViewController 24 | 25 | @end 26 | 27 | -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsData/ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.m 3 | // SensorsData 4 | // 5 | // Created by 曹犟 on 15/7/4. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | // Licensed under the Apache License, Version 2.0 (the "License"); 9 | // you may not use this file except in compliance with the License. 10 | // You may obtain a copy of the License at 11 | // 12 | // http://www.apache.org/licenses/LICENSE-2.0 13 | // 14 | // Unless required by applicable law or agreed to in writing, software 15 | // distributed under the License is distributed on an "AS IS" BASIS, 16 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | // See the License for the specific language governing permissions and 18 | // limitations under the License. 19 | // 20 | 21 | #import "ViewController.h" 22 | 23 | @implementation ViewController 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsData/ic_test.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/Example/Example-iOS/SensorsData/ic_test.png -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsData/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // SensorsData 4 | // 5 | // Created by 曹犟 on 15/7/4. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | // Licensed under the Apache License, Version 2.0 (the "License"); 9 | // you may not use this file except in compliance with the License. 10 | // You may obtain a copy of the License at 11 | // 12 | // http://www.apache.org/licenses/LICENSE-2.0 13 | // 14 | // Unless required by applicable law or agreed to in writing, software 15 | // distributed under the License is distributed on an "AS IS" BASIS, 16 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | // See the License for the specific language governing permissions and 18 | // limitations under the License. 19 | // 20 | 21 | #import 22 | #import "AppDelegate.h" 23 | 24 | int main(int argc, char * argv[]) { 25 | @autoreleasepool { 26 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsData/test2.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Title 6 | 7 | 8 | 9 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 |
62 | body区域 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsDataSwift/Assets.xcassets/LaunchImage-2.launchimage/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "orientation" : "portrait", 5 | "idiom" : "ipad", 6 | "minimum-system-version" : "7.0", 7 | "extent" : "full-screen", 8 | "scale" : "2x" 9 | }, 10 | { 11 | "orientation" : "landscape", 12 | "idiom" : "ipad", 13 | "minimum-system-version" : "7.0", 14 | "extent" : "full-screen", 15 | "scale" : "1x" 16 | }, 17 | { 18 | "orientation" : "landscape", 19 | "idiom" : "ipad", 20 | "minimum-system-version" : "7.0", 21 | "extent" : "full-screen", 22 | "scale" : "2x" 23 | }, 24 | { 25 | "orientation" : "portrait", 26 | "idiom" : "iphone", 27 | "minimum-system-version" : "7.0", 28 | "scale" : "2x" 29 | }, 30 | { 31 | "orientation" : "portrait", 32 | "idiom" : "iphone", 33 | "minimum-system-version" : "7.0", 34 | "subtype" : "retina4", 35 | "scale" : "2x" 36 | }, 37 | { 38 | "orientation" : "portrait", 39 | "idiom" : "ipad", 40 | "minimum-system-version" : "7.0", 41 | "extent" : "full-screen", 42 | "scale" : "1x" 43 | } 44 | ], 45 | "info" : { 46 | "version" : 1, 47 | "author" : "xcode" 48 | } 49 | } -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsDataSwift/Assets.xcassets/LaunchImage.launchimage/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "orientation" : "portrait", 5 | "idiom" : "ipad", 6 | "minimum-system-version" : "7.0", 7 | "extent" : "full-screen", 8 | "scale" : "2x" 9 | }, 10 | { 11 | "orientation" : "landscape", 12 | "idiom" : "ipad", 13 | "minimum-system-version" : "7.0", 14 | "extent" : "full-screen", 15 | "scale" : "1x" 16 | }, 17 | { 18 | "orientation" : "landscape", 19 | "idiom" : "ipad", 20 | "minimum-system-version" : "7.0", 21 | "extent" : "full-screen", 22 | "scale" : "2x" 23 | }, 24 | { 25 | "orientation" : "portrait", 26 | "idiom" : "iphone", 27 | "minimum-system-version" : "7.0", 28 | "scale" : "2x" 29 | }, 30 | { 31 | "orientation" : "portrait", 32 | "idiom" : "iphone", 33 | "minimum-system-version" : "7.0", 34 | "subtype" : "retina4", 35 | "scale" : "2x" 36 | }, 37 | { 38 | "orientation" : "portrait", 39 | "idiom" : "ipad", 40 | "minimum-system-version" : "7.0", 41 | "extent" : "full-screen", 42 | "scale" : "1x" 43 | } 44 | ], 45 | "info" : { 46 | "version" : 1, 47 | "author" : "xcode" 48 | } 49 | } -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsDataSwift/Base.lproj/LaunchScreen.storyboard: -------------------------------------------------------------------------------- 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 | -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsDataSwift/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- 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 | -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsDataSwift/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | $(DEVELOPMENT_LANGUAGE) 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleVersion 20 | 1 21 | LSRequiresIPhoneOS 22 | 23 | NSAppTransportSecurity 24 | 25 | NSAllowsArbitraryLoads 26 | 27 | 28 | UILaunchStoryboardName 29 | LaunchScreen 30 | UIMainStoryboardFile 31 | Main 32 | UIRequiredDeviceCapabilities 33 | 34 | armv7 35 | 36 | UISupportedInterfaceOrientations 37 | 38 | UIInterfaceOrientationPortrait 39 | UIInterfaceOrientationLandscapeLeft 40 | UIInterfaceOrientationLandscapeRight 41 | 42 | UISupportedInterfaceOrientations~ipad 43 | 44 | UIInterfaceOrientationPortrait 45 | UIInterfaceOrientationPortraitUpsideDown 46 | UIInterfaceOrientationLandscapeLeft 47 | UIInterfaceOrientationLandscapeRight 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /Example/Example-iOS/SensorsDataSwift/ViewController.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.swift 3 | // SensorsDataSwift 4 | // 5 | // Created by 王灼洲 on 2017/11/9. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | // Licensed under the Apache License, Version 2.0 (the "License"); 9 | // you may not use this file except in compliance with the License. 10 | // You may obtain a copy of the License at 11 | // 12 | // http://www.apache.org/licenses/LICENSE-2.0 13 | // 14 | // Unless required by applicable law or agreed to in writing, software 15 | // distributed under the License is distributed on an "AS IS" BASIS, 16 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | // See the License for the specific language governing permissions and 18 | // limitations under the License. 19 | // 20 | 21 | import UIKit 22 | 23 | class ViewController: UIViewController{ 24 | 25 | var tableView:UITableView? 26 | 27 | 28 | override func viewDidLoad() { 29 | super.viewDidLoad() 30 | self.navigationItem.title = "ViewController" 31 | self.navigationController?.navigationBar.backgroundColor = UIColor.blue 32 | self.view.backgroundColor = UIColor.white 33 | 34 | 35 | // Do any additional setup after loading the view, typically from a nib. 36 | } 37 | 38 | override func didReceiveMemoryWarning() { 39 | super.didReceiveMemoryWarning() 40 | // Dispose of any resources that can be recreated. 41 | } 42 | 43 | 44 | 45 | } 46 | 47 | extension ViewController:UITableViewDelegate{ 48 | 49 | 50 | } 51 | 52 | 53 | -------------------------------------------------------------------------------- /Example/Example-macOS/Example-macOS/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // example-macOS 4 | // 5 | // Created by 陈玉国 on 2025/3/5. 6 | // 7 | 8 | #import 9 | 10 | @interface AppDelegate : NSObject 11 | 12 | 13 | @end 14 | 15 | -------------------------------------------------------------------------------- /Example/Example-macOS/Example-macOS/AppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.m 3 | // example-macOS 4 | // 5 | // Created by 陈玉国 on 2025/3/5. 6 | // 7 | 8 | #import "AppDelegate.h" 9 | #import 10 | 11 | @interface AppDelegate () 12 | 13 | 14 | @end 15 | 16 | @implementation AppDelegate 17 | 18 | - (void)applicationDidFinishLaunching:(NSNotification *)aNotification { 19 | // Insert code here to initialize your application 20 | 21 | SAConfigOptions *options = [[SAConfigOptions alloc] initWithServerURL:@"http://10.1.137.85:8106/sa?project=default" launchOptions:nil]; 22 | options.enableLog = YES; 23 | options.enableJavaScriptBridge = YES; 24 | [SensorsAnalyticsSDK startWithConfigOptions:options]; 25 | } 26 | 27 | 28 | - (void)applicationWillTerminate:(NSNotification *)aNotification { 29 | // Insert code here to tear down your application 30 | } 31 | 32 | 33 | - (BOOL)applicationSupportsSecureRestorableState:(NSApplication *)app { 34 | return YES; 35 | } 36 | 37 | 38 | @end 39 | -------------------------------------------------------------------------------- /Example/Example-macOS/Example-macOS/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "colors" : [ 3 | { 4 | "idiom" : "universal" 5 | } 6 | ], 7 | "info" : { 8 | "author" : "xcode", 9 | "version" : 1 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Example/Example-macOS/Example-macOS/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "mac", 5 | "scale" : "1x", 6 | "size" : "16x16" 7 | }, 8 | { 9 | "idiom" : "mac", 10 | "scale" : "2x", 11 | "size" : "16x16" 12 | }, 13 | { 14 | "idiom" : "mac", 15 | "scale" : "1x", 16 | "size" : "32x32" 17 | }, 18 | { 19 | "idiom" : "mac", 20 | "scale" : "2x", 21 | "size" : "32x32" 22 | }, 23 | { 24 | "idiom" : "mac", 25 | "scale" : "1x", 26 | "size" : "128x128" 27 | }, 28 | { 29 | "idiom" : "mac", 30 | "scale" : "2x", 31 | "size" : "128x128" 32 | }, 33 | { 34 | "idiom" : "mac", 35 | "scale" : "1x", 36 | "size" : "256x256" 37 | }, 38 | { 39 | "idiom" : "mac", 40 | "scale" : "2x", 41 | "size" : "256x256" 42 | }, 43 | { 44 | "idiom" : "mac", 45 | "scale" : "1x", 46 | "size" : "512x512" 47 | }, 48 | { 49 | "idiom" : "mac", 50 | "scale" : "2x", 51 | "size" : "512x512" 52 | } 53 | ], 54 | "info" : { 55 | "author" : "xcode", 56 | "version" : 1 57 | } 58 | } 59 | -------------------------------------------------------------------------------- /Example/Example-macOS/Example-macOS/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "author" : "xcode", 4 | "version" : 1 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Example-macOS/Example-macOS/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // example-macOS 4 | // 5 | // Created by 陈玉国 on 2025/3/5. 6 | // 7 | 8 | #import 9 | 10 | @interface ViewController : NSViewController 11 | 12 | 13 | @end 14 | 15 | -------------------------------------------------------------------------------- /Example/Example-macOS/Example-macOS/ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.m 3 | // example-macOS 4 | // 5 | // Created by 陈玉国 on 2025/3/5. 6 | // 7 | 8 | #import "ViewController.h" 9 | #import "WebViewController.h" 10 | #import 11 | 12 | @implementation ViewController 13 | 14 | - (void)viewDidLoad { 15 | [super viewDidLoad]; 16 | 17 | // Do any additional setup after loading the view. 18 | } 19 | 20 | 21 | - (void)setRepresentedObject:(id)representedObject { 22 | [super setRepresentedObject:representedObject]; 23 | 24 | // Update the view, if already loaded. 25 | } 26 | - (IBAction)testTrack:(id)sender { 27 | [[SensorsAnalyticsSDK sharedInstance] track:@"HelloWorld"]; 28 | } 29 | 30 | - (IBAction)testH5:(id)sender { 31 | WebViewController *vc = [[WebViewController alloc] init]; 32 | [self presentViewControllerAsModalWindow:vc]; 33 | } 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /Example/Example-macOS/Example-macOS/WebViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WebViewController.h 3 | // example-macOS 4 | // 5 | // Created by 陈玉国 on 2025/3/7. 6 | // 7 | 8 | #import 9 | 10 | NS_ASSUME_NONNULL_BEGIN 11 | 12 | @interface WebViewController : NSViewController 13 | 14 | @end 15 | 16 | NS_ASSUME_NONNULL_END 17 | -------------------------------------------------------------------------------- /Example/Example-macOS/Example-macOS/WebViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // WebViewController.m 3 | // example-macOS 4 | // 5 | // Created by 陈玉国 on 2025/3/7. 6 | // 7 | 8 | #import "WebViewController.h" 9 | #import 10 | 11 | @interface WebViewController () 12 | 13 | @property (nonatomic, strong) WKWebView *webView; 14 | 15 | @end 16 | 17 | @implementation WebViewController 18 | 19 | - (void)viewDidLoad { 20 | [super viewDidLoad]; 21 | // Do view setup here. 22 | 23 | self.webView = [[WKWebView alloc] initWithFrame:self.view.bounds configuration:[[WKWebViewConfiguration alloc] init]]; 24 | [self.webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"https://jssdk.debugbox.sensorsdata.cn/js/cqs/sa-demo/callJS.html"]]]; 25 | [self.view addSubview:self.webView]; 26 | } 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /Example/Example-macOS/Example-macOS/example_macOS.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.security.app-sandbox 6 | 7 | com.apple.security.files.user-selected.read-only 8 | 9 | com.apple.security.network.client 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Example/Example-macOS/Example-macOS/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // example-macOS 4 | // 5 | // Created by 陈玉国 on 2025/3/5. 6 | // 7 | 8 | #import 9 | 10 | int main(int argc, const char * argv[]) { 11 | @autoreleasepool { 12 | // Setup code that might create autoreleased objects goes here. 13 | } 14 | return NSApplicationMain(argc, argv); 15 | } 16 | -------------------------------------------------------------------------------- /Example/Example-macOS/Podfile: -------------------------------------------------------------------------------- 1 | # Uncomment the next line to define a global platform for your project 2 | platform :osx, '10.13' 3 | 4 | target 'example-macOS' do 5 | # Comment the next line if you don't want to use dynamic frameworks 6 | use_frameworks! 7 | 8 | # Pods for example-macOS 9 | pod 'SensorsAnalyticsSDK', :path=>'../../SensorsAnalyticsSDK.podspec' 10 | 11 | end 12 | -------------------------------------------------------------------------------- /Example/Example-macOS/Podfile.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - SensorsAnalyticsSDK/Core (5.0.0) 3 | 4 | DEPENDENCIES: 5 | - SensorsAnalyticsSDK/Core (from `../../SensorsAnalyticsSDK.podspec`) 6 | 7 | EXTERNAL SOURCES: 8 | SensorsAnalyticsSDK: 9 | :path: "../../SensorsAnalyticsSDK.podspec" 10 | 11 | SPEC CHECKSUMS: 12 | SensorsAnalyticsSDK: 67bc4018e2594e1b875133750c136002459d0c95 13 | 14 | PODFILE CHECKSUM: cae0904cd7c5d30cecf44364ccbab3bb354edef3 15 | 16 | COCOAPODS: 1.16.2 17 | -------------------------------------------------------------------------------- /Example/Example-macOS/example-macOS.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Example/Example-macOS/example-macOS.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Example/Example-tvOS/Podfile: -------------------------------------------------------------------------------- 1 | # Uncomment the next line to define a global platform for your project 2 | platform :tvos, '12.0' 3 | 4 | target 'example-tvOS' do 5 | # Comment the next line if you don't want to use dynamic frameworks 6 | use_frameworks! 7 | 8 | # Pods for example-tvOS 9 | 10 | pod 'SensorsAnalyticsSDK', :path=>'../../SensorsAnalyticsSDK.podspec' 11 | 12 | end 13 | -------------------------------------------------------------------------------- /Example/Example-tvOS/Podfile.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - SensorsAnalyticsSDK (5.0.0): 3 | - SensorsAnalyticsSDK/Core (= 5.0.0) 4 | - SensorsAnalyticsSDK/Core (5.0.0) 5 | 6 | DEPENDENCIES: 7 | - SensorsAnalyticsSDK (from `../../SensorsAnalyticsSDK.podspec`) 8 | 9 | EXTERNAL SOURCES: 10 | SensorsAnalyticsSDK: 11 | :path: "../../SensorsAnalyticsSDK.podspec" 12 | 13 | SPEC CHECKSUMS: 14 | SensorsAnalyticsSDK: 67bc4018e2594e1b875133750c136002459d0c95 15 | 16 | PODFILE CHECKSUM: b2e407fb5a74b8c3bc97f1fa21cfb9dc225722a1 17 | 18 | COCOAPODS: 1.16.2 19 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // example-tvOS 4 | // 5 | // Created by 陈玉国 on 2025/3/5. 6 | // 7 | 8 | #import 9 | 10 | @interface AppDelegate : UIResponder 11 | 12 | @property (strong, nonatomic) UIWindow *window; 13 | 14 | 15 | @end 16 | 17 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "colors" : [ 3 | { 4 | "idiom" : "universal" 5 | } 6 | ], 7 | "info" : { 8 | "author" : "xcode", 9 | "version" : 1 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - App Store.imagestack/Back.imagestacklayer/Content.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv" 5 | } 6 | ], 7 | "info" : { 8 | "author" : "xcode", 9 | "version" : 1 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - App Store.imagestack/Back.imagestacklayer/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "author" : "xcode", 4 | "version" : 1 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - App Store.imagestack/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "author" : "xcode", 4 | "version" : 1 5 | }, 6 | "layers" : [ 7 | { 8 | "filename" : "Front.imagestacklayer" 9 | }, 10 | { 11 | "filename" : "Middle.imagestacklayer" 12 | }, 13 | { 14 | "filename" : "Back.imagestacklayer" 15 | } 16 | ] 17 | } 18 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - App Store.imagestack/Front.imagestacklayer/Content.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv" 5 | } 6 | ], 7 | "info" : { 8 | "author" : "xcode", 9 | "version" : 1 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - App Store.imagestack/Front.imagestacklayer/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "author" : "xcode", 4 | "version" : 1 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - App Store.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv" 5 | } 6 | ], 7 | "info" : { 8 | "author" : "xcode", 9 | "version" : 1 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - App Store.imagestack/Middle.imagestacklayer/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "author" : "xcode", 4 | "version" : 1 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon.imagestack/Back.imagestacklayer/Content.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "tv", 9 | "scale" : "2x" 10 | } 11 | ], 12 | "info" : { 13 | "author" : "xcode", 14 | "version" : 1 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon.imagestack/Back.imagestacklayer/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "author" : "xcode", 4 | "version" : 1 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon.imagestack/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "author" : "xcode", 4 | "version" : 1 5 | }, 6 | "layers" : [ 7 | { 8 | "filename" : "Front.imagestacklayer" 9 | }, 10 | { 11 | "filename" : "Middle.imagestacklayer" 12 | }, 13 | { 14 | "filename" : "Back.imagestacklayer" 15 | } 16 | ] 17 | } 18 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon.imagestack/Front.imagestacklayer/Content.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "tv", 9 | "scale" : "2x" 10 | } 11 | ], 12 | "info" : { 13 | "author" : "xcode", 14 | "version" : 1 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon.imagestack/Front.imagestacklayer/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "author" : "xcode", 4 | "version" : 1 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "tv", 9 | "scale" : "2x" 10 | } 11 | ], 12 | "info" : { 13 | "author" : "xcode", 14 | "version" : 1 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon.imagestack/Middle.imagestacklayer/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "author" : "xcode", 4 | "version" : 1 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/Assets.xcassets/App Icon & Top Shelf Image.brandassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "assets" : [ 3 | { 4 | "filename" : "App Icon - App Store.imagestack", 5 | "idiom" : "tv", 6 | "role" : "primary-app-icon", 7 | "size" : "1280x768" 8 | }, 9 | { 10 | "filename" : "App Icon.imagestack", 11 | "idiom" : "tv", 12 | "role" : "primary-app-icon", 13 | "size" : "400x240" 14 | }, 15 | { 16 | "filename" : "Top Shelf Image Wide.imageset", 17 | "idiom" : "tv", 18 | "role" : "top-shelf-image-wide", 19 | "size" : "2320x720" 20 | }, 21 | { 22 | "filename" : "Top Shelf Image.imageset", 23 | "idiom" : "tv", 24 | "role" : "top-shelf-image", 25 | "size" : "1920x720" 26 | } 27 | ], 28 | "info" : { 29 | "author" : "xcode", 30 | "version" : 1 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/Assets.xcassets/App Icon & Top Shelf Image.brandassets/Top Shelf Image Wide.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "tv", 9 | "scale" : "2x" 10 | } 11 | ], 12 | "info" : { 13 | "author" : "xcode", 14 | "version" : 1 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/Assets.xcassets/App Icon & Top Shelf Image.brandassets/Top Shelf Image.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "tv", 9 | "scale" : "2x" 10 | } 11 | ], 12 | "info" : { 13 | "author" : "xcode", 14 | "version" : 1 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "author" : "xcode", 4 | "version" : 1 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/Base.lproj/LaunchScreen.storyboard: -------------------------------------------------------------------------------- 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 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // example-tvOS 4 | // 5 | // Created by 陈玉国 on 2025/3/5. 6 | // 7 | 8 | #import 9 | 10 | @interface ViewController : UIViewController 11 | 12 | 13 | @end 14 | 15 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.m 3 | // example-tvOS 4 | // 5 | // Created by 陈玉国 on 2025/3/5. 6 | // 7 | 8 | #import "ViewController.h" 9 | #import 10 | 11 | @interface ViewController () 12 | 13 | @end 14 | 15 | @implementation ViewController 16 | 17 | - (void)viewDidLoad { 18 | [super viewDidLoad]; 19 | // Do any additional setup after loading the view. 20 | } 21 | 22 | - (IBAction)testTrack:(id)sender { 23 | [[SensorsAnalyticsSDK sharedInstance] track:@"HelloWorld"]; 24 | } 25 | - (IBAction)flushAction:(UIButton *)sender { 26 | [SensorsAnalyticsSDK.sharedInstance flush]; 27 | } 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /Example/Example-tvOS/example-tvOS/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // example-tvOS 4 | // 5 | // Created by 陈玉国 on 2025/3/5. 6 | // 7 | 8 | #import 9 | #import "AppDelegate.h" 10 | 11 | int main(int argc, char * argv[]) { 12 | NSString * appDelegateClassName; 13 | @autoreleasepool { 14 | // Setup code that might create autoreleased objects goes here. 15 | appDelegateClassName = NSStringFromClass([AppDelegate class]); 16 | } 17 | return UIApplicationMain(argc, argv, nil, appDelegateClassName); 18 | } 19 | -------------------------------------------------------------------------------- /Example/Example-watchOS/Example-watchOS Watch App/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "colors" : [ 3 | { 4 | "idiom" : "universal" 5 | } 6 | ], 7 | "info" : { 8 | "author" : "xcode", 9 | "version" : 1 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Example/Example-watchOS/Example-watchOS Watch App/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "platform" : "watchos", 6 | "size" : "1024x1024" 7 | } 8 | ], 9 | "info" : { 10 | "author" : "xcode", 11 | "version" : 1 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Example/Example-watchOS/Example-watchOS Watch App/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "author" : "xcode", 4 | "version" : 1 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Example-watchOS/Example-watchOS Watch App/ContentView.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ContentView.swift 3 | // Example-watchOS Watch App 4 | // 5 | // Created by 陈玉国 on 2025/4/1. 6 | // 7 | 8 | import SwiftUI 9 | import SensorsAnalyticsSDK 10 | 11 | struct ContentView: View { 12 | var body: some View { 13 | VStack { 14 | Image(systemName: "globe") 15 | .imageScale(.large) 16 | .foregroundStyle(.tint) 17 | Text("Hello, world!") 18 | }.task { 19 | let options = SAConfigOptions(serverURL: "http://10.1.137.85:8106/sa?project=default", launchOptions: nil) 20 | options.enableLog = true 21 | SensorsAnalyticsSDK.start(configOptions: options) 22 | SensorsAnalyticsSDK.sharedInstance()?.track("HelloWorld") 23 | } 24 | .padding() 25 | } 26 | } 27 | 28 | #Preview { 29 | ContentView() 30 | } 31 | -------------------------------------------------------------------------------- /Example/Example-watchOS/Example-watchOS Watch App/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "author" : "xcode", 4 | "version" : 1 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Example-watchOS/Example-watchOS Watch App/example_watchOSApp.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Example_watchOSApp.swift 3 | // Example-watchOS Watch App 4 | // 5 | // Created by 陈玉国 on 2025/4/1. 6 | // 7 | 8 | import SwiftUI 9 | 10 | @main 11 | struct Example_watchOS_Watch_AppApp: App { 12 | var body: some Scene { 13 | WindowGroup { 14 | ContentView() 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Example/Example-watchOS/Example-watchOS.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Example/Example-watchOS/Example-watchOS.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Example/Example-watchOS/Example-watchOS/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "colors" : [ 3 | { 4 | "idiom" : "universal" 5 | } 6 | ], 7 | "info" : { 8 | "author" : "xcode", 9 | "version" : 1 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Example/Example-watchOS/Example-watchOS/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "platform" : "ios", 6 | "size" : "1024x1024" 7 | }, 8 | { 9 | "appearances" : [ 10 | { 11 | "appearance" : "luminosity", 12 | "value" : "dark" 13 | } 14 | ], 15 | "idiom" : "universal", 16 | "platform" : "ios", 17 | "size" : "1024x1024" 18 | }, 19 | { 20 | "appearances" : [ 21 | { 22 | "appearance" : "luminosity", 23 | "value" : "tinted" 24 | } 25 | ], 26 | "idiom" : "universal", 27 | "platform" : "ios", 28 | "size" : "1024x1024" 29 | } 30 | ], 31 | "info" : { 32 | "author" : "xcode", 33 | "version" : 1 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /Example/Example-watchOS/Example-watchOS/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "author" : "xcode", 4 | "version" : 1 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Example-watchOS/Example-watchOS/ContentView.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ContentView.swift 3 | // Example-watchOS 4 | // 5 | // Created by 陈玉国 on 2025/4/1. 6 | // 7 | 8 | import SwiftUI 9 | import SensorsAnalyticsSDK 10 | 11 | struct ContentView: View { 12 | var body: some View { 13 | VStack { 14 | Image(systemName: "globe") 15 | .imageScale(.large) 16 | .foregroundStyle(.tint) 17 | Text("Hello, world!") 18 | }.task { 19 | let options = SAConfigOptions(serverURL: "http://10.1.137.85:8106/sa?project=default", launchOptions: nil) 20 | options.enableLog = true 21 | SensorsAnalyticsSDK.start(configOptions: options) 22 | SensorsAnalyticsSDK.sharedInstance()?.track("HelloWorld") 23 | } 24 | .padding() 25 | } 26 | } 27 | 28 | #Preview { 29 | ContentView() 30 | } 31 | -------------------------------------------------------------------------------- /Example/Example-watchOS/Example-watchOS/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "author" : "xcode", 4 | "version" : 1 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Example-watchOS/Example-watchOS/example_watchOSApp.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Example_watchOSApp.swift 3 | // Example-watchOS 4 | // 5 | // Created by 陈玉国 on 2025/4/1. 6 | // 7 | 8 | import SwiftUI 9 | 10 | @main 11 | struct Example_watchOSApp: App { 12 | var body: some Scene { 13 | WindowGroup { 14 | ContentView() 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Example/Example-watchOS/Podfile: -------------------------------------------------------------------------------- 1 | # Uncomment the next line to define a global platform for your project 2 | # platform :ios, '9.0' 3 | 4 | target 'Example-watchOS' do 5 | # Comment the next line if you don't want to use dynamic frameworks 6 | platform :ios, '9.0' 7 | use_frameworks! 8 | 9 | # Pods for Example-watchOS 10 | pod 'SensorsAnalyticsSDK', :path=>'../../SensorsAnalyticsSDK.podspec' 11 | 12 | end 13 | 14 | target 'Example-watchOS Watch App' do 15 | # Comment the next line if you don't want to use dynamic frameworks 16 | platform :watchos, '7.0' 17 | use_frameworks! 18 | 19 | # Pods for Example-watchOS Watch App 20 | pod 'SensorsAnalyticsSDK', :path=>'../../SensorsAnalyticsSDK.podspec' 21 | end 22 | -------------------------------------------------------------------------------- /Example/Example-watchOS/Podfile.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - SensorsAnalyticsSDK (5.0.0): 3 | - SensorsAnalyticsSDK/Core (= 5.0.0) 4 | - SensorsAnalyticsSDK/Core (5.0.0) 5 | 6 | DEPENDENCIES: 7 | - SensorsAnalyticsSDK (from `../../SensorsAnalyticsSDK.podspec`) 8 | 9 | EXTERNAL SOURCES: 10 | SensorsAnalyticsSDK: 11 | :path: "../../SensorsAnalyticsSDK.podspec" 12 | 13 | SPEC CHECKSUMS: 14 | SensorsAnalyticsSDK: 67bc4018e2594e1b875133750c136002459d0c95 15 | 16 | PODFILE CHECKSUM: 57d6a37e538a5330f3dcdf26b455881f549becec 17 | 18 | COCOAPODS: 1.16.2 19 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | 软件名称:神策分析 SDK 2 | 版本号:所有版本 3 | 许可协议版本:1.0 4 | 5 | 1. 商业许可协议(用于商业用途需购买许可) 6 | 任何商业用途必须获得商业许可。 7 | 8 | 商业许可协议条款: 9 | 10 | - 商业用途:任何直接或间接产生收入的用途都需要购买商业许可。 11 | - 付款条款:在使用本软件用于商业用途之前,您必须支付全额许可费用。具体的付款方式将在双方联系后提供。 12 | - 商业支持:购买商业许可后,您将获得一年的技术支持和软件更新服务。 13 | - 禁止再许可:商业用户不得再许可、转售或转让本软件。每份商业许可仅适用于单一实体或公司。 14 | - 源代码访问:购买商业许可的用户将获得本软件的代码访问权限,并可根据业务需求进行内部修改。但不得公开发布或再分发修改后的版本。 15 | - 使用范围限制:商业许可仅限于购买者的内部使用,不得与第三方共享或用于为第三方提供服务。任何超出许可范围的使用行为均需额外授权,并可能产生额外费用。 16 | - 联系信息:如需购买商业许可,请联系 dv@sensorsdata.com。 17 | - 知识产权声明:本软件的版权归神策网络科技(北京)有限公司所有。购买商业许可仅授予您使用权,所有权仍归属本公司。 18 | - 终止条款: 如果您未支付相关费用或违反本协议的任何条款,商业许可将自动终止。您必须立即停止所有商业用途,并销毁或删除所有软件副本。 19 | 20 | 2. 附加授权规则条款 21 | 授权规则条款: 22 | 23 | - 功能限制:未经本软件作者的明确书面许可,您不得移除、绕过或规避本软件中的任何功能限制或试用限制。 24 | - 商标使用:未经授权,您不得在宣传、市场推广或销售产品时使用本软件的名称、商标或品牌标识。任何商标使用必须得到明确的书面许可。 25 | - 修改条款:本协议的条款可能会不时更新,用户有责任定期检查最新版本。任何重大更改将通过项目主页或电子邮件通知用户。 26 | 27 | 3. 联系方式 28 | 如需更多信息或申请商业许可,请联系 dv@sensorsdata.com。 29 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Resources/Base/PrivacyInfo.xcprivacy: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | NSPrivacyCollectedDataTypes 6 | 7 | 8 | NSPrivacyCollectedDataType 9 | NSPrivacyCollectedDataTypeDeviceID 10 | NSPrivacyCollectedDataTypeLinked 11 | 12 | NSPrivacyCollectedDataTypeTracking 13 | 14 | NSPrivacyCollectedDataTypePurposes 15 | 16 | NSPrivacyCollectedDataTypePurposeAnalytics 17 | 18 | 19 | 20 | NSPrivacyCollectedDataType 21 | NSPrivacyCollectedDataTypeOtherDiagnosticData 22 | NSPrivacyCollectedDataTypeLinked 23 | 24 | NSPrivacyCollectedDataTypeTracking 25 | 26 | NSPrivacyCollectedDataTypePurposes 27 | 28 | NSPrivacyCollectedDataTypePurposeAnalytics 29 | 30 | 31 | 32 | NSPrivacyAccessedAPITypes 33 | 34 | 35 | NSPrivacyAccessedAPIType 36 | NSPrivacyAccessedAPICategorySystemBootTime 37 | NSPrivacyAccessedAPITypeReasons 38 | 39 | 35F9.1 40 | 41 | 42 | 43 | NSPrivacyAccessedAPIType 44 | NSPrivacyAccessedAPICategoryUserDefaults 45 | NSPrivacyAccessedAPITypeReasons 46 | 47 | CA92.1 48 | 49 | 50 | 51 | NSPrivacyTrackingDomains 52 | 53 | NSPrivacyTracking 54 | 55 | 56 | 57 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Resources/EnglishResources/EnglishResources.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalyticsSDK/Resources/EnglishResources/EnglishResources.txt -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Resources/Exposure/Exposure.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalyticsSDK/Resources/Exposure/Exposure.txt -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SAAESStorePlugin.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAAESStorePlugin.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/1. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SAStorePlugin.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @interface SAAESStorePlugin : NSObject 15 | 16 | @end 17 | 18 | NS_ASSUME_NONNULL_END 19 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SABaseStoreManager.h: -------------------------------------------------------------------------------- 1 | // 2 | // SABaseStoreManager.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/8. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SAStorePlugin.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | typedef void(^SAStoreManagerCompletion)(id _Nullable object); 15 | 16 | @interface SABaseStoreManager : NSObject 17 | 18 | /// 注册存储插件 19 | /// - Parameter plugin: 需要注册的插件对象 20 | - (void)registerStorePlugin:(id)plugin; 21 | 22 | /// 注销存储插件 23 | /// - Parameter cla: 待注销的插件类型 Class 24 | - (void)unregisterStorePluginWithPluginClass:(Class)cla; 25 | 26 | #pragma mark - get 27 | 28 | - (nullable id)objectForKey:(NSString *)key; 29 | - (void)objectForKey:(NSString *)key completion:(SAStoreManagerCompletion)completion; 30 | 31 | - (nullable NSString *)stringForKey:(NSString *)key; 32 | - (nullable NSArray *)arrayForKey:(NSString *)key; 33 | - (nullable NSDictionary *)dictionaryForKey:(NSString *)key; 34 | - (nullable NSData *)dataForKey:(NSString *)key; 35 | - (NSInteger)integerForKey:(NSString *)key; 36 | - (float)floatForKey:(NSString *)key; 37 | - (double)doubleForKey:(NSString *)key; 38 | - (BOOL)boolForKey:(NSString *)key; 39 | 40 | #pragma mark - set 41 | 42 | - (void)setObject:(nullable id)object forKey:(NSString *)key; 43 | 44 | - (void)setInteger:(NSInteger)value forKey:(NSString *)key; 45 | - (void)setFloat:(float)value forKey:(NSString *)key; 46 | - (void)setDouble:(double)value forKey:(NSString *)key; 47 | - (void)setBool:(BOOL)value forKey:(NSString *)key; 48 | 49 | #pragma mark - remove 50 | 51 | - (void)removeObjectForKey:(NSString *)key; 52 | 53 | @end 54 | 55 | NS_ASSUME_NONNULL_END 56 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SAModuleProtocol.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAModuleProtocol.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2024/10/30. 6 | // 7 | 8 | #import 9 | 10 | @class SAConfigOptions; 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @protocol SAModuleProtocol 15 | 16 | @property (nonatomic, assign, getter=isEnable) BOOL enable; 17 | @property (nonatomic, strong) SAConfigOptions *configOptions; 18 | + (instancetype)defaultManager; 19 | 20 | @optional 21 | - (void)updateServerURL:(NSString *)serverURL; 22 | 23 | @end 24 | 25 | NS_ASSUME_NONNULL_END 26 | 27 | #pragma mark - 28 | 29 | @protocol SAPropertyModuleProtocol 30 | 31 | @optional 32 | @property (nonatomic, copy, readonly, nullable) NSDictionary *properties; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SAStorePlugin.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAStorePlugin.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/1. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @protocol SAStorePlugin 14 | 15 | - (NSString *)type; 16 | 17 | - (nullable id)objectForKey:(NSString *)key; 18 | - (void)setObject:(nullable id)value forKey:(NSString *)key; 19 | - (void)removeObjectForKey:(NSString *)key; 20 | 21 | @optional 22 | /// 可以用于将一些重要特殊的 key 进行迁移操作 23 | /// 24 | /// SDK 会在注册新插件时,调用该方法 25 | /// 该方法可能会调用多次,每次调用会传入之前注册的插件 26 | /// 27 | /// @param oldPlugin 旧插件 28 | - (void)upgradeWithOldPlugin:(id)oldPlugin; 29 | 30 | /// 注册自定义存储插件,是否忽略历史旧数据 31 | /// 32 | /// 如果未实现,则默认不忽略,即迁移历史数据迁移 33 | /// 如果要求忽略旧插件的本地存储历史数据,则实现该接口,并返回 YES 34 | /// 35 | /// @return 是否忽略 36 | - (BOOL)isIgnoreOldData; 37 | @end 38 | 39 | NS_ASSUME_NONNULL_END 40 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsExtension.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by  储强盛 on 2023/8/18. 6 | // Copyright © 2015-2023 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "SensorsAnalyticsSDK+Public.h" 12 | #import "SASecurityPolicy.h" 13 | #import "SAConfigOptions.h" 14 | #import "SAConstants.h" 15 | 16 | #import "SAAESStorePlugin.h" 17 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsSDK+JavaScriptBridge.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+JavaScriptBridge.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/13. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #if TARGET_OS_IOS || TARGET_OS_OSX 10 | 11 | #import "SensorsAnalyticsSDK.h" 12 | 13 | NS_ASSUME_NONNULL_BEGIN 14 | 15 | @interface SensorsAnalyticsSDK (JavaScriptBridge) 16 | 17 | - (void)trackFromH5WithEvent:(NSString *)eventInfo; 18 | 19 | - (void)trackFromH5WithEvent:(NSString *)eventInfo enableVerify:(BOOL)enableVerify; 20 | 21 | @end 22 | 23 | @interface SAConfigOptions (JavaScriptBridge) 24 | 25 | /// 是否开启 WKWebView 的 H5 打通功能,该功能默认是关闭的 26 | @property (nonatomic) BOOL enableJavaScriptBridge; 27 | 28 | @end 29 | 30 | NS_ASSUME_NONNULL_END 31 | 32 | #endif 33 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsSDK+SAAppExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+SAAppExtension.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2022/5/16. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SensorsAnalyticsSDK.h" 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SensorsAnalyticsSDK (SAAppExtension) 14 | 15 | /** 16 | @abstract 17 | * Track App Extension groupIdentifier 中缓存的数据 18 | * 19 | * @param groupIdentifier groupIdentifier 20 | * @param completion 完成 track 后的 callback 21 | */ 22 | - (void)trackEventFromExtensionWithGroupIdentifier:(NSString *)groupIdentifier completion:(void (^)(NSString *groupIdentifier, NSArray *events)) completion; 23 | 24 | @end 25 | 26 | NS_ASSUME_NONNULL_END 27 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Info.plist -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SensorsAnalyticsSDK { 2 | umbrella header "SensorsAnalyticsSDK.h" 3 | export * 4 | 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/SensorsAnalyticsSDK: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/SensorsAnalyticsSDK -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-maccatalyst/SensorsAnalyticsSDK.framework/Headers: -------------------------------------------------------------------------------- 1 | Versions/Current/Headers -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-maccatalyst/SensorsAnalyticsSDK.framework/Modules: -------------------------------------------------------------------------------- 1 | Versions/Current/Modules -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-maccatalyst/SensorsAnalyticsSDK.framework/Resources: -------------------------------------------------------------------------------- 1 | Versions/Current/Resources -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-maccatalyst/SensorsAnalyticsSDK.framework/SensorsAnalyticsSDK: -------------------------------------------------------------------------------- 1 | Versions/Current/SensorsAnalyticsSDK -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-maccatalyst/SensorsAnalyticsSDK.framework/Versions/A/Headers/SAAESStorePlugin.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAAESStorePlugin.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/1. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SAStorePlugin.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @interface SAAESStorePlugin : NSObject 15 | 16 | @end 17 | 18 | NS_ASSUME_NONNULL_END 19 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-maccatalyst/SensorsAnalyticsSDK.framework/Versions/A/Headers/SABaseStoreManager.h: -------------------------------------------------------------------------------- 1 | // 2 | // SABaseStoreManager.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/8. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SAStorePlugin.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | typedef void(^SAStoreManagerCompletion)(id _Nullable object); 15 | 16 | @interface SABaseStoreManager : NSObject 17 | 18 | /// 注册存储插件 19 | /// - Parameter plugin: 需要注册的插件对象 20 | - (void)registerStorePlugin:(id)plugin; 21 | 22 | /// 注销存储插件 23 | /// - Parameter cla: 待注销的插件类型 Class 24 | - (void)unregisterStorePluginWithPluginClass:(Class)cla; 25 | 26 | #pragma mark - get 27 | 28 | - (nullable id)objectForKey:(NSString *)key; 29 | - (void)objectForKey:(NSString *)key completion:(SAStoreManagerCompletion)completion; 30 | 31 | - (nullable NSString *)stringForKey:(NSString *)key; 32 | - (nullable NSArray *)arrayForKey:(NSString *)key; 33 | - (nullable NSDictionary *)dictionaryForKey:(NSString *)key; 34 | - (nullable NSData *)dataForKey:(NSString *)key; 35 | - (NSInteger)integerForKey:(NSString *)key; 36 | - (float)floatForKey:(NSString *)key; 37 | - (double)doubleForKey:(NSString *)key; 38 | - (BOOL)boolForKey:(NSString *)key; 39 | 40 | #pragma mark - set 41 | 42 | - (void)setObject:(nullable id)object forKey:(NSString *)key; 43 | 44 | - (void)setInteger:(NSInteger)value forKey:(NSString *)key; 45 | - (void)setFloat:(float)value forKey:(NSString *)key; 46 | - (void)setDouble:(double)value forKey:(NSString *)key; 47 | - (void)setBool:(BOOL)value forKey:(NSString *)key; 48 | 49 | #pragma mark - remove 50 | 51 | - (void)removeObjectForKey:(NSString *)key; 52 | 53 | @end 54 | 55 | NS_ASSUME_NONNULL_END 56 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-maccatalyst/SensorsAnalyticsSDK.framework/Versions/A/Headers/SAModuleProtocol.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAModuleProtocol.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2024/10/30. 6 | // 7 | 8 | #import 9 | 10 | @class SAConfigOptions; 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @protocol SAModuleProtocol 15 | 16 | @property (nonatomic, assign, getter=isEnable) BOOL enable; 17 | @property (nonatomic, strong) SAConfigOptions *configOptions; 18 | + (instancetype)defaultManager; 19 | 20 | @optional 21 | - (void)updateServerURL:(NSString *)serverURL; 22 | 23 | @end 24 | 25 | NS_ASSUME_NONNULL_END 26 | 27 | #pragma mark - 28 | 29 | @protocol SAPropertyModuleProtocol 30 | 31 | @optional 32 | @property (nonatomic, copy, readonly, nullable) NSDictionary *properties; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-maccatalyst/SensorsAnalyticsSDK.framework/Versions/A/Headers/SAStorePlugin.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAStorePlugin.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/1. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @protocol SAStorePlugin 14 | 15 | - (NSString *)type; 16 | 17 | - (nullable id)objectForKey:(NSString *)key; 18 | - (void)setObject:(nullable id)value forKey:(NSString *)key; 19 | - (void)removeObjectForKey:(NSString *)key; 20 | 21 | @optional 22 | /// 可以用于将一些重要特殊的 key 进行迁移操作 23 | /// 24 | /// SDK 会在注册新插件时,调用该方法 25 | /// 该方法可能会调用多次,每次调用会传入之前注册的插件 26 | /// 27 | /// @param oldPlugin 旧插件 28 | - (void)upgradeWithOldPlugin:(id)oldPlugin; 29 | 30 | /// 注册自定义存储插件,是否忽略历史旧数据 31 | /// 32 | /// 如果未实现,则默认不忽略,即迁移历史数据迁移 33 | /// 如果要求忽略旧插件的本地存储历史数据,则实现该接口,并返回 YES 34 | /// 35 | /// @return 是否忽略 36 | - (BOOL)isIgnoreOldData; 37 | @end 38 | 39 | NS_ASSUME_NONNULL_END 40 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-maccatalyst/SensorsAnalyticsSDK.framework/Versions/A/Headers/SensorsAnalyticsExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsExtension.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by  储强盛 on 2023/8/18. 6 | // Copyright © 2015-2023 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "SensorsAnalyticsSDK+Public.h" 12 | #import "SASecurityPolicy.h" 13 | #import "SAConfigOptions.h" 14 | #import "SAConstants.h" 15 | 16 | #import "SAAESStorePlugin.h" 17 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-maccatalyst/SensorsAnalyticsSDK.framework/Versions/A/Headers/SensorsAnalyticsSDK+JavaScriptBridge.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+JavaScriptBridge.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/13. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #if TARGET_OS_IOS || TARGET_OS_OSX 10 | 11 | #import "SensorsAnalyticsSDK.h" 12 | 13 | NS_ASSUME_NONNULL_BEGIN 14 | 15 | @interface SensorsAnalyticsSDK (JavaScriptBridge) 16 | 17 | - (void)trackFromH5WithEvent:(NSString *)eventInfo; 18 | 19 | - (void)trackFromH5WithEvent:(NSString *)eventInfo enableVerify:(BOOL)enableVerify; 20 | 21 | @end 22 | 23 | @interface SAConfigOptions (JavaScriptBridge) 24 | 25 | /// 是否开启 WKWebView 的 H5 打通功能,该功能默认是关闭的 26 | @property (nonatomic) BOOL enableJavaScriptBridge; 27 | 28 | @end 29 | 30 | NS_ASSUME_NONNULL_END 31 | 32 | #endif 33 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-maccatalyst/SensorsAnalyticsSDK.framework/Versions/A/Headers/SensorsAnalyticsSDK+SAAppExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+SAAppExtension.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2022/5/16. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SensorsAnalyticsSDK.h" 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SensorsAnalyticsSDK (SAAppExtension) 14 | 15 | /** 16 | @abstract 17 | * Track App Extension groupIdentifier 中缓存的数据 18 | * 19 | * @param groupIdentifier groupIdentifier 20 | * @param completion 完成 track 后的 callback 21 | */ 22 | - (void)trackEventFromExtensionWithGroupIdentifier:(NSString *)groupIdentifier completion:(void (^)(NSString *groupIdentifier, NSArray *events)) completion; 23 | 24 | @end 25 | 26 | NS_ASSUME_NONNULL_END 27 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-maccatalyst/SensorsAnalyticsSDK.framework/Versions/A/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SensorsAnalyticsSDK { 2 | umbrella header "SensorsAnalyticsSDK.h" 3 | export * 4 | 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-maccatalyst/SensorsAnalyticsSDK.framework/Versions/A/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 24D81 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | SensorsAnalyticsSDK 11 | CFBundleIdentifier 12 | cn.sensorsdata.SensorsAnalyticsSDK 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | SensorsAnalyticsSDK 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSupportedPlatforms 22 | 23 | MacOSX 24 | 25 | CFBundleVersion 26 | 1 27 | DTCompiler 28 | com.apple.compilers.llvm.clang.1_0 29 | DTPlatformBuild 30 | 24C94 31 | DTPlatformName 32 | macosx 33 | DTPlatformVersion 34 | 15.2 35 | DTSDKBuild 36 | 24C94 37 | DTSDKName 38 | macosx15.2 39 | DTXcode 40 | 1620 41 | DTXcodeBuild 42 | 16C5032a 43 | LSMinimumSystemVersion 44 | 10.15 45 | UIDeviceFamily 46 | 47 | 2 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-maccatalyst/SensorsAnalyticsSDK.framework/Versions/A/SensorsAnalyticsSDK: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-maccatalyst/SensorsAnalyticsSDK.framework/Versions/A/SensorsAnalyticsSDK -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-maccatalyst/SensorsAnalyticsSDK.framework/Versions/Current: -------------------------------------------------------------------------------- 1 | A -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SAAESStorePlugin.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAAESStorePlugin.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/1. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SAStorePlugin.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @interface SAAESStorePlugin : NSObject 15 | 16 | @end 17 | 18 | NS_ASSUME_NONNULL_END 19 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SABaseStoreManager.h: -------------------------------------------------------------------------------- 1 | // 2 | // SABaseStoreManager.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/8. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SAStorePlugin.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | typedef void(^SAStoreManagerCompletion)(id _Nullable object); 15 | 16 | @interface SABaseStoreManager : NSObject 17 | 18 | /// 注册存储插件 19 | /// - Parameter plugin: 需要注册的插件对象 20 | - (void)registerStorePlugin:(id)plugin; 21 | 22 | /// 注销存储插件 23 | /// - Parameter cla: 待注销的插件类型 Class 24 | - (void)unregisterStorePluginWithPluginClass:(Class)cla; 25 | 26 | #pragma mark - get 27 | 28 | - (nullable id)objectForKey:(NSString *)key; 29 | - (void)objectForKey:(NSString *)key completion:(SAStoreManagerCompletion)completion; 30 | 31 | - (nullable NSString *)stringForKey:(NSString *)key; 32 | - (nullable NSArray *)arrayForKey:(NSString *)key; 33 | - (nullable NSDictionary *)dictionaryForKey:(NSString *)key; 34 | - (nullable NSData *)dataForKey:(NSString *)key; 35 | - (NSInteger)integerForKey:(NSString *)key; 36 | - (float)floatForKey:(NSString *)key; 37 | - (double)doubleForKey:(NSString *)key; 38 | - (BOOL)boolForKey:(NSString *)key; 39 | 40 | #pragma mark - set 41 | 42 | - (void)setObject:(nullable id)object forKey:(NSString *)key; 43 | 44 | - (void)setInteger:(NSInteger)value forKey:(NSString *)key; 45 | - (void)setFloat:(float)value forKey:(NSString *)key; 46 | - (void)setDouble:(double)value forKey:(NSString *)key; 47 | - (void)setBool:(BOOL)value forKey:(NSString *)key; 48 | 49 | #pragma mark - remove 50 | 51 | - (void)removeObjectForKey:(NSString *)key; 52 | 53 | @end 54 | 55 | NS_ASSUME_NONNULL_END 56 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SAModuleProtocol.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAModuleProtocol.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2024/10/30. 6 | // 7 | 8 | #import 9 | 10 | @class SAConfigOptions; 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @protocol SAModuleProtocol 15 | 16 | @property (nonatomic, assign, getter=isEnable) BOOL enable; 17 | @property (nonatomic, strong) SAConfigOptions *configOptions; 18 | + (instancetype)defaultManager; 19 | 20 | @optional 21 | - (void)updateServerURL:(NSString *)serverURL; 22 | 23 | @end 24 | 25 | NS_ASSUME_NONNULL_END 26 | 27 | #pragma mark - 28 | 29 | @protocol SAPropertyModuleProtocol 30 | 31 | @optional 32 | @property (nonatomic, copy, readonly, nullable) NSDictionary *properties; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SAStorePlugin.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAStorePlugin.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/1. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @protocol SAStorePlugin 14 | 15 | - (NSString *)type; 16 | 17 | - (nullable id)objectForKey:(NSString *)key; 18 | - (void)setObject:(nullable id)value forKey:(NSString *)key; 19 | - (void)removeObjectForKey:(NSString *)key; 20 | 21 | @optional 22 | /// 可以用于将一些重要特殊的 key 进行迁移操作 23 | /// 24 | /// SDK 会在注册新插件时,调用该方法 25 | /// 该方法可能会调用多次,每次调用会传入之前注册的插件 26 | /// 27 | /// @param oldPlugin 旧插件 28 | - (void)upgradeWithOldPlugin:(id)oldPlugin; 29 | 30 | /// 注册自定义存储插件,是否忽略历史旧数据 31 | /// 32 | /// 如果未实现,则默认不忽略,即迁移历史数据迁移 33 | /// 如果要求忽略旧插件的本地存储历史数据,则实现该接口,并返回 YES 34 | /// 35 | /// @return 是否忽略 36 | - (BOOL)isIgnoreOldData; 37 | @end 38 | 39 | NS_ASSUME_NONNULL_END 40 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsExtension.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by  储强盛 on 2023/8/18. 6 | // Copyright © 2015-2023 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "SensorsAnalyticsSDK+Public.h" 12 | #import "SASecurityPolicy.h" 13 | #import "SAConfigOptions.h" 14 | #import "SAConstants.h" 15 | 16 | #import "SAAESStorePlugin.h" 17 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsSDK+JavaScriptBridge.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+JavaScriptBridge.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/13. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #if TARGET_OS_IOS || TARGET_OS_OSX 10 | 11 | #import "SensorsAnalyticsSDK.h" 12 | 13 | NS_ASSUME_NONNULL_BEGIN 14 | 15 | @interface SensorsAnalyticsSDK (JavaScriptBridge) 16 | 17 | - (void)trackFromH5WithEvent:(NSString *)eventInfo; 18 | 19 | - (void)trackFromH5WithEvent:(NSString *)eventInfo enableVerify:(BOOL)enableVerify; 20 | 21 | @end 22 | 23 | @interface SAConfigOptions (JavaScriptBridge) 24 | 25 | /// 是否开启 WKWebView 的 H5 打通功能,该功能默认是关闭的 26 | @property (nonatomic) BOOL enableJavaScriptBridge; 27 | 28 | @end 29 | 30 | NS_ASSUME_NONNULL_END 31 | 32 | #endif 33 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsSDK+SAAppExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+SAAppExtension.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2022/5/16. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SensorsAnalyticsSDK.h" 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SensorsAnalyticsSDK (SAAppExtension) 14 | 15 | /** 16 | @abstract 17 | * Track App Extension groupIdentifier 中缓存的数据 18 | * 19 | * @param groupIdentifier groupIdentifier 20 | * @param completion 完成 track 后的 callback 21 | */ 22 | - (void)trackEventFromExtensionWithGroupIdentifier:(NSString *)groupIdentifier completion:(void (^)(NSString *groupIdentifier, NSArray *events)) completion; 23 | 24 | @end 25 | 26 | NS_ASSUME_NONNULL_END 27 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Info.plist -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SensorsAnalyticsSDK { 2 | umbrella header "SensorsAnalyticsSDK.h" 3 | export * 4 | 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/SensorsAnalyticsSDK: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/SensorsAnalyticsSDK -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/macos-arm64_x86_64/SensorsAnalyticsSDK.framework/Headers: -------------------------------------------------------------------------------- 1 | Versions/Current/Headers -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/macos-arm64_x86_64/SensorsAnalyticsSDK.framework/Modules: -------------------------------------------------------------------------------- 1 | Versions/Current/Modules -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/macos-arm64_x86_64/SensorsAnalyticsSDK.framework/Resources: -------------------------------------------------------------------------------- 1 | Versions/Current/Resources -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/macos-arm64_x86_64/SensorsAnalyticsSDK.framework/SensorsAnalyticsSDK: -------------------------------------------------------------------------------- 1 | Versions/Current/SensorsAnalyticsSDK -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/macos-arm64_x86_64/SensorsAnalyticsSDK.framework/Versions/A/Headers/SAAESStorePlugin.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAAESStorePlugin.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/1. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SAStorePlugin.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @interface SAAESStorePlugin : NSObject 15 | 16 | @end 17 | 18 | NS_ASSUME_NONNULL_END 19 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/macos-arm64_x86_64/SensorsAnalyticsSDK.framework/Versions/A/Headers/SABaseStoreManager.h: -------------------------------------------------------------------------------- 1 | // 2 | // SABaseStoreManager.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/8. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SAStorePlugin.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | typedef void(^SAStoreManagerCompletion)(id _Nullable object); 15 | 16 | @interface SABaseStoreManager : NSObject 17 | 18 | /// 注册存储插件 19 | /// - Parameter plugin: 需要注册的插件对象 20 | - (void)registerStorePlugin:(id)plugin; 21 | 22 | /// 注销存储插件 23 | /// - Parameter cla: 待注销的插件类型 Class 24 | - (void)unregisterStorePluginWithPluginClass:(Class)cla; 25 | 26 | #pragma mark - get 27 | 28 | - (nullable id)objectForKey:(NSString *)key; 29 | - (void)objectForKey:(NSString *)key completion:(SAStoreManagerCompletion)completion; 30 | 31 | - (nullable NSString *)stringForKey:(NSString *)key; 32 | - (nullable NSArray *)arrayForKey:(NSString *)key; 33 | - (nullable NSDictionary *)dictionaryForKey:(NSString *)key; 34 | - (nullable NSData *)dataForKey:(NSString *)key; 35 | - (NSInteger)integerForKey:(NSString *)key; 36 | - (float)floatForKey:(NSString *)key; 37 | - (double)doubleForKey:(NSString *)key; 38 | - (BOOL)boolForKey:(NSString *)key; 39 | 40 | #pragma mark - set 41 | 42 | - (void)setObject:(nullable id)object forKey:(NSString *)key; 43 | 44 | - (void)setInteger:(NSInteger)value forKey:(NSString *)key; 45 | - (void)setFloat:(float)value forKey:(NSString *)key; 46 | - (void)setDouble:(double)value forKey:(NSString *)key; 47 | - (void)setBool:(BOOL)value forKey:(NSString *)key; 48 | 49 | #pragma mark - remove 50 | 51 | - (void)removeObjectForKey:(NSString *)key; 52 | 53 | @end 54 | 55 | NS_ASSUME_NONNULL_END 56 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/macos-arm64_x86_64/SensorsAnalyticsSDK.framework/Versions/A/Headers/SAModuleProtocol.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAModuleProtocol.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2024/10/30. 6 | // 7 | 8 | #import 9 | 10 | @class SAConfigOptions; 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @protocol SAModuleProtocol 15 | 16 | @property (nonatomic, assign, getter=isEnable) BOOL enable; 17 | @property (nonatomic, strong) SAConfigOptions *configOptions; 18 | + (instancetype)defaultManager; 19 | 20 | @optional 21 | - (void)updateServerURL:(NSString *)serverURL; 22 | 23 | @end 24 | 25 | NS_ASSUME_NONNULL_END 26 | 27 | #pragma mark - 28 | 29 | @protocol SAPropertyModuleProtocol 30 | 31 | @optional 32 | @property (nonatomic, copy, readonly, nullable) NSDictionary *properties; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/macos-arm64_x86_64/SensorsAnalyticsSDK.framework/Versions/A/Headers/SAStorePlugin.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAStorePlugin.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/1. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @protocol SAStorePlugin 14 | 15 | - (NSString *)type; 16 | 17 | - (nullable id)objectForKey:(NSString *)key; 18 | - (void)setObject:(nullable id)value forKey:(NSString *)key; 19 | - (void)removeObjectForKey:(NSString *)key; 20 | 21 | @optional 22 | /// 可以用于将一些重要特殊的 key 进行迁移操作 23 | /// 24 | /// SDK 会在注册新插件时,调用该方法 25 | /// 该方法可能会调用多次,每次调用会传入之前注册的插件 26 | /// 27 | /// @param oldPlugin 旧插件 28 | - (void)upgradeWithOldPlugin:(id)oldPlugin; 29 | 30 | /// 注册自定义存储插件,是否忽略历史旧数据 31 | /// 32 | /// 如果未实现,则默认不忽略,即迁移历史数据迁移 33 | /// 如果要求忽略旧插件的本地存储历史数据,则实现该接口,并返回 YES 34 | /// 35 | /// @return 是否忽略 36 | - (BOOL)isIgnoreOldData; 37 | @end 38 | 39 | NS_ASSUME_NONNULL_END 40 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/macos-arm64_x86_64/SensorsAnalyticsSDK.framework/Versions/A/Headers/SensorsAnalyticsExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsExtension.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by  储强盛 on 2023/8/18. 6 | // Copyright © 2015-2023 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "SensorsAnalyticsSDK+Public.h" 12 | #import "SASecurityPolicy.h" 13 | #import "SAConfigOptions.h" 14 | #import "SAConstants.h" 15 | 16 | #import "SAAESStorePlugin.h" 17 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/macos-arm64_x86_64/SensorsAnalyticsSDK.framework/Versions/A/Headers/SensorsAnalyticsSDK+JavaScriptBridge.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+JavaScriptBridge.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/13. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #if TARGET_OS_IOS || TARGET_OS_OSX 10 | 11 | #import "SensorsAnalyticsSDK.h" 12 | 13 | NS_ASSUME_NONNULL_BEGIN 14 | 15 | @interface SensorsAnalyticsSDK (JavaScriptBridge) 16 | 17 | - (void)trackFromH5WithEvent:(NSString *)eventInfo; 18 | 19 | - (void)trackFromH5WithEvent:(NSString *)eventInfo enableVerify:(BOOL)enableVerify; 20 | 21 | @end 22 | 23 | @interface SAConfigOptions (JavaScriptBridge) 24 | 25 | /// 是否开启 WKWebView 的 H5 打通功能,该功能默认是关闭的 26 | @property (nonatomic) BOOL enableJavaScriptBridge; 27 | 28 | @end 29 | 30 | NS_ASSUME_NONNULL_END 31 | 32 | #endif 33 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/macos-arm64_x86_64/SensorsAnalyticsSDK.framework/Versions/A/Headers/SensorsAnalyticsSDK+SAAppExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+SAAppExtension.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2022/5/16. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SensorsAnalyticsSDK.h" 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SensorsAnalyticsSDK (SAAppExtension) 14 | 15 | /** 16 | @abstract 17 | * Track App Extension groupIdentifier 中缓存的数据 18 | * 19 | * @param groupIdentifier groupIdentifier 20 | * @param completion 完成 track 后的 callback 21 | */ 22 | - (void)trackEventFromExtensionWithGroupIdentifier:(NSString *)groupIdentifier completion:(void (^)(NSString *groupIdentifier, NSArray *events)) completion; 23 | 24 | @end 25 | 26 | NS_ASSUME_NONNULL_END 27 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/macos-arm64_x86_64/SensorsAnalyticsSDK.framework/Versions/A/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SensorsAnalyticsSDK { 2 | umbrella header "SensorsAnalyticsSDK.h" 3 | export * 4 | 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/macos-arm64_x86_64/SensorsAnalyticsSDK.framework/Versions/A/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 24D81 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | SensorsAnalyticsSDK 11 | CFBundleIdentifier 12 | cn.sensorsdata.SensorsAnalyticsSDK 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | SensorsAnalyticsSDK 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSupportedPlatforms 22 | 23 | MacOSX 24 | 25 | CFBundleVersion 26 | 1 27 | DTCompiler 28 | com.apple.compilers.llvm.clang.1_0 29 | DTPlatformBuild 30 | 24C94 31 | DTPlatformName 32 | macosx 33 | DTPlatformVersion 34 | 15.2 35 | DTSDKBuild 36 | 24C94 37 | DTSDKName 38 | macosx15.2 39 | DTXcode 40 | 1620 41 | DTXcodeBuild 42 | 16C5032a 43 | LSMinimumSystemVersion 44 | 10.13 45 | 46 | 47 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/macos-arm64_x86_64/SensorsAnalyticsSDK.framework/Versions/A/SensorsAnalyticsSDK: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/macos-arm64_x86_64/SensorsAnalyticsSDK.framework/Versions/A/SensorsAnalyticsSDK -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/macos-arm64_x86_64/SensorsAnalyticsSDK.framework/Versions/Current: -------------------------------------------------------------------------------- 1 | A -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64/SensorsAnalyticsSDK.framework/Headers/SAAESStorePlugin.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAAESStorePlugin.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/1. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SAStorePlugin.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @interface SAAESStorePlugin : NSObject 15 | 16 | @end 17 | 18 | NS_ASSUME_NONNULL_END 19 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64/SensorsAnalyticsSDK.framework/Headers/SABaseStoreManager.h: -------------------------------------------------------------------------------- 1 | // 2 | // SABaseStoreManager.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/8. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SAStorePlugin.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | typedef void(^SAStoreManagerCompletion)(id _Nullable object); 15 | 16 | @interface SABaseStoreManager : NSObject 17 | 18 | /// 注册存储插件 19 | /// - Parameter plugin: 需要注册的插件对象 20 | - (void)registerStorePlugin:(id)plugin; 21 | 22 | /// 注销存储插件 23 | /// - Parameter cla: 待注销的插件类型 Class 24 | - (void)unregisterStorePluginWithPluginClass:(Class)cla; 25 | 26 | #pragma mark - get 27 | 28 | - (nullable id)objectForKey:(NSString *)key; 29 | - (void)objectForKey:(NSString *)key completion:(SAStoreManagerCompletion)completion; 30 | 31 | - (nullable NSString *)stringForKey:(NSString *)key; 32 | - (nullable NSArray *)arrayForKey:(NSString *)key; 33 | - (nullable NSDictionary *)dictionaryForKey:(NSString *)key; 34 | - (nullable NSData *)dataForKey:(NSString *)key; 35 | - (NSInteger)integerForKey:(NSString *)key; 36 | - (float)floatForKey:(NSString *)key; 37 | - (double)doubleForKey:(NSString *)key; 38 | - (BOOL)boolForKey:(NSString *)key; 39 | 40 | #pragma mark - set 41 | 42 | - (void)setObject:(nullable id)object forKey:(NSString *)key; 43 | 44 | - (void)setInteger:(NSInteger)value forKey:(NSString *)key; 45 | - (void)setFloat:(float)value forKey:(NSString *)key; 46 | - (void)setDouble:(double)value forKey:(NSString *)key; 47 | - (void)setBool:(BOOL)value forKey:(NSString *)key; 48 | 49 | #pragma mark - remove 50 | 51 | - (void)removeObjectForKey:(NSString *)key; 52 | 53 | @end 54 | 55 | NS_ASSUME_NONNULL_END 56 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64/SensorsAnalyticsSDK.framework/Headers/SAModuleProtocol.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAModuleProtocol.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2024/10/30. 6 | // 7 | 8 | #import 9 | 10 | @class SAConfigOptions; 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @protocol SAModuleProtocol 15 | 16 | @property (nonatomic, assign, getter=isEnable) BOOL enable; 17 | @property (nonatomic, strong) SAConfigOptions *configOptions; 18 | + (instancetype)defaultManager; 19 | 20 | @optional 21 | - (void)updateServerURL:(NSString *)serverURL; 22 | 23 | @end 24 | 25 | NS_ASSUME_NONNULL_END 26 | 27 | #pragma mark - 28 | 29 | @protocol SAPropertyModuleProtocol 30 | 31 | @optional 32 | @property (nonatomic, copy, readonly, nullable) NSDictionary *properties; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64/SensorsAnalyticsSDK.framework/Headers/SAStorePlugin.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAStorePlugin.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/1. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @protocol SAStorePlugin 14 | 15 | - (NSString *)type; 16 | 17 | - (nullable id)objectForKey:(NSString *)key; 18 | - (void)setObject:(nullable id)value forKey:(NSString *)key; 19 | - (void)removeObjectForKey:(NSString *)key; 20 | 21 | @optional 22 | /// 可以用于将一些重要特殊的 key 进行迁移操作 23 | /// 24 | /// SDK 会在注册新插件时,调用该方法 25 | /// 该方法可能会调用多次,每次调用会传入之前注册的插件 26 | /// 27 | /// @param oldPlugin 旧插件 28 | - (void)upgradeWithOldPlugin:(id)oldPlugin; 29 | 30 | /// 注册自定义存储插件,是否忽略历史旧数据 31 | /// 32 | /// 如果未实现,则默认不忽略,即迁移历史数据迁移 33 | /// 如果要求忽略旧插件的本地存储历史数据,则实现该接口,并返回 YES 34 | /// 35 | /// @return 是否忽略 36 | - (BOOL)isIgnoreOldData; 37 | @end 38 | 39 | NS_ASSUME_NONNULL_END 40 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsExtension.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by  储强盛 on 2023/8/18. 6 | // Copyright © 2015-2023 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "SensorsAnalyticsSDK+Public.h" 12 | #import "SASecurityPolicy.h" 13 | #import "SAConfigOptions.h" 14 | #import "SAConstants.h" 15 | 16 | #import "SAAESStorePlugin.h" 17 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsSDK+JavaScriptBridge.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+JavaScriptBridge.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/13. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #if TARGET_OS_IOS || TARGET_OS_OSX 10 | 11 | #import "SensorsAnalyticsSDK.h" 12 | 13 | NS_ASSUME_NONNULL_BEGIN 14 | 15 | @interface SensorsAnalyticsSDK (JavaScriptBridge) 16 | 17 | - (void)trackFromH5WithEvent:(NSString *)eventInfo; 18 | 19 | - (void)trackFromH5WithEvent:(NSString *)eventInfo enableVerify:(BOOL)enableVerify; 20 | 21 | @end 22 | 23 | @interface SAConfigOptions (JavaScriptBridge) 24 | 25 | /// 是否开启 WKWebView 的 H5 打通功能,该功能默认是关闭的 26 | @property (nonatomic) BOOL enableJavaScriptBridge; 27 | 28 | @end 29 | 30 | NS_ASSUME_NONNULL_END 31 | 32 | #endif 33 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsSDK+SAAppExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+SAAppExtension.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2022/5/16. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SensorsAnalyticsSDK.h" 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SensorsAnalyticsSDK (SAAppExtension) 14 | 15 | /** 16 | @abstract 17 | * Track App Extension groupIdentifier 中缓存的数据 18 | * 19 | * @param groupIdentifier groupIdentifier 20 | * @param completion 完成 track 后的 callback 21 | */ 22 | - (void)trackEventFromExtensionWithGroupIdentifier:(NSString *)groupIdentifier completion:(void (^)(NSString *groupIdentifier, NSArray *events)) completion; 23 | 24 | @end 25 | 26 | NS_ASSUME_NONNULL_END 27 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64/SensorsAnalyticsSDK.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64/SensorsAnalyticsSDK.framework/Info.plist -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64/SensorsAnalyticsSDK.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SensorsAnalyticsSDK { 2 | umbrella header "SensorsAnalyticsSDK.h" 3 | export * 4 | 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64/SensorsAnalyticsSDK.framework/SensorsAnalyticsSDK: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64/SensorsAnalyticsSDK.framework/SensorsAnalyticsSDK -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SAAESStorePlugin.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAAESStorePlugin.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/1. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SAStorePlugin.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @interface SAAESStorePlugin : NSObject 15 | 16 | @end 17 | 18 | NS_ASSUME_NONNULL_END 19 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SABaseStoreManager.h: -------------------------------------------------------------------------------- 1 | // 2 | // SABaseStoreManager.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/8. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SAStorePlugin.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | typedef void(^SAStoreManagerCompletion)(id _Nullable object); 15 | 16 | @interface SABaseStoreManager : NSObject 17 | 18 | /// 注册存储插件 19 | /// - Parameter plugin: 需要注册的插件对象 20 | - (void)registerStorePlugin:(id)plugin; 21 | 22 | /// 注销存储插件 23 | /// - Parameter cla: 待注销的插件类型 Class 24 | - (void)unregisterStorePluginWithPluginClass:(Class)cla; 25 | 26 | #pragma mark - get 27 | 28 | - (nullable id)objectForKey:(NSString *)key; 29 | - (void)objectForKey:(NSString *)key completion:(SAStoreManagerCompletion)completion; 30 | 31 | - (nullable NSString *)stringForKey:(NSString *)key; 32 | - (nullable NSArray *)arrayForKey:(NSString *)key; 33 | - (nullable NSDictionary *)dictionaryForKey:(NSString *)key; 34 | - (nullable NSData *)dataForKey:(NSString *)key; 35 | - (NSInteger)integerForKey:(NSString *)key; 36 | - (float)floatForKey:(NSString *)key; 37 | - (double)doubleForKey:(NSString *)key; 38 | - (BOOL)boolForKey:(NSString *)key; 39 | 40 | #pragma mark - set 41 | 42 | - (void)setObject:(nullable id)object forKey:(NSString *)key; 43 | 44 | - (void)setInteger:(NSInteger)value forKey:(NSString *)key; 45 | - (void)setFloat:(float)value forKey:(NSString *)key; 46 | - (void)setDouble:(double)value forKey:(NSString *)key; 47 | - (void)setBool:(BOOL)value forKey:(NSString *)key; 48 | 49 | #pragma mark - remove 50 | 51 | - (void)removeObjectForKey:(NSString *)key; 52 | 53 | @end 54 | 55 | NS_ASSUME_NONNULL_END 56 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SAModuleProtocol.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAModuleProtocol.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2024/10/30. 6 | // 7 | 8 | #import 9 | 10 | @class SAConfigOptions; 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @protocol SAModuleProtocol 15 | 16 | @property (nonatomic, assign, getter=isEnable) BOOL enable; 17 | @property (nonatomic, strong) SAConfigOptions *configOptions; 18 | + (instancetype)defaultManager; 19 | 20 | @optional 21 | - (void)updateServerURL:(NSString *)serverURL; 22 | 23 | @end 24 | 25 | NS_ASSUME_NONNULL_END 26 | 27 | #pragma mark - 28 | 29 | @protocol SAPropertyModuleProtocol 30 | 31 | @optional 32 | @property (nonatomic, copy, readonly, nullable) NSDictionary *properties; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SAStorePlugin.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAStorePlugin.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/1. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @protocol SAStorePlugin 14 | 15 | - (NSString *)type; 16 | 17 | - (nullable id)objectForKey:(NSString *)key; 18 | - (void)setObject:(nullable id)value forKey:(NSString *)key; 19 | - (void)removeObjectForKey:(NSString *)key; 20 | 21 | @optional 22 | /// 可以用于将一些重要特殊的 key 进行迁移操作 23 | /// 24 | /// SDK 会在注册新插件时,调用该方法 25 | /// 该方法可能会调用多次,每次调用会传入之前注册的插件 26 | /// 27 | /// @param oldPlugin 旧插件 28 | - (void)upgradeWithOldPlugin:(id)oldPlugin; 29 | 30 | /// 注册自定义存储插件,是否忽略历史旧数据 31 | /// 32 | /// 如果未实现,则默认不忽略,即迁移历史数据迁移 33 | /// 如果要求忽略旧插件的本地存储历史数据,则实现该接口,并返回 YES 34 | /// 35 | /// @return 是否忽略 36 | - (BOOL)isIgnoreOldData; 37 | @end 38 | 39 | NS_ASSUME_NONNULL_END 40 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsExtension.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by  储强盛 on 2023/8/18. 6 | // Copyright © 2015-2023 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "SensorsAnalyticsSDK+Public.h" 12 | #import "SASecurityPolicy.h" 13 | #import "SAConfigOptions.h" 14 | #import "SAConstants.h" 15 | 16 | #import "SAAESStorePlugin.h" 17 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsSDK+JavaScriptBridge.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+JavaScriptBridge.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/13. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #if TARGET_OS_IOS || TARGET_OS_OSX 10 | 11 | #import "SensorsAnalyticsSDK.h" 12 | 13 | NS_ASSUME_NONNULL_BEGIN 14 | 15 | @interface SensorsAnalyticsSDK (JavaScriptBridge) 16 | 17 | - (void)trackFromH5WithEvent:(NSString *)eventInfo; 18 | 19 | - (void)trackFromH5WithEvent:(NSString *)eventInfo enableVerify:(BOOL)enableVerify; 20 | 21 | @end 22 | 23 | @interface SAConfigOptions (JavaScriptBridge) 24 | 25 | /// 是否开启 WKWebView 的 H5 打通功能,该功能默认是关闭的 26 | @property (nonatomic) BOOL enableJavaScriptBridge; 27 | 28 | @end 29 | 30 | NS_ASSUME_NONNULL_END 31 | 32 | #endif 33 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsSDK+SAAppExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+SAAppExtension.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2022/5/16. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SensorsAnalyticsSDK.h" 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SensorsAnalyticsSDK (SAAppExtension) 14 | 15 | /** 16 | @abstract 17 | * Track App Extension groupIdentifier 中缓存的数据 18 | * 19 | * @param groupIdentifier groupIdentifier 20 | * @param completion 完成 track 后的 callback 21 | */ 22 | - (void)trackEventFromExtensionWithGroupIdentifier:(NSString *)groupIdentifier completion:(void (^)(NSString *groupIdentifier, NSArray *events)) completion; 23 | 24 | @end 25 | 26 | NS_ASSUME_NONNULL_END 27 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Info.plist -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SensorsAnalyticsSDK { 2 | umbrella header "SensorsAnalyticsSDK.h" 3 | export * 4 | 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/SensorsAnalyticsSDK: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/tvos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/SensorsAnalyticsSDK -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_arm64_32_armv7k/SensorsAnalyticsSDK.framework/Headers/SAAESStorePlugin.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAAESStorePlugin.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/1. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SAStorePlugin.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @interface SAAESStorePlugin : NSObject 15 | 16 | @end 17 | 18 | NS_ASSUME_NONNULL_END 19 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_arm64_32_armv7k/SensorsAnalyticsSDK.framework/Headers/SABaseStoreManager.h: -------------------------------------------------------------------------------- 1 | // 2 | // SABaseStoreManager.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/8. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SAStorePlugin.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | typedef void(^SAStoreManagerCompletion)(id _Nullable object); 15 | 16 | @interface SABaseStoreManager : NSObject 17 | 18 | /// 注册存储插件 19 | /// - Parameter plugin: 需要注册的插件对象 20 | - (void)registerStorePlugin:(id)plugin; 21 | 22 | /// 注销存储插件 23 | /// - Parameter cla: 待注销的插件类型 Class 24 | - (void)unregisterStorePluginWithPluginClass:(Class)cla; 25 | 26 | #pragma mark - get 27 | 28 | - (nullable id)objectForKey:(NSString *)key; 29 | - (void)objectForKey:(NSString *)key completion:(SAStoreManagerCompletion)completion; 30 | 31 | - (nullable NSString *)stringForKey:(NSString *)key; 32 | - (nullable NSArray *)arrayForKey:(NSString *)key; 33 | - (nullable NSDictionary *)dictionaryForKey:(NSString *)key; 34 | - (nullable NSData *)dataForKey:(NSString *)key; 35 | - (NSInteger)integerForKey:(NSString *)key; 36 | - (float)floatForKey:(NSString *)key; 37 | - (double)doubleForKey:(NSString *)key; 38 | - (BOOL)boolForKey:(NSString *)key; 39 | 40 | #pragma mark - set 41 | 42 | - (void)setObject:(nullable id)object forKey:(NSString *)key; 43 | 44 | - (void)setInteger:(NSInteger)value forKey:(NSString *)key; 45 | - (void)setFloat:(float)value forKey:(NSString *)key; 46 | - (void)setDouble:(double)value forKey:(NSString *)key; 47 | - (void)setBool:(BOOL)value forKey:(NSString *)key; 48 | 49 | #pragma mark - remove 50 | 51 | - (void)removeObjectForKey:(NSString *)key; 52 | 53 | @end 54 | 55 | NS_ASSUME_NONNULL_END 56 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_arm64_32_armv7k/SensorsAnalyticsSDK.framework/Headers/SAModuleProtocol.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAModuleProtocol.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2024/10/30. 6 | // 7 | 8 | #import 9 | 10 | @class SAConfigOptions; 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @protocol SAModuleProtocol 15 | 16 | @property (nonatomic, assign, getter=isEnable) BOOL enable; 17 | @property (nonatomic, strong) SAConfigOptions *configOptions; 18 | + (instancetype)defaultManager; 19 | 20 | @optional 21 | - (void)updateServerURL:(NSString *)serverURL; 22 | 23 | @end 24 | 25 | NS_ASSUME_NONNULL_END 26 | 27 | #pragma mark - 28 | 29 | @protocol SAPropertyModuleProtocol 30 | 31 | @optional 32 | @property (nonatomic, copy, readonly, nullable) NSDictionary *properties; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_arm64_32_armv7k/SensorsAnalyticsSDK.framework/Headers/SAStorePlugin.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAStorePlugin.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/1. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @protocol SAStorePlugin 14 | 15 | - (NSString *)type; 16 | 17 | - (nullable id)objectForKey:(NSString *)key; 18 | - (void)setObject:(nullable id)value forKey:(NSString *)key; 19 | - (void)removeObjectForKey:(NSString *)key; 20 | 21 | @optional 22 | /// 可以用于将一些重要特殊的 key 进行迁移操作 23 | /// 24 | /// SDK 会在注册新插件时,调用该方法 25 | /// 该方法可能会调用多次,每次调用会传入之前注册的插件 26 | /// 27 | /// @param oldPlugin 旧插件 28 | - (void)upgradeWithOldPlugin:(id)oldPlugin; 29 | 30 | /// 注册自定义存储插件,是否忽略历史旧数据 31 | /// 32 | /// 如果未实现,则默认不忽略,即迁移历史数据迁移 33 | /// 如果要求忽略旧插件的本地存储历史数据,则实现该接口,并返回 YES 34 | /// 35 | /// @return 是否忽略 36 | - (BOOL)isIgnoreOldData; 37 | @end 38 | 39 | NS_ASSUME_NONNULL_END 40 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_arm64_32_armv7k/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsExtension.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by  储强盛 on 2023/8/18. 6 | // Copyright © 2015-2023 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "SensorsAnalyticsSDK+Public.h" 12 | #import "SASecurityPolicy.h" 13 | #import "SAConfigOptions.h" 14 | #import "SAConstants.h" 15 | 16 | #import "SAAESStorePlugin.h" 17 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_arm64_32_armv7k/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsSDK+JavaScriptBridge.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+JavaScriptBridge.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/13. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #if TARGET_OS_IOS || TARGET_OS_OSX 10 | 11 | #import "SensorsAnalyticsSDK.h" 12 | 13 | NS_ASSUME_NONNULL_BEGIN 14 | 15 | @interface SensorsAnalyticsSDK (JavaScriptBridge) 16 | 17 | - (void)trackFromH5WithEvent:(NSString *)eventInfo; 18 | 19 | - (void)trackFromH5WithEvent:(NSString *)eventInfo enableVerify:(BOOL)enableVerify; 20 | 21 | @end 22 | 23 | @interface SAConfigOptions (JavaScriptBridge) 24 | 25 | /// 是否开启 WKWebView 的 H5 打通功能,该功能默认是关闭的 26 | @property (nonatomic) BOOL enableJavaScriptBridge; 27 | 28 | @end 29 | 30 | NS_ASSUME_NONNULL_END 31 | 32 | #endif 33 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_arm64_32_armv7k/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsSDK+SAAppExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+SAAppExtension.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2022/5/16. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SensorsAnalyticsSDK.h" 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SensorsAnalyticsSDK (SAAppExtension) 14 | 15 | /** 16 | @abstract 17 | * Track App Extension groupIdentifier 中缓存的数据 18 | * 19 | * @param groupIdentifier groupIdentifier 20 | * @param completion 完成 track 后的 callback 21 | */ 22 | - (void)trackEventFromExtensionWithGroupIdentifier:(NSString *)groupIdentifier completion:(void (^)(NSString *groupIdentifier, NSArray *events)) completion; 23 | 24 | @end 25 | 26 | NS_ASSUME_NONNULL_END 27 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_arm64_32_armv7k/SensorsAnalyticsSDK.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_arm64_32_armv7k/SensorsAnalyticsSDK.framework/Info.plist -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_arm64_32_armv7k/SensorsAnalyticsSDK.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SensorsAnalyticsSDK { 2 | umbrella header "SensorsAnalyticsSDK.h" 3 | export * 4 | 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_arm64_32_armv7k/SensorsAnalyticsSDK.framework/SensorsAnalyticsSDK: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_arm64_32_armv7k/SensorsAnalyticsSDK.framework/SensorsAnalyticsSDK -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SAAESStorePlugin.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAAESStorePlugin.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/1. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SAStorePlugin.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @interface SAAESStorePlugin : NSObject 15 | 16 | @end 17 | 18 | NS_ASSUME_NONNULL_END 19 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SABaseStoreManager.h: -------------------------------------------------------------------------------- 1 | // 2 | // SABaseStoreManager.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/8. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SAStorePlugin.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | typedef void(^SAStoreManagerCompletion)(id _Nullable object); 15 | 16 | @interface SABaseStoreManager : NSObject 17 | 18 | /// 注册存储插件 19 | /// - Parameter plugin: 需要注册的插件对象 20 | - (void)registerStorePlugin:(id)plugin; 21 | 22 | /// 注销存储插件 23 | /// - Parameter cla: 待注销的插件类型 Class 24 | - (void)unregisterStorePluginWithPluginClass:(Class)cla; 25 | 26 | #pragma mark - get 27 | 28 | - (nullable id)objectForKey:(NSString *)key; 29 | - (void)objectForKey:(NSString *)key completion:(SAStoreManagerCompletion)completion; 30 | 31 | - (nullable NSString *)stringForKey:(NSString *)key; 32 | - (nullable NSArray *)arrayForKey:(NSString *)key; 33 | - (nullable NSDictionary *)dictionaryForKey:(NSString *)key; 34 | - (nullable NSData *)dataForKey:(NSString *)key; 35 | - (NSInteger)integerForKey:(NSString *)key; 36 | - (float)floatForKey:(NSString *)key; 37 | - (double)doubleForKey:(NSString *)key; 38 | - (BOOL)boolForKey:(NSString *)key; 39 | 40 | #pragma mark - set 41 | 42 | - (void)setObject:(nullable id)object forKey:(NSString *)key; 43 | 44 | - (void)setInteger:(NSInteger)value forKey:(NSString *)key; 45 | - (void)setFloat:(float)value forKey:(NSString *)key; 46 | - (void)setDouble:(double)value forKey:(NSString *)key; 47 | - (void)setBool:(BOOL)value forKey:(NSString *)key; 48 | 49 | #pragma mark - remove 50 | 51 | - (void)removeObjectForKey:(NSString *)key; 52 | 53 | @end 54 | 55 | NS_ASSUME_NONNULL_END 56 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SAModuleProtocol.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAModuleProtocol.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2024/10/30. 6 | // 7 | 8 | #import 9 | 10 | @class SAConfigOptions; 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @protocol SAModuleProtocol 15 | 16 | @property (nonatomic, assign, getter=isEnable) BOOL enable; 17 | @property (nonatomic, strong) SAConfigOptions *configOptions; 18 | + (instancetype)defaultManager; 19 | 20 | @optional 21 | - (void)updateServerURL:(NSString *)serverURL; 22 | 23 | @end 24 | 25 | NS_ASSUME_NONNULL_END 26 | 27 | #pragma mark - 28 | 29 | @protocol SAPropertyModuleProtocol 30 | 31 | @optional 32 | @property (nonatomic, copy, readonly, nullable) NSDictionary *properties; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SAStorePlugin.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAStorePlugin.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/1. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @protocol SAStorePlugin 14 | 15 | - (NSString *)type; 16 | 17 | - (nullable id)objectForKey:(NSString *)key; 18 | - (void)setObject:(nullable id)value forKey:(NSString *)key; 19 | - (void)removeObjectForKey:(NSString *)key; 20 | 21 | @optional 22 | /// 可以用于将一些重要特殊的 key 进行迁移操作 23 | /// 24 | /// SDK 会在注册新插件时,调用该方法 25 | /// 该方法可能会调用多次,每次调用会传入之前注册的插件 26 | /// 27 | /// @param oldPlugin 旧插件 28 | - (void)upgradeWithOldPlugin:(id)oldPlugin; 29 | 30 | /// 注册自定义存储插件,是否忽略历史旧数据 31 | /// 32 | /// 如果未实现,则默认不忽略,即迁移历史数据迁移 33 | /// 如果要求忽略旧插件的本地存储历史数据,则实现该接口,并返回 YES 34 | /// 35 | /// @return 是否忽略 36 | - (BOOL)isIgnoreOldData; 37 | @end 38 | 39 | NS_ASSUME_NONNULL_END 40 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsExtension.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by  储强盛 on 2023/8/18. 6 | // Copyright © 2015-2023 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "SensorsAnalyticsSDK+Public.h" 12 | #import "SASecurityPolicy.h" 13 | #import "SAConfigOptions.h" 14 | #import "SAConstants.h" 15 | 16 | #import "SAAESStorePlugin.h" 17 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsSDK+JavaScriptBridge.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+JavaScriptBridge.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/13. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #if TARGET_OS_IOS || TARGET_OS_OSX 10 | 11 | #import "SensorsAnalyticsSDK.h" 12 | 13 | NS_ASSUME_NONNULL_BEGIN 14 | 15 | @interface SensorsAnalyticsSDK (JavaScriptBridge) 16 | 17 | - (void)trackFromH5WithEvent:(NSString *)eventInfo; 18 | 19 | - (void)trackFromH5WithEvent:(NSString *)eventInfo enableVerify:(BOOL)enableVerify; 20 | 21 | @end 22 | 23 | @interface SAConfigOptions (JavaScriptBridge) 24 | 25 | /// 是否开启 WKWebView 的 H5 打通功能,该功能默认是关闭的 26 | @property (nonatomic) BOOL enableJavaScriptBridge; 27 | 28 | @end 29 | 30 | NS_ASSUME_NONNULL_END 31 | 32 | #endif 33 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsSDK+SAAppExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+SAAppExtension.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2022/5/16. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SensorsAnalyticsSDK.h" 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SensorsAnalyticsSDK (SAAppExtension) 14 | 15 | /** 16 | @abstract 17 | * Track App Extension groupIdentifier 中缓存的数据 18 | * 19 | * @param groupIdentifier groupIdentifier 20 | * @param completion 完成 track 后的 callback 21 | */ 22 | - (void)trackEventFromExtensionWithGroupIdentifier:(NSString *)groupIdentifier completion:(void (^)(NSString *groupIdentifier, NSArray *events)) completion; 23 | 24 | @end 25 | 26 | NS_ASSUME_NONNULL_END 27 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Info.plist -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SensorsAnalyticsSDK { 2 | umbrella header "SensorsAnalyticsSDK.h" 3 | export * 4 | 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/SensorsAnalyticsSDK: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalyticsSDK/Source/Base/SensorsAnalyticsSDK.xcframework/watchos-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/SensorsAnalyticsSDK -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | AvailableLibraries 6 | 7 | 8 | BinaryPath 9 | SensorsAnalyticsSDK.framework/SensorsAnalyticsSDK 10 | LibraryIdentifier 11 | ios-arm64 12 | LibraryPath 13 | SensorsAnalyticsSDK.framework 14 | SupportedArchitectures 15 | 16 | arm64 17 | 18 | SupportedPlatform 19 | ios 20 | 21 | 22 | BinaryPath 23 | SensorsAnalyticsSDK.framework/SensorsAnalyticsSDK 24 | LibraryIdentifier 25 | ios-arm64_x86_64-simulator 26 | LibraryPath 27 | SensorsAnalyticsSDK.framework 28 | SupportedArchitectures 29 | 30 | arm64 31 | x86_64 32 | 33 | SupportedPlatform 34 | ios 35 | SupportedPlatformVariant 36 | simulator 37 | 38 | 39 | CFBundlePackageType 40 | XFWK 41 | XCFrameworkFormatVersion 42 | 1.0 43 | 44 | 45 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SAAESStorePlugin.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAAESStorePlugin.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/1. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SAStorePlugin.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @interface SAAESStorePlugin : NSObject 15 | 16 | @end 17 | 18 | NS_ASSUME_NONNULL_END 19 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SAAdvertisingConfig.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAAdvertisingConfig.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2023/8/16. 6 | // Copyright © 2015-2023 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SASecretKey.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @interface SAAdvertisingConfig : NSObject 15 | 16 | - (instancetype)initWithServerUrl:(NSString *)serverUrl events:(NSArray*)events secretKey:(nullable SASecretKey *)key; 17 | 18 | /// enable remarketing or not, default is NO 19 | @property (nonatomic, assign) BOOL enableRemarketing; 20 | 21 | /// url that wakeup app, pass the url to SDK in case that you delay init SDK 22 | @property (nonatomic, copy) NSString *wakeupUrl; 23 | 24 | @end 25 | 26 | NS_ASSUME_NONNULL_END 27 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SABaseStoreManager.h: -------------------------------------------------------------------------------- 1 | // 2 | // SABaseStoreManager.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/8. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SAStorePlugin.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | typedef void(^SAStoreManagerCompletion)(id _Nullable object); 15 | 16 | @interface SABaseStoreManager : NSObject 17 | 18 | /// 注册存储插件 19 | /// - Parameter plugin: 需要注册的插件对象 20 | - (void)registerStorePlugin:(id)plugin; 21 | 22 | /// 注销存储插件 23 | /// - Parameter cla: 待注销的插件类型 Class 24 | - (void)unregisterStorePluginWithPluginClass:(Class)cla; 25 | 26 | #pragma mark - get 27 | 28 | - (nullable id)objectForKey:(NSString *)key; 29 | - (void)objectForKey:(NSString *)key completion:(SAStoreManagerCompletion)completion; 30 | 31 | - (nullable NSString *)stringForKey:(NSString *)key; 32 | - (nullable NSArray *)arrayForKey:(NSString *)key; 33 | - (nullable NSDictionary *)dictionaryForKey:(NSString *)key; 34 | - (nullable NSData *)dataForKey:(NSString *)key; 35 | - (NSInteger)integerForKey:(NSString *)key; 36 | - (float)floatForKey:(NSString *)key; 37 | - (double)doubleForKey:(NSString *)key; 38 | - (BOOL)boolForKey:(NSString *)key; 39 | 40 | #pragma mark - set 41 | 42 | - (void)setObject:(nullable id)object forKey:(NSString *)key; 43 | 44 | - (void)setInteger:(NSInteger)value forKey:(NSString *)key; 45 | - (void)setFloat:(float)value forKey:(NSString *)key; 46 | - (void)setDouble:(double)value forKey:(NSString *)key; 47 | - (void)setBool:(BOOL)value forKey:(NSString *)key; 48 | 49 | #pragma mark - remove 50 | 51 | - (void)removeObjectForKey:(NSString *)key; 52 | 53 | @end 54 | 55 | NS_ASSUME_NONNULL_END 56 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SAConfigOptions+AppPush.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAConfigOptions+AppPush.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/9. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SAConfigOptions.h" 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SAConfigOptions (AppPush) 14 | 15 | ///开启自动采集通知 16 | @property (nonatomic, assign) BOOL enableTrackPush API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("AppPush not supported for iOS extensions."); 17 | 18 | @end 19 | 20 | NS_ASSUME_NONNULL_END 21 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SAConfigOptions+Encrypt.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAConfigOptions+Encrypt.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 彭远洋 on 2021/4/16. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SAEncryptProtocol.h" 10 | #import "SAConfigOptions.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @interface SAConfigOptions (Encrypt) 15 | 16 | /// 是否开启埋点数据入库加密 17 | @property (nonatomic, assign) BOOL enableEncrypt API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("Encrypt not supported for iOS extensions."); 18 | 19 | /// 是否开启埋点数据上报传输加密 20 | @property (nonatomic, assign) BOOL enableTransportEncrypt API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("Encrypt not supported for iOS extensions."); 21 | 22 | /// 注册埋点加密插件 23 | - (void)registerEncryptor:(id)encryptor API_UNAVAILABLE(macos); 24 | 25 | /// 存储公钥的回调。务必保存秘钥所有字段信息 26 | @property (nonatomic, copy) void (^saveSecretKey)(SASecretKey * _Nonnull secretKey) API_UNAVAILABLE(macos); 27 | 28 | /// 获取公钥的回调。务必回传秘钥所有字段信息 29 | @property (nonatomic, copy) SASecretKey * _Nonnull (^loadSecretKey)(void) API_UNAVAILABLE(macos); 30 | 31 | @end 32 | 33 | NS_ASSUME_NONNULL_END 34 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SAConfigOptions+Exception.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAConfigOptions+Exception.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/10. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SAConfigOptions.h" 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SAConfigOptions (Exception) 14 | 15 | /// 是否自动收集 App Crash 日志,该功能默认是关闭的 16 | @property (nonatomic, assign) BOOL enableTrackAppCrash API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("Exception not supported for iOS extensions."); 17 | 18 | @end 19 | 20 | NS_ASSUME_NONNULL_END 21 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SAConfigOptions+Exposure.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAConfigOptions+Exposure.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2022/8/9. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | 10 | #import 11 | #import "SAConfigOptions.h" 12 | #import "SAExposureConfig.h" 13 | #import "SAExposureData.h" 14 | #import "SensorsAnalyticsSDK+Exposure.h" 15 | #import "UIView+ExposureIdentifier.h" 16 | 17 | NS_ASSUME_NONNULL_BEGIN 18 | 19 | @interface SAConfigOptions (Exposure) 20 | 21 | /// global exposure config settings, default value with areaRate = 0, stayDuration = 0, repeated = YES 22 | @property (nonatomic, copy) SAExposureConfig *exposureConfig; 23 | 24 | /// default value is NO 25 | @property (nonatomic, assign) BOOL enableExposure; 26 | 27 | @end 28 | 29 | NS_ASSUME_NONNULL_END 30 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SAConfigOptions+RemoteConfig.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAConfigOptions+RemoteConfig.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/10. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SAConfigOptions.h" 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SAConfigOptions (RemoteConfig) 14 | 15 | #pragma mark - 请求远程配置策略 16 | /// 请求远程配置地址,默认从 serverURL 解析 17 | @property (nonatomic, copy) NSString *remoteConfigURL API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("RemoteConfig not supported for iOS extensions."); 18 | 19 | /// 禁用随机时间请求远程配置 20 | @property (nonatomic, assign) BOOL disableRandomTimeRequestRemoteConfig API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("RemoteConfig not supported for iOS extensions."); 21 | 22 | /// 最小间隔时长,单位:小时,默认 24 23 | @property (nonatomic, assign) NSInteger minRequestHourInterval API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("RemoteConfig not supported for iOS extensions."); 24 | 25 | /// 最大间隔时长,单位:小时,默认 48 26 | @property (nonatomic, assign) NSInteger maxRequestHourInterval API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("RemoteConfig not supported for iOS extensions."); 27 | 28 | @end 29 | 30 | NS_ASSUME_NONNULL_END 31 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SAEncryptProtocol.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAEncryptProtocol.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 彭远洋 on 2021/4/14. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @protocol SAEncryptProtocol 12 | 13 | /// 返回对称加密的类型,例如 AES 14 | - (NSString *)symmetricEncryptType; 15 | 16 | /// 返回非对称加密的类型,例如 RSA 17 | - (NSString *)asymmetricEncryptType; 18 | 19 | /// 返回压缩后的事件数据 20 | /// @param event gzip 压缩后的事件数据 21 | - (NSString *)encryptEvent:(NSData *)event; 22 | 23 | /// 返回压缩后的对称密钥数据 24 | /// @param publicKey 非对称加密算法的公钥,用于加密对称密钥 25 | - (NSString *)encryptSymmetricKeyWithPublicKey:(NSString *)publicKey; 26 | 27 | @end 28 | 29 | @protocol SAEventEncryptProtocol 30 | 31 | - (NSString *)encryptEventRecord:(NSData *)eventRecord; 32 | - (NSData *)decryptEventRecord:(NSString *)eventRecord; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SAExposureConfig.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAExposureConfig.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2022/8/9. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | #import 9 | 10 | NS_ASSUME_NONNULL_BEGIN 11 | 12 | @interface SAExposureConfig : NSObject 13 | 14 | - (instancetype)init NS_UNAVAILABLE; 15 | 16 | /// init method 17 | /// @param areaRate visable area rate, 0 ~ 1, default value is 0 18 | /// @param stayDuration stay duration, default value is 0, unit is second 19 | /// @param repeated allow repeated exposure, default value is YES 20 | - (instancetype)initWithAreaRate:(CGFloat)areaRate stayDuration:(NSTimeInterval)stayDuration repeated:(BOOL)repeated; 21 | 22 | @end 23 | 24 | NS_ASSUME_NONNULL_END 25 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SAExposureListener.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAExposureListener.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2023/4/18. 6 | // Copyright © 2015-2023 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | @class SAExposureData; 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @protocol SAExposureListener 15 | 16 | @optional 17 | - (BOOL)shouldExpose:(UIView *)view withData:(SAExposureData *)data; 18 | - (void)didExpose:(UIView *)view withData:(SAExposureData *)data; 19 | 20 | @end 21 | 22 | NS_ASSUME_NONNULL_END 23 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SAModuleProtocol.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAModuleProtocol.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2024/10/30. 6 | // 7 | 8 | #import 9 | 10 | @class SAConfigOptions; 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @protocol SAModuleProtocol 15 | 16 | @property (nonatomic, assign, getter=isEnable) BOOL enable; 17 | @property (nonatomic, strong) SAConfigOptions *configOptions; 18 | + (instancetype)defaultManager; 19 | 20 | @optional 21 | - (void)updateServerURL:(NSString *)serverURL; 22 | 23 | @end 24 | 25 | NS_ASSUME_NONNULL_END 26 | 27 | #pragma mark - 28 | 29 | @protocol SAPropertyModuleProtocol 30 | 31 | @optional 32 | @property (nonatomic, copy, readonly, nullable) NSDictionary *properties; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SASecretKey.h: -------------------------------------------------------------------------------- 1 | // 2 | // SASecretKey.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by wenquan on 2021/6/26. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | /// 密钥信息 14 | @interface SASecretKey : NSObject 15 | 16 | /// 指定构造器,初始化时必须传入四个参数 17 | /// @param key 非对称加密时使用的公钥值 18 | /// @param version 非对称加密时使用的公钥值对应版本 19 | /// @param asymmetricEncryptType 非对称加密类型 20 | /// @param symmetricEncryptType 对称加密类型 21 | /// @return 返回秘钥实例 22 | - (instancetype)initWithKey:(NSString *)key 23 | version:(NSInteger)version 24 | asymmetricEncryptType:(NSString *)asymmetricEncryptType 25 | symmetricEncryptType:(NSString *)symmetricEncryptType; 26 | 27 | /// 禁用 init 初始化方法 28 | - (instancetype)init NS_UNAVAILABLE; 29 | 30 | /// 密钥版本 31 | @property (nonatomic, assign, readonly) NSInteger version; 32 | 33 | /// 密钥值 34 | @property (nonatomic, copy, readonly) NSString *key; 35 | 36 | /// 对称加密类型 37 | @property (nonatomic, copy, readonly) NSString *symmetricEncryptType; 38 | 39 | /// 非对称加密类型 40 | @property (nonatomic, copy, readonly) NSString *asymmetricEncryptType; 41 | 42 | @end 43 | 44 | NS_ASSUME_NONNULL_END 45 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SAStorePlugin.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAStorePlugin.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/1. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @protocol SAStorePlugin 14 | 15 | - (NSString *)type; 16 | 17 | - (nullable id)objectForKey:(NSString *)key; 18 | - (void)setObject:(nullable id)value forKey:(NSString *)key; 19 | - (void)removeObjectForKey:(NSString *)key; 20 | 21 | @optional 22 | /// 可以用于将一些重要特殊的 key 进行迁移操作 23 | /// 24 | /// SDK 会在注册新插件时,调用该方法 25 | /// 该方法可能会调用多次,每次调用会传入之前注册的插件 26 | /// 27 | /// @param oldPlugin 旧插件 28 | - (void)upgradeWithOldPlugin:(id)oldPlugin; 29 | 30 | /// 注册自定义存储插件,是否忽略历史旧数据 31 | /// 32 | /// 如果未实现,则默认不忽略,即迁移历史数据迁移 33 | /// 如果要求忽略旧插件的本地存储历史数据,则实现该接口,并返回 YES 34 | /// 35 | /// @return 是否忽略 36 | - (BOOL)isIgnoreOldData; 37 | @end 38 | 39 | NS_ASSUME_NONNULL_END 40 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsExtension.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by  储强盛 on 2023/8/18. 6 | // Copyright © 2015-2023 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "SensorsAnalyticsSDK+Public.h" 12 | #import "SASecurityPolicy.h" 13 | #import "SAConfigOptions.h" 14 | #import "SAConstants.h" 15 | 16 | #import "SAAESStorePlugin.h" 17 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsSDK+DebugMode.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+DebugMode.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/11. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SensorsAnalyticsSDK.h" 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SensorsAnalyticsSDK (DebugMode) 14 | 15 | /** 16 | * @abstract 17 | * 设置是否显示 debugInfoView,对于 iOS,是 UIAlertView/UIAlertController 18 | * 19 | * @discussion 20 | * 设置是否显示 debugInfoView,默认显示 21 | * 22 | * @param show 是否显示 23 | */ 24 | - (void)showDebugInfoView:(BOOL)show API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("DebugMode not supported for iOS extensions."); 25 | 26 | - (SensorsAnalyticsDebugMode)debugMode; 27 | 28 | @end 29 | 30 | NS_ASSUME_NONNULL_END 31 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsSDK+Exposure.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+Exposure.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2022/8/9. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SensorsAnalyticsSDK.h" 10 | #import 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @interface SensorsAnalyticsSDK (Exposure) 15 | 16 | /// use this method to add exposure to certain view 17 | /// - Parameters: 18 | /// - view: view to expose 19 | /// - data: exposure data, such as event name, properties, etc. 20 | - (void)addExposureView:(UIView *)view withData:(SAExposureData *)data NS_EXTENSION_UNAVAILABLE("Exposure not supported for iOS extensions."); 21 | 22 | /// remove exposure for certain view 23 | /// - Parameters: 24 | /// - view: view that need to remove exposure 25 | /// - identifier: exposure identifier to identify certain view, if no identifier specified when addExposureView 26 | - (void)removeExposureView:(UIView *)view withExposureIdentifier:(nullable NSString *)identifier NS_EXTENSION_UNAVAILABLE("Exposure not supported for iOS extensions."); 27 | 28 | /// update properties for certain view that need to expose 29 | /// - Parameters: 30 | /// - view: view to expose 31 | /// - properties: properties to update 32 | - (void)updateExposure:(UIView *)view withProperties:(NSDictionary *)properties NS_EXTENSION_UNAVAILABLE("Exposure not supported for iOS extensions."); 33 | 34 | @end 35 | 36 | NS_ASSUME_NONNULL_END 37 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsSDK+JavaScriptBridge.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+JavaScriptBridge.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/13. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #if TARGET_OS_IOS || TARGET_OS_OSX 10 | 11 | #import "SensorsAnalyticsSDK.h" 12 | 13 | NS_ASSUME_NONNULL_BEGIN 14 | 15 | @interface SensorsAnalyticsSDK (JavaScriptBridge) 16 | 17 | - (void)trackFromH5WithEvent:(NSString *)eventInfo; 18 | 19 | - (void)trackFromH5WithEvent:(NSString *)eventInfo enableVerify:(BOOL)enableVerify; 20 | 21 | @end 22 | 23 | @interface SAConfigOptions (JavaScriptBridge) 24 | 25 | /// 是否开启 WKWebView 的 H5 打通功能,该功能默认是关闭的 26 | @property (nonatomic) BOOL enableJavaScriptBridge; 27 | 28 | @end 29 | 30 | NS_ASSUME_NONNULL_END 31 | 32 | #endif 33 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsSDK+SAAppExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+SAAppExtension.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2022/5/16. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SensorsAnalyticsSDK.h" 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SensorsAnalyticsSDK (SAAppExtension) 14 | 15 | /** 16 | @abstract 17 | * Track App Extension groupIdentifier 中缓存的数据 18 | * 19 | * @param groupIdentifier groupIdentifier 20 | * @param completion 完成 track 后的 callback 21 | */ 22 | - (void)trackEventFromExtensionWithGroupIdentifier:(NSString *)groupIdentifier completion:(void (^)(NSString *groupIdentifier, NSArray *events)) completion; 23 | 24 | @end 25 | 26 | NS_ASSUME_NONNULL_END 27 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/UIView+ExposureIdentifier.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+ExposureIdentifier.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2022/8/22. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface UIView (SAExposureIdentifier) 14 | 15 | @property (nonatomic, copy, nullable) NSString *exposureIdentifier; 16 | 17 | @end 18 | 19 | NS_ASSUME_NONNULL_END 20 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Headers/UIView+SensorsAnalytics.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+SensorsAnalytics.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2022/8/29. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @protocol SAUIViewAutoTrackDelegate 14 | 15 | //UITableView 16 | @optional 17 | - (NSDictionary *)sensorsAnalytics_tableView:(UITableView *)tableView autoTrackPropertiesAtIndexPath:(NSIndexPath *)indexPath; 18 | 19 | //UICollectionView 20 | @optional 21 | - (NSDictionary *)sensorsAnalytics_collectionView:(UICollectionView *)collectionView autoTrackPropertiesAtIndexPath:(NSIndexPath *)indexPath; 22 | @end 23 | 24 | @interface UIView (SensorsAnalytics) 25 | 26 | /// viewID 27 | @property (nonatomic, copy) NSString *sensorsAnalyticsViewID; 28 | 29 | /// AutoTrack 时,是否忽略该 View 30 | @property (nonatomic, assign) BOOL sensorsAnalyticsIgnoreView; 31 | 32 | /// AutoTrack 发生在 SendAction 之前还是之后,默认是 SendAction 之前 33 | @property (nonatomic, assign) BOOL sensorsAnalyticsAutoTrackAfterSendAction; 34 | 35 | /// AutoTrack 时,View 的扩展属性 36 | @property (nonatomic, strong) NSDictionary *sensorsAnalyticsViewProperties; 37 | 38 | @property (nonatomic, weak, nullable) id sensorsAnalyticsDelegate; 39 | 40 | @end 41 | 42 | @interface UIImage (SensorsAnalytics) 43 | 44 | @property (nonatomic, copy) NSString* sensorsAnalyticsImageName; 45 | 46 | @end 47 | 48 | NS_ASSUME_NONNULL_END 49 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Info.plist -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SensorsAnalyticsSDK { 2 | umbrella header "SensorsAnalyticsSDK.h" 3 | export * 4 | 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/SensorsAnalyticsSDK: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64/SensorsAnalyticsSDK.framework/SensorsAnalyticsSDK -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SAAESStorePlugin.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAAESStorePlugin.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/1. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SAStorePlugin.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @interface SAAESStorePlugin : NSObject 15 | 16 | @end 17 | 18 | NS_ASSUME_NONNULL_END 19 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SAAdvertisingConfig.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAAdvertisingConfig.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2023/8/16. 6 | // Copyright © 2015-2023 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SASecretKey.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @interface SAAdvertisingConfig : NSObject 15 | 16 | - (instancetype)initWithServerUrl:(NSString *)serverUrl events:(NSArray*)events secretKey:(nullable SASecretKey *)key; 17 | 18 | /// enable remarketing or not, default is NO 19 | @property (nonatomic, assign) BOOL enableRemarketing; 20 | 21 | /// url that wakeup app, pass the url to SDK in case that you delay init SDK 22 | @property (nonatomic, copy) NSString *wakeupUrl; 23 | 24 | @end 25 | 26 | NS_ASSUME_NONNULL_END 27 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SABaseStoreManager.h: -------------------------------------------------------------------------------- 1 | // 2 | // SABaseStoreManager.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/8. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SAStorePlugin.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | typedef void(^SAStoreManagerCompletion)(id _Nullable object); 15 | 16 | @interface SABaseStoreManager : NSObject 17 | 18 | /// 注册存储插件 19 | /// - Parameter plugin: 需要注册的插件对象 20 | - (void)registerStorePlugin:(id)plugin; 21 | 22 | /// 注销存储插件 23 | /// - Parameter cla: 待注销的插件类型 Class 24 | - (void)unregisterStorePluginWithPluginClass:(Class)cla; 25 | 26 | #pragma mark - get 27 | 28 | - (nullable id)objectForKey:(NSString *)key; 29 | - (void)objectForKey:(NSString *)key completion:(SAStoreManagerCompletion)completion; 30 | 31 | - (nullable NSString *)stringForKey:(NSString *)key; 32 | - (nullable NSArray *)arrayForKey:(NSString *)key; 33 | - (nullable NSDictionary *)dictionaryForKey:(NSString *)key; 34 | - (nullable NSData *)dataForKey:(NSString *)key; 35 | - (NSInteger)integerForKey:(NSString *)key; 36 | - (float)floatForKey:(NSString *)key; 37 | - (double)doubleForKey:(NSString *)key; 38 | - (BOOL)boolForKey:(NSString *)key; 39 | 40 | #pragma mark - set 41 | 42 | - (void)setObject:(nullable id)object forKey:(NSString *)key; 43 | 44 | - (void)setInteger:(NSInteger)value forKey:(NSString *)key; 45 | - (void)setFloat:(float)value forKey:(NSString *)key; 46 | - (void)setDouble:(double)value forKey:(NSString *)key; 47 | - (void)setBool:(BOOL)value forKey:(NSString *)key; 48 | 49 | #pragma mark - remove 50 | 51 | - (void)removeObjectForKey:(NSString *)key; 52 | 53 | @end 54 | 55 | NS_ASSUME_NONNULL_END 56 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SAConfigOptions+AppPush.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAConfigOptions+AppPush.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/9. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SAConfigOptions.h" 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SAConfigOptions (AppPush) 14 | 15 | ///开启自动采集通知 16 | @property (nonatomic, assign) BOOL enableTrackPush API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("AppPush not supported for iOS extensions."); 17 | 18 | @end 19 | 20 | NS_ASSUME_NONNULL_END 21 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SAConfigOptions+Encrypt.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAConfigOptions+Encrypt.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 彭远洋 on 2021/4/16. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SAEncryptProtocol.h" 10 | #import "SAConfigOptions.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @interface SAConfigOptions (Encrypt) 15 | 16 | /// 是否开启埋点数据入库加密 17 | @property (nonatomic, assign) BOOL enableEncrypt API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("Encrypt not supported for iOS extensions."); 18 | 19 | /// 是否开启埋点数据上报传输加密 20 | @property (nonatomic, assign) BOOL enableTransportEncrypt API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("Encrypt not supported for iOS extensions."); 21 | 22 | /// 注册埋点加密插件 23 | - (void)registerEncryptor:(id)encryptor API_UNAVAILABLE(macos); 24 | 25 | /// 存储公钥的回调。务必保存秘钥所有字段信息 26 | @property (nonatomic, copy) void (^saveSecretKey)(SASecretKey * _Nonnull secretKey) API_UNAVAILABLE(macos); 27 | 28 | /// 获取公钥的回调。务必回传秘钥所有字段信息 29 | @property (nonatomic, copy) SASecretKey * _Nonnull (^loadSecretKey)(void) API_UNAVAILABLE(macos); 30 | 31 | @end 32 | 33 | NS_ASSUME_NONNULL_END 34 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SAConfigOptions+Exception.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAConfigOptions+Exception.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/10. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SAConfigOptions.h" 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SAConfigOptions (Exception) 14 | 15 | /// 是否自动收集 App Crash 日志,该功能默认是关闭的 16 | @property (nonatomic, assign) BOOL enableTrackAppCrash API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("Exception not supported for iOS extensions."); 17 | 18 | @end 19 | 20 | NS_ASSUME_NONNULL_END 21 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SAConfigOptions+Exposure.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAConfigOptions+Exposure.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2022/8/9. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | 10 | #import 11 | #import "SAConfigOptions.h" 12 | #import "SAExposureConfig.h" 13 | #import "SAExposureData.h" 14 | #import "SensorsAnalyticsSDK+Exposure.h" 15 | #import "UIView+ExposureIdentifier.h" 16 | 17 | NS_ASSUME_NONNULL_BEGIN 18 | 19 | @interface SAConfigOptions (Exposure) 20 | 21 | /// global exposure config settings, default value with areaRate = 0, stayDuration = 0, repeated = YES 22 | @property (nonatomic, copy) SAExposureConfig *exposureConfig; 23 | 24 | /// default value is NO 25 | @property (nonatomic, assign) BOOL enableExposure; 26 | 27 | @end 28 | 29 | NS_ASSUME_NONNULL_END 30 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SAConfigOptions+RemoteConfig.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAConfigOptions+RemoteConfig.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/10. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SAConfigOptions.h" 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SAConfigOptions (RemoteConfig) 14 | 15 | #pragma mark - 请求远程配置策略 16 | /// 请求远程配置地址,默认从 serverURL 解析 17 | @property (nonatomic, copy) NSString *remoteConfigURL API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("RemoteConfig not supported for iOS extensions."); 18 | 19 | /// 禁用随机时间请求远程配置 20 | @property (nonatomic, assign) BOOL disableRandomTimeRequestRemoteConfig API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("RemoteConfig not supported for iOS extensions."); 21 | 22 | /// 最小间隔时长,单位:小时,默认 24 23 | @property (nonatomic, assign) NSInteger minRequestHourInterval API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("RemoteConfig not supported for iOS extensions."); 24 | 25 | /// 最大间隔时长,单位:小时,默认 48 26 | @property (nonatomic, assign) NSInteger maxRequestHourInterval API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("RemoteConfig not supported for iOS extensions."); 27 | 28 | @end 29 | 30 | NS_ASSUME_NONNULL_END 31 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SAEncryptProtocol.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAEncryptProtocol.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 彭远洋 on 2021/4/14. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @protocol SAEncryptProtocol 12 | 13 | /// 返回对称加密的类型,例如 AES 14 | - (NSString *)symmetricEncryptType; 15 | 16 | /// 返回非对称加密的类型,例如 RSA 17 | - (NSString *)asymmetricEncryptType; 18 | 19 | /// 返回压缩后的事件数据 20 | /// @param event gzip 压缩后的事件数据 21 | - (NSString *)encryptEvent:(NSData *)event; 22 | 23 | /// 返回压缩后的对称密钥数据 24 | /// @param publicKey 非对称加密算法的公钥,用于加密对称密钥 25 | - (NSString *)encryptSymmetricKeyWithPublicKey:(NSString *)publicKey; 26 | 27 | @end 28 | 29 | @protocol SAEventEncryptProtocol 30 | 31 | - (NSString *)encryptEventRecord:(NSData *)eventRecord; 32 | - (NSData *)decryptEventRecord:(NSString *)eventRecord; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SAExposureConfig.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAExposureConfig.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2022/8/9. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | #import 9 | 10 | NS_ASSUME_NONNULL_BEGIN 11 | 12 | @interface SAExposureConfig : NSObject 13 | 14 | - (instancetype)init NS_UNAVAILABLE; 15 | 16 | /// init method 17 | /// @param areaRate visable area rate, 0 ~ 1, default value is 0 18 | /// @param stayDuration stay duration, default value is 0, unit is second 19 | /// @param repeated allow repeated exposure, default value is YES 20 | - (instancetype)initWithAreaRate:(CGFloat)areaRate stayDuration:(NSTimeInterval)stayDuration repeated:(BOOL)repeated; 21 | 22 | @end 23 | 24 | NS_ASSUME_NONNULL_END 25 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SAExposureListener.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAExposureListener.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2023/4/18. 6 | // Copyright © 2015-2023 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | @class SAExposureData; 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @protocol SAExposureListener 15 | 16 | @optional 17 | - (BOOL)shouldExpose:(UIView *)view withData:(SAExposureData *)data; 18 | - (void)didExpose:(UIView *)view withData:(SAExposureData *)data; 19 | 20 | @end 21 | 22 | NS_ASSUME_NONNULL_END 23 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SAModuleProtocol.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAModuleProtocol.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2024/10/30. 6 | // 7 | 8 | #import 9 | 10 | @class SAConfigOptions; 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @protocol SAModuleProtocol 15 | 16 | @property (nonatomic, assign, getter=isEnable) BOOL enable; 17 | @property (nonatomic, strong) SAConfigOptions *configOptions; 18 | + (instancetype)defaultManager; 19 | 20 | @optional 21 | - (void)updateServerURL:(NSString *)serverURL; 22 | 23 | @end 24 | 25 | NS_ASSUME_NONNULL_END 26 | 27 | #pragma mark - 28 | 29 | @protocol SAPropertyModuleProtocol 30 | 31 | @optional 32 | @property (nonatomic, copy, readonly, nullable) NSDictionary *properties; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SASecretKey.h: -------------------------------------------------------------------------------- 1 | // 2 | // SASecretKey.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by wenquan on 2021/6/26. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | /// 密钥信息 14 | @interface SASecretKey : NSObject 15 | 16 | /// 指定构造器,初始化时必须传入四个参数 17 | /// @param key 非对称加密时使用的公钥值 18 | /// @param version 非对称加密时使用的公钥值对应版本 19 | /// @param asymmetricEncryptType 非对称加密类型 20 | /// @param symmetricEncryptType 对称加密类型 21 | /// @return 返回秘钥实例 22 | - (instancetype)initWithKey:(NSString *)key 23 | version:(NSInteger)version 24 | asymmetricEncryptType:(NSString *)asymmetricEncryptType 25 | symmetricEncryptType:(NSString *)symmetricEncryptType; 26 | 27 | /// 禁用 init 初始化方法 28 | - (instancetype)init NS_UNAVAILABLE; 29 | 30 | /// 密钥版本 31 | @property (nonatomic, assign, readonly) NSInteger version; 32 | 33 | /// 密钥值 34 | @property (nonatomic, copy, readonly) NSString *key; 35 | 36 | /// 对称加密类型 37 | @property (nonatomic, copy, readonly) NSString *symmetricEncryptType; 38 | 39 | /// 非对称加密类型 40 | @property (nonatomic, copy, readonly) NSString *asymmetricEncryptType; 41 | 42 | @end 43 | 44 | NS_ASSUME_NONNULL_END 45 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SAStorePlugin.h: -------------------------------------------------------------------------------- 1 | // 2 | // SAStorePlugin.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 张敏超🍎 on 2021/12/1. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @protocol SAStorePlugin 14 | 15 | - (NSString *)type; 16 | 17 | - (nullable id)objectForKey:(NSString *)key; 18 | - (void)setObject:(nullable id)value forKey:(NSString *)key; 19 | - (void)removeObjectForKey:(NSString *)key; 20 | 21 | @optional 22 | /// 可以用于将一些重要特殊的 key 进行迁移操作 23 | /// 24 | /// SDK 会在注册新插件时,调用该方法 25 | /// 该方法可能会调用多次,每次调用会传入之前注册的插件 26 | /// 27 | /// @param oldPlugin 旧插件 28 | - (void)upgradeWithOldPlugin:(id)oldPlugin; 29 | 30 | /// 注册自定义存储插件,是否忽略历史旧数据 31 | /// 32 | /// 如果未实现,则默认不忽略,即迁移历史数据迁移 33 | /// 如果要求忽略旧插件的本地存储历史数据,则实现该接口,并返回 YES 34 | /// 35 | /// @return 是否忽略 36 | - (BOOL)isIgnoreOldData; 37 | @end 38 | 39 | NS_ASSUME_NONNULL_END 40 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsExtension.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by  储强盛 on 2023/8/18. 6 | // Copyright © 2015-2023 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "SensorsAnalyticsSDK+Public.h" 12 | #import "SASecurityPolicy.h" 13 | #import "SAConfigOptions.h" 14 | #import "SAConstants.h" 15 | 16 | #import "SAAESStorePlugin.h" 17 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsSDK+DebugMode.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+DebugMode.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/11. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SensorsAnalyticsSDK.h" 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SensorsAnalyticsSDK (DebugMode) 14 | 15 | /** 16 | * @abstract 17 | * 设置是否显示 debugInfoView,对于 iOS,是 UIAlertView/UIAlertController 18 | * 19 | * @discussion 20 | * 设置是否显示 debugInfoView,默认显示 21 | * 22 | * @param show 是否显示 23 | */ 24 | - (void)showDebugInfoView:(BOOL)show API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("DebugMode not supported for iOS extensions."); 25 | 26 | - (SensorsAnalyticsDebugMode)debugMode; 27 | 28 | @end 29 | 30 | NS_ASSUME_NONNULL_END 31 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsSDK+Exposure.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+Exposure.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2022/8/9. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SensorsAnalyticsSDK.h" 10 | #import 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @interface SensorsAnalyticsSDK (Exposure) 15 | 16 | /// use this method to add exposure to certain view 17 | /// - Parameters: 18 | /// - view: view to expose 19 | /// - data: exposure data, such as event name, properties, etc. 20 | - (void)addExposureView:(UIView *)view withData:(SAExposureData *)data NS_EXTENSION_UNAVAILABLE("Exposure not supported for iOS extensions."); 21 | 22 | /// remove exposure for certain view 23 | /// - Parameters: 24 | /// - view: view that need to remove exposure 25 | /// - identifier: exposure identifier to identify certain view, if no identifier specified when addExposureView 26 | - (void)removeExposureView:(UIView *)view withExposureIdentifier:(nullable NSString *)identifier NS_EXTENSION_UNAVAILABLE("Exposure not supported for iOS extensions."); 27 | 28 | /// update properties for certain view that need to expose 29 | /// - Parameters: 30 | /// - view: view to expose 31 | /// - properties: properties to update 32 | - (void)updateExposure:(UIView *)view withProperties:(NSDictionary *)properties NS_EXTENSION_UNAVAILABLE("Exposure not supported for iOS extensions."); 33 | 34 | @end 35 | 36 | NS_ASSUME_NONNULL_END 37 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsSDK+JavaScriptBridge.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+JavaScriptBridge.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/13. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #if TARGET_OS_IOS || TARGET_OS_OSX 10 | 11 | #import "SensorsAnalyticsSDK.h" 12 | 13 | NS_ASSUME_NONNULL_BEGIN 14 | 15 | @interface SensorsAnalyticsSDK (JavaScriptBridge) 16 | 17 | - (void)trackFromH5WithEvent:(NSString *)eventInfo; 18 | 19 | - (void)trackFromH5WithEvent:(NSString *)eventInfo enableVerify:(BOOL)enableVerify; 20 | 21 | @end 22 | 23 | @interface SAConfigOptions (JavaScriptBridge) 24 | 25 | /// 是否开启 WKWebView 的 H5 打通功能,该功能默认是关闭的 26 | @property (nonatomic) BOOL enableJavaScriptBridge; 27 | 28 | @end 29 | 30 | NS_ASSUME_NONNULL_END 31 | 32 | #endif 33 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/SensorsAnalyticsSDK+SAAppExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+SAAppExtension.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2022/5/16. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import "SensorsAnalyticsSDK.h" 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SensorsAnalyticsSDK (SAAppExtension) 14 | 15 | /** 16 | @abstract 17 | * Track App Extension groupIdentifier 中缓存的数据 18 | * 19 | * @param groupIdentifier groupIdentifier 20 | * @param completion 完成 track 后的 callback 21 | */ 22 | - (void)trackEventFromExtensionWithGroupIdentifier:(NSString *)groupIdentifier completion:(void (^)(NSString *groupIdentifier, NSArray *events)) completion; 23 | 24 | @end 25 | 26 | NS_ASSUME_NONNULL_END 27 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/UIView+ExposureIdentifier.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+ExposureIdentifier.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2022/8/22. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface UIView (SAExposureIdentifier) 14 | 15 | @property (nonatomic, copy, nullable) NSString *exposureIdentifier; 16 | 17 | @end 18 | 19 | NS_ASSUME_NONNULL_END 20 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Headers/UIView+SensorsAnalytics.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+SensorsAnalytics.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2022/8/29. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @protocol SAUIViewAutoTrackDelegate 14 | 15 | //UITableView 16 | @optional 17 | - (NSDictionary *)sensorsAnalytics_tableView:(UITableView *)tableView autoTrackPropertiesAtIndexPath:(NSIndexPath *)indexPath; 18 | 19 | //UICollectionView 20 | @optional 21 | - (NSDictionary *)sensorsAnalytics_collectionView:(UICollectionView *)collectionView autoTrackPropertiesAtIndexPath:(NSIndexPath *)indexPath; 22 | @end 23 | 24 | @interface UIView (SensorsAnalytics) 25 | 26 | /// viewID 27 | @property (nonatomic, copy) NSString *sensorsAnalyticsViewID; 28 | 29 | /// AutoTrack 时,是否忽略该 View 30 | @property (nonatomic, assign) BOOL sensorsAnalyticsIgnoreView; 31 | 32 | /// AutoTrack 发生在 SendAction 之前还是之后,默认是 SendAction 之前 33 | @property (nonatomic, assign) BOOL sensorsAnalyticsAutoTrackAfterSendAction; 34 | 35 | /// AutoTrack 时,View 的扩展属性 36 | @property (nonatomic, strong) NSDictionary *sensorsAnalyticsViewProperties; 37 | 38 | @property (nonatomic, weak, nullable) id sensorsAnalyticsDelegate; 39 | 40 | @end 41 | 42 | @interface UIImage (SensorsAnalytics) 43 | 44 | @property (nonatomic, copy) NSString* sensorsAnalyticsImageName; 45 | 46 | @end 47 | 48 | NS_ASSUME_NONNULL_END 49 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Info.plist -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SensorsAnalyticsSDK { 2 | umbrella header "SensorsAnalyticsSDK.h" 3 | export * 4 | 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/SensorsAnalyticsSDK: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalyticsSDK/Source/Core/SensorsAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/SensorsAnalyticsSDK.framework/SensorsAnalyticsSDK -------------------------------------------------------------------------------- /SensorsAnalytics_DeviceOrientation.podspec: -------------------------------------------------------------------------------- 1 | Pod::Spec.new do |s| 2 | s.name = "SensorsAnalytics_DeviceOrientation" 3 | s.version = "5.0.0" 4 | s.summary = "The official iOS SDK of Sensors Analytics DeviceOrientation." 5 | s.homepage = "http://www.sensorsdata.cn" 6 | s.source = { :git => 'https://github.com/sensorsdata/sa-sdk-ios.git', :tag => "v#{s.version}" } 7 | s.license = { 8 | :type => 'Commercial', 9 | :file => 'LICENSE' 10 | } 11 | s.author = { "caojiang" => "caojiang@sensorsdata.cn" } 12 | s.ios.deployment_target = '9.0' 13 | s.default_subspec = 'Core' 14 | s.frameworks = 'CoreMotion', 'UIKit' 15 | s.dependency 'SensorsAnalyticsSDK', '>=5.0.0' 16 | 17 | # 限制 CocoaPods 版本 18 | s.cocoapods_version = '>= 1.12.0' 19 | 20 | s.subspec 'Core' do |c| 21 | c.vendored_frameworks = 'SensorsAnalytics_DeviceOrientation/Source/SensorsAnalytics_DeviceOrientation.xcframework' 22 | c.resource_bundle = { 'SensorsAnalytics_DeviceOrientation' => 'SensorsAnalytics_DeviceOrientation/Resources/**/*'} 23 | end 24 | 25 | end 26 | -------------------------------------------------------------------------------- /SensorsAnalytics_DeviceOrientation/Resources/PrivacyInfo.xcprivacy: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | NSPrivacyCollectedDataTypes 6 | 7 | 8 | NSPrivacyCollectedDataType 9 | NSPrivacyCollectedDataTypeOtherUsageData 10 | NSPrivacyCollectedDataTypeLinked 11 | 12 | NSPrivacyCollectedDataTypeTracking 13 | 14 | NSPrivacyCollectedDataTypePurposes 15 | 16 | NSPrivacyCollectedDataTypePurposeAnalytics 17 | 18 | 19 | 20 | NSPrivacyAccessedAPITypes 21 | 22 | NSPrivacyTrackingDomains 23 | 24 | NSPrivacyTracking 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /SensorsAnalytics_DeviceOrientation/Source/SensorsAnalytics_DeviceOrientation.xcframework/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | AvailableLibraries 6 | 7 | 8 | BinaryPath 9 | SensorsAnalytics_DeviceOrientation.framework/SensorsAnalytics_DeviceOrientation 10 | LibraryIdentifier 11 | ios-arm64_x86_64-simulator 12 | LibraryPath 13 | SensorsAnalytics_DeviceOrientation.framework 14 | SupportedArchitectures 15 | 16 | arm64 17 | x86_64 18 | 19 | SupportedPlatform 20 | ios 21 | SupportedPlatformVariant 22 | simulator 23 | 24 | 25 | BinaryPath 26 | SensorsAnalytics_DeviceOrientation.framework/SensorsAnalytics_DeviceOrientation 27 | LibraryIdentifier 28 | ios-arm64 29 | LibraryPath 30 | SensorsAnalytics_DeviceOrientation.framework 31 | SupportedArchitectures 32 | 33 | arm64 34 | 35 | SupportedPlatform 36 | ios 37 | 38 | 39 | CFBundlePackageType 40 | XFWK 41 | XCFrameworkFormatVersion 42 | 1.0 43 | 44 | 45 | -------------------------------------------------------------------------------- /SensorsAnalytics_DeviceOrientation/Source/SensorsAnalytics_DeviceOrientation.xcframework/ios-arm64/SensorsAnalytics_DeviceOrientation.framework/Headers/SensorsAnalyticsSDK+DeviceOrientation.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+DeviceOrientation.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/11. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SensorsAnalyticsSDK (DeviceOrientation) 14 | 15 | /** 16 | * @abstract 17 | * 设备方向信息采集功能开关 18 | * 19 | * @discussion 20 | * 根据需要决定是否开启设备方向采集 21 | * 默认关闭 22 | * 23 | * @param enable YES/NO 24 | */ 25 | - (void)enableTrackScreenOrientation:(BOOL)enable API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("DeviceOrientation not supported for iOS extensions."); 26 | 27 | @end 28 | 29 | NS_ASSUME_NONNULL_END 30 | -------------------------------------------------------------------------------- /SensorsAnalytics_DeviceOrientation/Source/SensorsAnalytics_DeviceOrientation.xcframework/ios-arm64/SensorsAnalytics_DeviceOrientation.framework/Headers/SensorsAnalytics_DeviceOrientation-umbrella.h: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | #import "SensorsAnalytics_DeviceOrientation.h" 14 | #import "SensorsAnalyticsSDK+DeviceOrientation.h" 15 | 16 | FOUNDATION_EXPORT double SensorsAnalytics_DeviceOrientationVersionNumber; 17 | FOUNDATION_EXPORT const unsigned char SensorsAnalytics_DeviceOrientationVersionString[]; 18 | 19 | -------------------------------------------------------------------------------- /SensorsAnalytics_DeviceOrientation/Source/SensorsAnalytics_DeviceOrientation.xcframework/ios-arm64/SensorsAnalytics_DeviceOrientation.framework/Headers/SensorsAnalytics_DeviceOrientation.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalytics_DeviceOrientation.h 3 | // SensorsAnalytics_DeviceOrientation 4 | // 5 | // Created by 陈玉国 on 2024/10/24. 6 | // 7 | 8 | #import 9 | 10 | //! Project version number for SensorsAnalytics_DeviceOrientation. 11 | FOUNDATION_EXPORT double SensorsAnalytics_DeviceOrientationVersionNumber; 12 | 13 | //! Project version string for SensorsAnalytics_DeviceOrientation. 14 | FOUNDATION_EXPORT const unsigned char SensorsAnalytics_DeviceOrientationVersionString[]; 15 | 16 | // In this header, you should import all the public headers of your framework using statements like #import 17 | 18 | #import "SensorsAnalyticsSDK+DeviceOrientation.h" 19 | -------------------------------------------------------------------------------- /SensorsAnalytics_DeviceOrientation/Source/SensorsAnalytics_DeviceOrientation.xcframework/ios-arm64/SensorsAnalytics_DeviceOrientation.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalytics_DeviceOrientation/Source/SensorsAnalytics_DeviceOrientation.xcframework/ios-arm64/SensorsAnalytics_DeviceOrientation.framework/Info.plist -------------------------------------------------------------------------------- /SensorsAnalytics_DeviceOrientation/Source/SensorsAnalytics_DeviceOrientation.xcframework/ios-arm64/SensorsAnalytics_DeviceOrientation.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SensorsAnalytics_DeviceOrientation { 2 | umbrella header "SensorsAnalytics_DeviceOrientation-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /SensorsAnalytics_DeviceOrientation/Source/SensorsAnalytics_DeviceOrientation.xcframework/ios-arm64/SensorsAnalytics_DeviceOrientation.framework/SensorsAnalytics_DeviceOrientation: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalytics_DeviceOrientation/Source/SensorsAnalytics_DeviceOrientation.xcframework/ios-arm64/SensorsAnalytics_DeviceOrientation.framework/SensorsAnalytics_DeviceOrientation -------------------------------------------------------------------------------- /SensorsAnalytics_DeviceOrientation/Source/SensorsAnalytics_DeviceOrientation.xcframework/ios-arm64_x86_64-simulator/SensorsAnalytics_DeviceOrientation.framework/Headers/SensorsAnalyticsSDK+DeviceOrientation.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+DeviceOrientation.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/11. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SensorsAnalyticsSDK (DeviceOrientation) 14 | 15 | /** 16 | * @abstract 17 | * 设备方向信息采集功能开关 18 | * 19 | * @discussion 20 | * 根据需要决定是否开启设备方向采集 21 | * 默认关闭 22 | * 23 | * @param enable YES/NO 24 | */ 25 | - (void)enableTrackScreenOrientation:(BOOL)enable API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("DeviceOrientation not supported for iOS extensions."); 26 | 27 | @end 28 | 29 | NS_ASSUME_NONNULL_END 30 | -------------------------------------------------------------------------------- /SensorsAnalytics_DeviceOrientation/Source/SensorsAnalytics_DeviceOrientation.xcframework/ios-arm64_x86_64-simulator/SensorsAnalytics_DeviceOrientation.framework/Headers/SensorsAnalytics_DeviceOrientation-umbrella.h: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | #import "SensorsAnalytics_DeviceOrientation.h" 14 | #import "SensorsAnalyticsSDK+DeviceOrientation.h" 15 | 16 | FOUNDATION_EXPORT double SensorsAnalytics_DeviceOrientationVersionNumber; 17 | FOUNDATION_EXPORT const unsigned char SensorsAnalytics_DeviceOrientationVersionString[]; 18 | 19 | -------------------------------------------------------------------------------- /SensorsAnalytics_DeviceOrientation/Source/SensorsAnalytics_DeviceOrientation.xcframework/ios-arm64_x86_64-simulator/SensorsAnalytics_DeviceOrientation.framework/Headers/SensorsAnalytics_DeviceOrientation.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalytics_DeviceOrientation.h 3 | // SensorsAnalytics_DeviceOrientation 4 | // 5 | // Created by 陈玉国 on 2024/10/24. 6 | // 7 | 8 | #import 9 | 10 | //! Project version number for SensorsAnalytics_DeviceOrientation. 11 | FOUNDATION_EXPORT double SensorsAnalytics_DeviceOrientationVersionNumber; 12 | 13 | //! Project version string for SensorsAnalytics_DeviceOrientation. 14 | FOUNDATION_EXPORT const unsigned char SensorsAnalytics_DeviceOrientationVersionString[]; 15 | 16 | // In this header, you should import all the public headers of your framework using statements like #import 17 | 18 | #import "SensorsAnalyticsSDK+DeviceOrientation.h" 19 | -------------------------------------------------------------------------------- /SensorsAnalytics_DeviceOrientation/Source/SensorsAnalytics_DeviceOrientation.xcframework/ios-arm64_x86_64-simulator/SensorsAnalytics_DeviceOrientation.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalytics_DeviceOrientation/Source/SensorsAnalytics_DeviceOrientation.xcframework/ios-arm64_x86_64-simulator/SensorsAnalytics_DeviceOrientation.framework/Info.plist -------------------------------------------------------------------------------- /SensorsAnalytics_DeviceOrientation/Source/SensorsAnalytics_DeviceOrientation.xcframework/ios-arm64_x86_64-simulator/SensorsAnalytics_DeviceOrientation.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SensorsAnalytics_DeviceOrientation { 2 | umbrella header "SensorsAnalytics_DeviceOrientation-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /SensorsAnalytics_DeviceOrientation/Source/SensorsAnalytics_DeviceOrientation.xcframework/ios-arm64_x86_64-simulator/SensorsAnalytics_DeviceOrientation.framework/SensorsAnalytics_DeviceOrientation: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalytics_DeviceOrientation/Source/SensorsAnalytics_DeviceOrientation.xcframework/ios-arm64_x86_64-simulator/SensorsAnalytics_DeviceOrientation.framework/SensorsAnalytics_DeviceOrientation -------------------------------------------------------------------------------- /SensorsAnalytics_Location.podspec: -------------------------------------------------------------------------------- 1 | Pod::Spec.new do |s| 2 | s.name = "SensorsAnalytics_Location" 3 | s.version = "5.0.0" 4 | s.summary = "The official iOS SDK of Sensors Analytics Location." 5 | s.homepage = "http://www.sensorsdata.cn" 6 | s.source = { :git => 'https://github.com/sensorsdata/sa-sdk-ios.git', :tag => "v#{s.version}" } 7 | s.license = { 8 | :type => 'Commercial', 9 | :file => 'LICENSE' 10 | } 11 | s.author = { "caojiang" => "caojiang@sensorsdata.cn" } 12 | s.ios.deployment_target = '9.0' 13 | s.default_subspec = 'Core' 14 | s.frameworks = 'UIKit', 'CoreLocation' 15 | s.dependency 'SensorsAnalyticsSDK', '>=5.0.0' 16 | 17 | # 限制 CocoaPods 版本 18 | s.cocoapods_version = '>= 1.12.0' 19 | 20 | s.subspec 'Core' do |c| 21 | c.vendored_frameworks = 'SensorsAnalytics_Location/Source/SensorsAnalytics_Location.xcframework' 22 | c.resource_bundle = { 'SensorsAnalytics_Location' => 'SensorsAnalytics_Location/Resources/**/*'} 23 | end 24 | 25 | end -------------------------------------------------------------------------------- /SensorsAnalytics_Location/Resources/PrivacyInfo.xcprivacy: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | NSPrivacyCollectedDataTypes 6 | 7 | 8 | NSPrivacyCollectedDataType 9 | NSPrivacyCollectedDataTypeCoarseLocation 10 | NSPrivacyCollectedDataTypeLinked 11 | 12 | NSPrivacyCollectedDataTypeTracking 13 | 14 | NSPrivacyCollectedDataTypePurposes 15 | 16 | NSPrivacyCollectedDataTypePurposeAnalytics 17 | 18 | 19 | 20 | NSPrivacyAccessedAPITypes 21 | 22 | NSPrivacyTrackingDomains 23 | 24 | NSPrivacyTracking 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /SensorsAnalytics_Location/Source/SensorsAnalytics_Location.xcframework/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | AvailableLibraries 6 | 7 | 8 | BinaryPath 9 | SensorsAnalytics_Location.framework/SensorsAnalytics_Location 10 | LibraryIdentifier 11 | ios-arm64 12 | LibraryPath 13 | SensorsAnalytics_Location.framework 14 | SupportedArchitectures 15 | 16 | arm64 17 | 18 | SupportedPlatform 19 | ios 20 | 21 | 22 | BinaryPath 23 | SensorsAnalytics_Location.framework/SensorsAnalytics_Location 24 | LibraryIdentifier 25 | ios-arm64_x86_64-simulator 26 | LibraryPath 27 | SensorsAnalytics_Location.framework 28 | SupportedArchitectures 29 | 30 | arm64 31 | x86_64 32 | 33 | SupportedPlatform 34 | ios 35 | SupportedPlatformVariant 36 | simulator 37 | 38 | 39 | CFBundlePackageType 40 | XFWK 41 | XCFrameworkFormatVersion 42 | 1.0 43 | 44 | 45 | -------------------------------------------------------------------------------- /SensorsAnalytics_Location/Source/SensorsAnalytics_Location.xcframework/ios-arm64/SensorsAnalytics_Location.framework/Headers/SensorsAnalyticsSDK+Location.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+Location.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/11. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SensorsAnalyticsSDK (Location) 14 | 15 | /** 16 | * @abstract 17 | * 位置信息采集功能开关 18 | * 19 | * @discussion 20 | * 根据需要决定是否开启位置采集 21 | * 默认关闭 22 | * 23 | * @param enable YES/NO 24 | */ 25 | - (void)enableTrackGPSLocation:(BOOL)enable API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("Location not supported for iOS extensions."); 26 | 27 | @end 28 | 29 | NS_ASSUME_NONNULL_END 30 | -------------------------------------------------------------------------------- /SensorsAnalytics_Location/Source/SensorsAnalytics_Location.xcframework/ios-arm64/SensorsAnalytics_Location.framework/Headers/SensorsAnalytics_Location-umbrella.h: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | #import "SensorsAnalyticsSDK+Location.h" 14 | #import "SensorsAnalytics_Location.h" 15 | 16 | FOUNDATION_EXPORT double SensorsAnalytics_LocationVersionNumber; 17 | FOUNDATION_EXPORT const unsigned char SensorsAnalytics_LocationVersionString[]; 18 | 19 | -------------------------------------------------------------------------------- /SensorsAnalytics_Location/Source/SensorsAnalytics_Location.xcframework/ios-arm64/SensorsAnalytics_Location.framework/Headers/SensorsAnalytics_Location.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalytics_Location.h 3 | // SensorsAnalytics_Location 4 | // 5 | // Created by 陈玉国 on 2024/10/30. 6 | // 7 | 8 | #import 9 | 10 | //! Project version number for SensorsAnalytics_Location. 11 | FOUNDATION_EXPORT double SensorsAnalytics_LocationVersionNumber; 12 | 13 | //! Project version string for SensorsAnalytics_Location. 14 | FOUNDATION_EXPORT const unsigned char SensorsAnalytics_LocationVersionString[]; 15 | 16 | // In this header, you should import all the public headers of your framework using statements like #import 17 | 18 | #import "SensorsAnalyticsSDK+Location.h" 19 | -------------------------------------------------------------------------------- /SensorsAnalytics_Location/Source/SensorsAnalytics_Location.xcframework/ios-arm64/SensorsAnalytics_Location.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalytics_Location/Source/SensorsAnalytics_Location.xcframework/ios-arm64/SensorsAnalytics_Location.framework/Info.plist -------------------------------------------------------------------------------- /SensorsAnalytics_Location/Source/SensorsAnalytics_Location.xcframework/ios-arm64/SensorsAnalytics_Location.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SensorsAnalytics_Location { 2 | umbrella header "SensorsAnalytics_Location-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /SensorsAnalytics_Location/Source/SensorsAnalytics_Location.xcframework/ios-arm64/SensorsAnalytics_Location.framework/SensorsAnalytics_Location: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalytics_Location/Source/SensorsAnalytics_Location.xcframework/ios-arm64/SensorsAnalytics_Location.framework/SensorsAnalytics_Location -------------------------------------------------------------------------------- /SensorsAnalytics_Location/Source/SensorsAnalytics_Location.xcframework/ios-arm64_x86_64-simulator/SensorsAnalytics_Location.framework/Headers/SensorsAnalyticsSDK+Location.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalyticsSDK+Location.h 3 | // SensorsAnalyticsSDK 4 | // 5 | // Created by 陈玉国 on 2021/9/11. 6 | // Copyright © 2015-2022 Sensors Data Co., Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface SensorsAnalyticsSDK (Location) 14 | 15 | /** 16 | * @abstract 17 | * 位置信息采集功能开关 18 | * 19 | * @discussion 20 | * 根据需要决定是否开启位置采集 21 | * 默认关闭 22 | * 23 | * @param enable YES/NO 24 | */ 25 | - (void)enableTrackGPSLocation:(BOOL)enable API_UNAVAILABLE(macos) NS_EXTENSION_UNAVAILABLE("Location not supported for iOS extensions."); 26 | 27 | @end 28 | 29 | NS_ASSUME_NONNULL_END 30 | -------------------------------------------------------------------------------- /SensorsAnalytics_Location/Source/SensorsAnalytics_Location.xcframework/ios-arm64_x86_64-simulator/SensorsAnalytics_Location.framework/Headers/SensorsAnalytics_Location-umbrella.h: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | #import "SensorsAnalyticsSDK+Location.h" 14 | #import "SensorsAnalytics_Location.h" 15 | 16 | FOUNDATION_EXPORT double SensorsAnalytics_LocationVersionNumber; 17 | FOUNDATION_EXPORT const unsigned char SensorsAnalytics_LocationVersionString[]; 18 | 19 | -------------------------------------------------------------------------------- /SensorsAnalytics_Location/Source/SensorsAnalytics_Location.xcframework/ios-arm64_x86_64-simulator/SensorsAnalytics_Location.framework/Headers/SensorsAnalytics_Location.h: -------------------------------------------------------------------------------- 1 | // 2 | // SensorsAnalytics_Location.h 3 | // SensorsAnalytics_Location 4 | // 5 | // Created by 陈玉国 on 2024/10/30. 6 | // 7 | 8 | #import 9 | 10 | //! Project version number for SensorsAnalytics_Location. 11 | FOUNDATION_EXPORT double SensorsAnalytics_LocationVersionNumber; 12 | 13 | //! Project version string for SensorsAnalytics_Location. 14 | FOUNDATION_EXPORT const unsigned char SensorsAnalytics_LocationVersionString[]; 15 | 16 | // In this header, you should import all the public headers of your framework using statements like #import 17 | 18 | #import "SensorsAnalyticsSDK+Location.h" 19 | -------------------------------------------------------------------------------- /SensorsAnalytics_Location/Source/SensorsAnalytics_Location.xcframework/ios-arm64_x86_64-simulator/SensorsAnalytics_Location.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalytics_Location/Source/SensorsAnalytics_Location.xcframework/ios-arm64_x86_64-simulator/SensorsAnalytics_Location.framework/Info.plist -------------------------------------------------------------------------------- /SensorsAnalytics_Location/Source/SensorsAnalytics_Location.xcframework/ios-arm64_x86_64-simulator/SensorsAnalytics_Location.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SensorsAnalytics_Location { 2 | umbrella header "SensorsAnalytics_Location-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /SensorsAnalytics_Location/Source/SensorsAnalytics_Location.xcframework/ios-arm64_x86_64-simulator/SensorsAnalytics_Location.framework/SensorsAnalytics_Location: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sensorsdata/sa-sdk-ios/100760e67b7ff30d9be30e98513413afa4be3b1e/SensorsAnalytics_Location/Source/SensorsAnalytics_Location.xcframework/ios-arm64_x86_64-simulator/SensorsAnalytics_Location.framework/SensorsAnalytics_Location --------------------------------------------------------------------------------