Skip to main content

Integrating Third Party

Integrating Third party frameworks

Overview

The Nuclei SDK requires several third-party frameworks, which can be added manually or via Cocoapods. Below are the details and instructions for integrating these dependencies.

Cocoapods Integration

To add the necessary third-party frameworks using Cocoapods, include the following code in your Podfile:

source 'https://github.com/CocoaPods/Specs.git'
target 'YOUR_APPLICATION_TARGET_NAME_HERE' do
pod 'SwiftGRPC', '0.11.0'
pod 'CleverTap-iOS-SDK', '6.1.0'

pod 'Firebase/Core'
pod 'Firebase/Auth'
pod 'Firebase/Messaging'

post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '12.0'
end

if target.name.start_with? 'GoogleDataTransport'
target.build_configurations.each do |config|
config.build_settings['CLANG_WARN_STRICT_PROTOTYPES'] = 'NO'
end
end

# Remove unnecessary compiler flags for BoringSSL-GRPC
if target.name == 'BoringSSL-GRPC'
target.source_build_phase.files.each do |file|
if file.settings&.dig('COMPILER_FLAGS')
flags = file.settings['COMPILER_FLAGS'].split
flags.reject! { |flag| flag == '-GCC_WARN_INHIBIT_ALL_WARNINGS' }
file.settings['COMPILER_FLAGS'] = flags.join(' ')
end
end
end
end
end
end

Manual Integration

You can find the folder of 3rd party dependencies in the zip which is shared to you, you can integrate those frameworks as same as how you did the nuclei frameworks

Third-Party Libraries

LibraryDescriptionCore/OptionalDependency for
CleverTapSDKFor analytics, it's a core dependencyCore-
SwiftGRPCNuclei SDK uses RPCs for API calls, it's a core dependencyCore-
SwiftProtobufTransitive dependency of SwiftGRPCCoreSwiftGRPC
grpcTransitive dependency of SwiftGRPCCoreSwiftGRPC
nanopbTransitive dependency of SwiftGRPCCoreSwiftGRPC
openssl_grpcTransitive dependency of SwiftGRPCCoreSwiftGRPC
ProtobufTransitive dependency of SwiftGRPCCoreSwiftGRPC
SDWebImageAsync image downloader with cache supportCore-
GoogleMapsRequired for integrating the Cabs categoryOptionalCabs category

If client app is written using Obj-C, add a User Defined parameter with SWIFT_VERSION and a value of 4.0.

 

Then run the command   pod install