mirror of
https://github.com/firebase/firebase-ios-sdk
synced 2026-11-09 22:36:01 +05:45
* Parse out experiment payload for experimental FIAMs and store it on FIRIAMMessageDefinition * Fix bugs in parsing experimental payload * Add nullable experiment payload to FIAM message definition. Add method in FIRExperimenmtController to validate running experiments and call this when new messages are fetched from FIAM backend * Add and document new ABT methods, update FirebaseInAppMessaging.podspec to depend on ABT * Clean up deprecated public message initializers, add experiment payload to private initializers * Activate experiment for experimental messages upon impression * Clean up activateExperiment API * Add experimental payload to all message definition initializers * Add unit test coverage for new ABT methods * Add test coverage for parsing experimental messages * Verify experiment payload gets passed to message superclass * Scripts/style.sh * Update Podfile for UI test app to include AB Testing SDK * Add back deprecated initializers for now, these are needed for the test app * Test for non-nil experiment payload * Use mutable array directly, better memory usage * Bump ABTesting podspec version, depend on new ABT in FIAM * Remove mentions of FIREventOrigins.h * Remove experiment payload from public API, hide it in private * Scripts/style.sh * Fix comment indentation, allow for FIAM to depend on minor version updates of ABTesting * Move ABTExperimentPayload import to private header
53 lines
2.0 KiB
Ruby
53 lines
2.0 KiB
Ruby
Pod::Spec.new do |s|
|
|
s.name = 'FirebaseABTesting'
|
|
s.version = '3.2.0'
|
|
s.summary = 'Firebase ABTesting for iOS'
|
|
|
|
s.description = <<-DESC
|
|
A/B testing is a Firebase service that lets you run experiments across users of
|
|
your iOS and Android apps. It lets you learn how well one or more changes to
|
|
your app work with a smaller set of users before you roll out changes to all
|
|
users. You can run experiments to find the most effective ways to use
|
|
Firebase Cloud Messaging and Firebase Remote Config in your app.
|
|
DESC
|
|
|
|
s.homepage = 'https://firebase.google.com'
|
|
s.license = { :type => 'Apache', :file => 'LICENSE' }
|
|
s.authors = 'Google, Inc.'
|
|
|
|
s.source = {
|
|
:git => 'https://github.com/firebase/firebase-ios-sdk.git',
|
|
:tag => 'ABTesting-' + s.version.to_s
|
|
}
|
|
s.social_media_url = 'https://twitter.com/Firebase'
|
|
s.ios.deployment_target = '8.0'
|
|
s.osx.deployment_target = '10.11'
|
|
s.tvos.deployment_target = '10.0'
|
|
|
|
s.cocoapods_version = '>= 1.4.0'
|
|
s.static_framework = true
|
|
s.prefix_header_file = false
|
|
|
|
base_dir = "FirebaseABTesting/Sources/"
|
|
s.source_files = base_dir + '**/*.[mh]'
|
|
s.requires_arc = base_dir + '*.m'
|
|
s.public_header_files = base_dir + 'Public/*.h', base_dir + 'Protos/developers/mobile/abt/proto/*.h'
|
|
s.private_header_files = base_dir + 'Protos/developers/mobile/abt/proto/*.h'
|
|
s.pod_target_xcconfig = {
|
|
'GCC_C_LANGUAGE_STANDARD' => 'c99',
|
|
'GCC_PREPROCESSOR_DEFINITIONS' =>
|
|
'GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS=1 ' +
|
|
'FIRABTesting_VERSION=' + String(s.version),
|
|
'HEADER_SEARCH_PATHS' => '"${PODS_TARGET_SRCROOT}"'
|
|
}
|
|
s.dependency 'FirebaseAnalyticsInterop', '~> 1.3'
|
|
s.dependency 'FirebaseCore', '~> 6.1'
|
|
s.dependency 'Protobuf', '~> 3.9', '>= 3.9.2'
|
|
|
|
s.test_spec 'unit' do |unit_tests|
|
|
unit_tests.source_files = 'FirebaseABTesting/Tests/Unit/*.[mh]'
|
|
unit_tests.requires_app_host = true
|
|
unit_tests.dependency 'OCMock'
|
|
end
|
|
end
|