diff --git a/Adjust.podspec b/Adjust.podspec index ce46fa66a..f9488f470 100644 --- a/Adjust.podspec +++ b/Adjust.podspec @@ -1,11 +1,11 @@ Pod::Spec.new do |s| s.name = "Adjust" - s.version = "4.28.0" + s.version = "4.29.0" s.summary = "This is the iOS SDK of adjust. You can read more about it at http://adjust.com." s.homepage = "https://github.com/adjust/ios_sdk" s.license = { :type => 'MIT', :file => 'MIT-LICENSE' } s.author = { "Christian Wellenbrock" => "welle@adjust.com" } - s.source = { :git => "https://github.com/adjust/ios_sdk.git", :tag => "v4.28.0" } + s.source = { :git => "https://github.com/adjust/ios_sdk.git", :tag => "v4.29.0" } s.ios.deployment_target = '6.0' s.tvos.deployment_target = '9.0' s.framework = 'SystemConfiguration' diff --git a/Adjust.xcodeproj/project.pbxproj b/Adjust.xcodeproj/project.pbxproj index 74994c393..2beead856 100644 --- a/Adjust.xcodeproj/project.pbxproj +++ b/Adjust.xcodeproj/project.pbxproj @@ -25,6 +25,16 @@ 2067002A1F18BDC700B4FDE1 /* CoreTelephony.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9601C19C1A31DD7F00A9AE21 /* CoreTelephony.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; 6F84512425B1B1380004C7C0 /* ADJThirdPartySharing.h in Headers */ = {isa = PBXBuildFile; fileRef = 6F84511025B1B1380004C7C0 /* ADJThirdPartySharing.h */; settings = {ATTRIBUTES = (Public, ); }; }; 6F84512525B1B1380004C7C0 /* ADJThirdPartySharing.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F84512325B1B1380004C7C0 /* ADJThirdPartySharing.m */; }; + 6FAB784C2636DC0E00773869 /* ADJLinkResolution.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FAB784A2636DC0E00773869 /* ADJLinkResolution.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 6FAB784D2636DC0E00773869 /* ADJLinkResolution.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FAB784B2636DC0E00773869 /* ADJLinkResolution.m */; }; + 6FAB786B2636DC8400773869 /* ADJLinkResolution.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FAB78692636DC8400773869 /* ADJLinkResolution.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 6FAB786C2636DC8400773869 /* ADJLinkResolution.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FAB786A2636DC8400773869 /* ADJLinkResolution.m */; }; + 6FAB78782636DCB600773869 /* ADJLinkResolution.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FAB78762636DCB600773869 /* ADJLinkResolution.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 6FAB78792636DCB600773869 /* ADJLinkResolution.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FAB78772636DCB600773869 /* ADJLinkResolution.m */; }; + 6FAB78852636DCCD00773869 /* ADJLinkResolution.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FAB78832636DCCD00773869 /* ADJLinkResolution.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 6FAB78862636DCCD00773869 /* ADJLinkResolution.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FAB78842636DCCD00773869 /* ADJLinkResolution.m */; }; + 6FAB78922636DCE700773869 /* ADJLinkResolution.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FAB78902636DCE700773869 /* ADJLinkResolution.m */; }; + 6FAB78932636DCE700773869 /* ADJLinkResolution.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FAB78912636DCE700773869 /* ADJLinkResolution.h */; settings = {ATTRIBUTES = (Public, ); }; }; 6FBE0C6E2577CDAC00EC2CE0 /* ADJThirdPartySharing.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FBE0C6C2577CDAC00EC2CE0 /* ADJThirdPartySharing.h */; settings = {ATTRIBUTES = (Public, ); }; }; 6FBE0C6F2577CDAC00EC2CE0 /* ADJThirdPartySharing.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FBE0C6D2577CDAC00EC2CE0 /* ADJThirdPartySharing.m */; }; 6FBEE92624E422EB00FEF3F1 /* ADJUrlStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FBEE92424E422EB00FEF3F1 /* ADJUrlStrategy.m */; }; @@ -37,12 +47,6 @@ 6FBEE93124E4231400FEF3F1 /* ADJUrlStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FBEE92F24E4231300FEF3F1 /* ADJUrlStrategy.m */; }; 6FBEE93424E4232800FEF3F1 /* ADJUrlStrategy.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FBEE93224E4232800FEF3F1 /* ADJUrlStrategy.h */; }; 6FBEE93524E4232800FEF3F1 /* ADJUrlStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FBEE93324E4232800FEF3F1 /* ADJUrlStrategy.m */; }; - 6FCC85001F278CF300D6A0ED /* ADJReachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FCC84F71F278CF300D6A0ED /* ADJReachability.m */; }; - 6FCC85011F278CF300D6A0ED /* ADJReachability.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FCC84F81F278CF300D6A0ED /* ADJReachability.h */; }; - 6FCC85041F27945E00D6A0ED /* ADJReachability.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FCC85021F27944600D6A0ED /* ADJReachability.h */; }; - 6FCC85051F27946100D6A0ED /* ADJReachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FCC85031F27944600D6A0ED /* ADJReachability.m */; }; - 6FCC85081F27948C00D6A0ED /* ADJReachability.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FCC85071F27948700D6A0ED /* ADJReachability.h */; }; - 6FCC85091F27949000D6A0ED /* ADJReachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FCC85061F27948700D6A0ED /* ADJReachability.m */; }; 9601C1A01A31DD8900A9AE21 /* CoreTelephony.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9601C19C1A31DD7F00A9AE21 /* CoreTelephony.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; 9601C1A31A31DE0D00A9AE21 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9601C1A11A31DE0300A9AE21 /* SystemConfiguration.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; 9601CAE41C74B70600670879 /* ADJEventSuccess.h in Headers */ = {isa = PBXBuildFile; fileRef = 9601CAE21C74B70600670879 /* ADJEventSuccess.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -62,8 +66,6 @@ 96164D731CC8FA73009431AB /* ADJSdkClickHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 96164D711CC8FA73009431AB /* ADJSdkClickHandler.m */; }; 96164D841CCA4D10009431AB /* ADJSdkClickHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 96164D701CC8FA73009431AB /* ADJSdkClickHandler.h */; }; 96164D861CCA4D27009431AB /* ADJBackoffStrategy.h in Headers */ = {isa = PBXBuildFile; fileRef = 965B7F2E1CC78F6600098639 /* ADJBackoffStrategy.h */; }; - 96164D8C1CCA4DEA009431AB /* ADJSystemProfile.h in Headers */ = {isa = PBXBuildFile; fileRef = 96164D8A1CCA4DEA009431AB /* ADJSystemProfile.h */; }; - 96164D8D1CCA4DEA009431AB /* ADJSystemProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = 96164D8B1CCA4DEA009431AB /* ADJSystemProfile.m */; }; 9620EA451B062D6F009673F1 /* ADJTestActivityPackage.m in Sources */ = {isa = PBXBuildFile; fileRef = 9620EA441B062D6F009673F1 /* ADJTestActivityPackage.m */; }; 9620EA4E1B06401B009673F1 /* ADJTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 9620EA4D1B06401B009673F1 /* ADJTest.m */; }; 9620EA511B065177009673F1 /* ADJPackageFields.m in Sources */ = {isa = PBXBuildFile; fileRef = 9620EA501B065177009673F1 /* ADJPackageFields.m */; }; @@ -71,7 +73,6 @@ 96325E8A190E892600A97911 /* AdSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 96325E84190E5CD900A97911 /* AdSupport.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; 96325E8B190E8D6200A97911 /* iAd.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 96325E86190E5CE400A97911 /* iAd.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; 96325E8C190E8D6B00A97911 /* AdSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 96325E84190E5CD900A97911 /* AdSupport.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; - 965307F61A000DA400107FF9 /* ADJDeviceInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 965307F51A000DA400107FF9 /* ADJDeviceInfo.m */; }; 9657BF6F1A3B029000CD6853 /* ADJAttributionHandlerTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 9657BF6E1A3B029000CD6853 /* ADJAttributionHandlerTests.m */; }; 965B7F301CC78F6600098639 /* ADJBackoffStrategy.h in Headers */ = {isa = PBXBuildFile; fileRef = 965B7F2E1CC78F6600098639 /* ADJBackoffStrategy.h */; }; 965B7F311CC78F6600098639 /* ADJBackoffStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 965B7F2F1CC78F6600098639 /* ADJBackoffStrategy.m */; }; @@ -103,7 +104,6 @@ 96BCFBD01AC9923F005A65C5 /* ADJConfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 960A8BB71A029A8000F2BB95 /* ADJConfig.h */; settings = {ATTRIBUTES = (Public, ); }; }; 96BCFBD11AC99246005A65C5 /* ADJAttribution.h in Headers */ = {isa = PBXBuildFile; fileRef = 969952D01A01309200928462 /* ADJAttribution.h */; settings = {ATTRIBUTES = (Public, ); }; }; 96BCFBD21AC99332005A65C5 /* NSString+ADJAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 96CD2BDC1A13BFC600A40AFB /* NSString+ADJAdditions.h */; }; - 96BCFBD31AC99336005A65C5 /* UIDevice+ADJAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 96CD2BDE1A13BFC600A40AFB /* UIDevice+ADJAdditions.h */; }; 96BCFBD41AC99338005A65C5 /* NSData+ADJAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 96C93DF31AC47F2E00B53F56 /* NSData+ADJAdditions.h */; }; 96BCFBD51AC9933E005A65C5 /* ADJActivityHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 96E5E36218BBB48A008E7B30 /* ADJActivityHandler.h */; }; 96BCFBD61AC99345005A65C5 /* ADJActivityKind.h in Headers */ = {isa = PBXBuildFile; fileRef = 96E5E36418BBB48A008E7B30 /* ADJActivityKind.h */; }; @@ -114,14 +114,11 @@ 96BCFBDB1AC99355005A65C5 /* ADJPackageHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 96E5E37718BBB48A008E7B30 /* ADJPackageHandler.h */; }; 96BCFBDC1AC99360005A65C5 /* ADJRequestHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 96E5E37918BBB48A008E7B30 /* ADJRequestHandler.h */; }; 96BCFBDE1AC99365005A65C5 /* ADJUtil.h in Headers */ = {isa = PBXBuildFile; fileRef = 96E5E37F18BBB48A008E7B30 /* ADJUtil.h */; }; - 96BCFBDF1AC99368005A65C5 /* ADJDeviceInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 9644B7EA19F148F3008576FC /* ADJDeviceInfo.h */; }; 96BCFBE01AC9936C005A65C5 /* ADJAttributionHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 969952CD1A012F5300928462 /* ADJAttributionHandler.h */; }; 96C0EFE01A3EF47A00B39F31 /* NSString+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 96CD2BDD1A13BFC600A40AFB /* NSString+ADJAdditions.m */; }; - 96C0EFE11A3EF47A00B39F31 /* UIDevice+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 96CD2BDF1A13BFC600A40AFB /* UIDevice+ADJAdditions.m */; }; 96C93DF51AC47F2E00B53F56 /* NSData+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 96C93DF41AC47F2E00B53F56 /* NSData+ADJAdditions.m */; }; 96C93DF61AC47FE000B53F56 /* NSData+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 96C93DF41AC47F2E00B53F56 /* NSData+ADJAdditions.m */; }; 96CD2BE01A13BFC600A40AFB /* NSString+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 96CD2BDD1A13BFC600A40AFB /* NSString+ADJAdditions.m */; }; - 96CD2BE11A13BFC600A40AFB /* UIDevice+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 96CD2BDF1A13BFC600A40AFB /* UIDevice+ADJAdditions.m */; }; 96E5E38118BBB48A008E7B30 /* Adjust.m in Sources */ = {isa = PBXBuildFile; fileRef = 96E5E34D18BBB48A008E7B30 /* Adjust.m */; }; 96E5E38B18BBB48A008E7B30 /* ADJActivityHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 96E5E36318BBB48A008E7B30 /* ADJActivityHandler.m */; }; 96E5E38C18BBB48A008E7B30 /* ADJActivityKind.m in Sources */ = {isa = PBXBuildFile; fileRef = 96E5E36518BBB48A008E7B30 /* ADJActivityKind.m */; }; @@ -155,13 +152,11 @@ 9D0C7D3F1D79B3FE009DDF4E /* ADJInitState.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0C7D3E1D79B3FE009DDF4E /* ADJInitState.m */; }; 9D0E2E06210B570600133B4F /* AdjustSdkWebBridge.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E04210B570600133B4F /* AdjustSdkWebBridge.h */; settings = {ATTRIBUTES = (Public, ); }; }; 9D0E2E6B210B575600133B4F /* ADJConfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E17210B575600133B4F /* ADJConfig.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 9D0E2E6C210B575600133B4F /* ADJDeviceInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E18210B575600133B4F /* ADJDeviceInfo.m */; }; 9D0E2E6D210B575600133B4F /* ADJTimerOnce.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E19210B575600133B4F /* ADJTimerOnce.m */; }; 9D0E2E6E210B575600133B4F /* ADJAttributionHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E1A210B575600133B4F /* ADJAttributionHandler.m */; }; 9D0E2E6F210B575600133B4F /* Adjust.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E1B210B575600133B4F /* Adjust.h */; settings = {ATTRIBUTES = (Public, ); }; }; 9D0E2E70210B575600133B4F /* ADJActivityPackage.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E1C210B575600133B4F /* ADJActivityPackage.h */; }; 9D0E2E71210B575600133B4F /* ADJRequestHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E1D210B575600133B4F /* ADJRequestHandler.m */; }; - 9D0E2E72210B575600133B4F /* ADJSystemProfile.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E1E210B575600133B4F /* ADJSystemProfile.h */; }; 9D0E2E73210B575600133B4F /* ADJAttribution.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E1F210B575600133B4F /* ADJAttribution.h */; settings = {ATTRIBUTES = (Public, ); }; }; 9D0E2E75210B575600133B4F /* ADJSdkClickHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E21210B575600133B4F /* ADJSdkClickHandler.m */; }; 9D0E2E76210B575600133B4F /* ADJActivityKind.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E22210B575600133B4F /* ADJActivityKind.h */; }; @@ -176,7 +171,6 @@ 9D0E2E7F210B575600133B4F /* ADJActivityState.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E2B210B575600133B4F /* ADJActivityState.m */; }; 9D0E2E80210B575600133B4F /* ADJSessionFailure.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E2C210B575600133B4F /* ADJSessionFailure.m */; }; 9D0E2E81210B575600133B4F /* ADJUtil.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E2D210B575600133B4F /* ADJUtil.h */; }; - 9D0E2E82210B575600133B4F /* ADJReachability.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E2E210B575600133B4F /* ADJReachability.h */; }; 9D0E2E83210B575600133B4F /* ADJActivityHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E2F210B575600133B4F /* ADJActivityHandler.h */; }; 9D0E2E84210B575600133B4F /* ADJTimerCycle.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E30210B575600133B4F /* ADJTimerCycle.m */; }; 9D0E2E85210B575600133B4F /* ADJSessionParameters.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E31210B575600133B4F /* ADJSessionParameters.m */; }; @@ -186,20 +180,16 @@ 9D0E2E89210B575600133B4F /* Adjust.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E35210B575600133B4F /* Adjust.m */; }; 9D0E2E8A210B575600133B4F /* ADJAttributionHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E36210B575600133B4F /* ADJAttributionHandler.h */; }; 9D0E2E8B210B575600133B4F /* ADJTimerOnce.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E37210B575600133B4F /* ADJTimerOnce.h */; }; - 9D0E2E8C210B575600133B4F /* ADJDeviceInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E38210B575600133B4F /* ADJDeviceInfo.h */; }; 9D0E2E8D210B575600133B4F /* ADJConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E39210B575600133B4F /* ADJConfig.m */; }; 9D0E2E8E210B575600133B4F /* ADJPackageHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E3A210B575600133B4F /* ADJPackageHandler.m */; }; 9D0E2E8F210B575600133B4F /* ADJEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E3B210B575600133B4F /* ADJEvent.h */; settings = {ATTRIBUTES = (Public, ); }; }; 9D0E2E90210B575600133B4F /* ADJSdkClickHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E3C210B575600133B4F /* ADJSdkClickHandler.h */; }; 9D0E2E91210B575600133B4F /* ADJActivityKind.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E3D210B575600133B4F /* ADJActivityKind.m */; }; 9D0E2E93210B575600133B4F /* NSString+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E40210B575600133B4F /* NSString+ADJAdditions.m */; }; - 9D0E2E94210B575600133B4F /* UIDevice+ADJAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E41210B575600133B4F /* UIDevice+ADJAdditions.h */; }; 9D0E2E95210B575600133B4F /* NSData+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E42210B575600133B4F /* NSData+ADJAdditions.m */; }; 9D0E2E96210B575600133B4F /* NSData+ADJAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E43210B575600133B4F /* NSData+ADJAdditions.h */; }; - 9D0E2E97210B575600133B4F /* UIDevice+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E44210B575600133B4F /* UIDevice+ADJAdditions.m */; }; 9D0E2E98210B575600133B4F /* NSString+ADJAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E45210B575600133B4F /* NSString+ADJAdditions.h */; }; 9D0E2E99210B575600133B4F /* ADJAttribution.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E46210B575600133B4F /* ADJAttribution.m */; }; - 9D0E2E9A210B575600133B4F /* ADJSystemProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E47210B575600133B4F /* ADJSystemProfile.m */; }; 9D0E2E9B210B575600133B4F /* ADJRequestHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E48210B575600133B4F /* ADJRequestHandler.h */; }; 9D0E2E9C210B575600133B4F /* ADJActivityPackage.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E49210B575600133B4F /* ADJActivityPackage.m */; }; 9D0E2E9D210B575600133B4F /* ADJUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E4A210B575600133B4F /* ADJUtil.m */; }; @@ -217,7 +207,6 @@ 9D0E2EA9210B575600133B4F /* ADJSessionParameters.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E56210B575600133B4F /* ADJSessionParameters.h */; }; 9D0E2EAB210B575600133B4F /* ADJTimerCycle.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E58210B575600133B4F /* ADJTimerCycle.h */; }; 9D0E2EAC210B575600133B4F /* ADJActivityHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E59210B575600133B4F /* ADJActivityHandler.m */; }; - 9D0E2EAD210B575600133B4F /* ADJReachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E5A210B575600133B4F /* ADJReachability.m */; }; 9D0E2EAE210B575600133B4F /* AdjustBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E5C210B575600133B4F /* AdjustBridge.m */; }; 9D0E2EAF210B575600133B4F /* AdjustBridgeRegister.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0E2E5D210B575600133B4F /* AdjustBridgeRegister.h */; settings = {ATTRIBUTES = (Public, ); }; }; 9D0E2EB0210B575600133B4F /* WebViewJavascriptBridgeBase.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D0E2E5F210B575600133B4F /* WebViewJavascriptBridgeBase.m */; }; @@ -239,6 +228,16 @@ 9D2F24042447DD6000B7CA90 /* ADJSubscription.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D2F24022447DD6000B7CA90 /* ADJSubscription.m */; }; 9D2F24052447DD6000B7CA90 /* ADJSubscription.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D2F24032447DD6000B7CA90 /* ADJSubscription.h */; settings = {ATTRIBUTES = (Public, ); }; }; 9D363AC31BDA50FA00B47FE9 /* ADJLogger.h in Headers */ = {isa = PBXBuildFile; fileRef = 96E5E37318BBB48A008E7B30 /* ADJLogger.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9D3A2ABE2625BEB800BD6E44 /* ADJAdRevenue.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D3A2AAA2625BEB800BD6E44 /* ADJAdRevenue.m */; }; + 9D3A2ABF2625BEB800BD6E44 /* ADJAdRevenue.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D3A2ABD2625BEB800BD6E44 /* ADJAdRevenue.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9D3A2AC52626501D00BD6E44 /* ADJAdRevenue.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D3A2AC32626501D00BD6E44 /* ADJAdRevenue.m */; }; + 9D3A2AC62626501D00BD6E44 /* ADJAdRevenue.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D3A2AC42626501D00BD6E44 /* ADJAdRevenue.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9D3A2AC92626505800BD6E44 /* ADJAdRevenue.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D3A2AC72626505800BD6E44 /* ADJAdRevenue.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9D3A2ACA2626505800BD6E44 /* ADJAdRevenue.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D3A2AC82626505800BD6E44 /* ADJAdRevenue.m */; }; + 9D3A2ACD2626508F00BD6E44 /* ADJAdRevenue.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D3A2ACB2626508F00BD6E44 /* ADJAdRevenue.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9D3A2ACE2626508F00BD6E44 /* ADJAdRevenue.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D3A2ACC2626508F00BD6E44 /* ADJAdRevenue.m */; }; + 9D3A2AD1262650C300BD6E44 /* ADJAdRevenue.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D3A2ACF262650C300BD6E44 /* ADJAdRevenue.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9D3A2AD2262650C300BD6E44 /* ADJAdRevenue.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D3A2AD0262650C300BD6E44 /* ADJAdRevenue.m */; }; 9D651BF525B25A64006D69D6 /* ADJThirdPartySharing.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D651BE125B25A64006D69D6 /* ADJThirdPartySharing.m */; }; 9D651BF625B25A64006D69D6 /* ADJThirdPartySharing.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D651BF425B25A64006D69D6 /* ADJThirdPartySharing.h */; settings = {ATTRIBUTES = (Public, ); }; }; 9D651C8825B26DF5006D69D6 /* ADJThirdPartySharing.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D651C8625B26DF4006D69D6 /* ADJThirdPartySharing.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -262,13 +261,11 @@ 9DE354D62100726300D211C9 /* AdjustSdkIm.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DE354D42100726300D211C9 /* AdjustSdkIm.h */; settings = {ATTRIBUTES = (Public, ); }; }; 9DE7C8FD1AE688DA001556E5 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9DE7C8FC1AE688DA001556E5 /* UIKit.framework */; }; 9DEAF0F5210072BC005CAEDB /* ADJConfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DEAF0B1210072BC005CAEDB /* ADJConfig.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 9DEAF0F6210072BC005CAEDB /* ADJDeviceInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0B2210072BC005CAEDB /* ADJDeviceInfo.m */; }; 9DEAF0F7210072BC005CAEDB /* ADJTimerOnce.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0B3210072BC005CAEDB /* ADJTimerOnce.m */; }; 9DEAF0F8210072BC005CAEDB /* ADJAttributionHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0B4210072BC005CAEDB /* ADJAttributionHandler.m */; }; 9DEAF0F9210072BC005CAEDB /* Adjust.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DEAF0B5210072BC005CAEDB /* Adjust.h */; settings = {ATTRIBUTES = (Public, ); }; }; 9DEAF0FA210072BC005CAEDB /* ADJActivityPackage.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DEAF0B6210072BC005CAEDB /* ADJActivityPackage.h */; }; 9DEAF0FB210072BC005CAEDB /* ADJRequestHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0B7210072BC005CAEDB /* ADJRequestHandler.m */; }; - 9DEAF0FC210072BC005CAEDB /* ADJSystemProfile.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DEAF0B8210072BC005CAEDB /* ADJSystemProfile.h */; }; 9DEAF0FD210072BC005CAEDB /* ADJAttribution.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DEAF0B9210072BC005CAEDB /* ADJAttribution.h */; settings = {ATTRIBUTES = (Public, ); }; }; 9DEAF0FF210072BC005CAEDB /* ADJSdkClickHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0BB210072BC005CAEDB /* ADJSdkClickHandler.m */; }; 9DEAF100210072BC005CAEDB /* ADJActivityKind.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DEAF0BC210072BC005CAEDB /* ADJActivityKind.h */; }; @@ -283,7 +280,6 @@ 9DEAF109210072BC005CAEDB /* ADJActivityState.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0C5210072BC005CAEDB /* ADJActivityState.m */; }; 9DEAF10A210072BC005CAEDB /* ADJSessionFailure.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0C6210072BC005CAEDB /* ADJSessionFailure.m */; }; 9DEAF10B210072BC005CAEDB /* ADJUtil.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DEAF0C7210072BC005CAEDB /* ADJUtil.h */; }; - 9DEAF10C210072BC005CAEDB /* ADJReachability.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DEAF0C8210072BC005CAEDB /* ADJReachability.h */; }; 9DEAF10D210072BC005CAEDB /* ADJActivityHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DEAF0C9210072BC005CAEDB /* ADJActivityHandler.h */; }; 9DEAF10E210072BC005CAEDB /* ADJTimerCycle.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0CA210072BC005CAEDB /* ADJTimerCycle.m */; }; 9DEAF10F210072BC005CAEDB /* ADJSessionParameters.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0CB210072BC005CAEDB /* ADJSessionParameters.m */; }; @@ -293,20 +289,16 @@ 9DEAF113210072BC005CAEDB /* Adjust.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0CF210072BC005CAEDB /* Adjust.m */; }; 9DEAF114210072BC005CAEDB /* ADJAttributionHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DEAF0D0210072BC005CAEDB /* ADJAttributionHandler.h */; }; 9DEAF115210072BC005CAEDB /* ADJTimerOnce.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DEAF0D1210072BC005CAEDB /* ADJTimerOnce.h */; }; - 9DEAF116210072BC005CAEDB /* ADJDeviceInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DEAF0D2210072BC005CAEDB /* ADJDeviceInfo.h */; }; 9DEAF117210072BC005CAEDB /* ADJConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0D3210072BC005CAEDB /* ADJConfig.m */; }; 9DEAF118210072BC005CAEDB /* ADJPackageHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0D4210072BC005CAEDB /* ADJPackageHandler.m */; }; 9DEAF119210072BC005CAEDB /* ADJEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DEAF0D5210072BC005CAEDB /* ADJEvent.h */; settings = {ATTRIBUTES = (Public, ); }; }; 9DEAF11A210072BC005CAEDB /* ADJSdkClickHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DEAF0D6210072BC005CAEDB /* ADJSdkClickHandler.h */; }; 9DEAF11B210072BC005CAEDB /* ADJActivityKind.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0D7210072BC005CAEDB /* ADJActivityKind.m */; }; 9DEAF11D210072BC005CAEDB /* NSString+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0DA210072BC005CAEDB /* NSString+ADJAdditions.m */; }; - 9DEAF11E210072BC005CAEDB /* UIDevice+ADJAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DEAF0DB210072BC005CAEDB /* UIDevice+ADJAdditions.h */; }; 9DEAF11F210072BC005CAEDB /* NSData+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0DC210072BC005CAEDB /* NSData+ADJAdditions.m */; }; 9DEAF120210072BC005CAEDB /* NSData+ADJAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DEAF0DD210072BC005CAEDB /* NSData+ADJAdditions.h */; }; - 9DEAF121210072BC005CAEDB /* UIDevice+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0DE210072BC005CAEDB /* UIDevice+ADJAdditions.m */; }; 9DEAF122210072BC005CAEDB /* NSString+ADJAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DEAF0DF210072BC005CAEDB /* NSString+ADJAdditions.h */; }; 9DEAF123210072BC005CAEDB /* ADJAttribution.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0E0210072BC005CAEDB /* ADJAttribution.m */; }; - 9DEAF124210072BC005CAEDB /* ADJSystemProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0E1210072BC005CAEDB /* ADJSystemProfile.m */; }; 9DEAF125210072BC005CAEDB /* ADJRequestHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DEAF0E2210072BC005CAEDB /* ADJRequestHandler.h */; }; 9DEAF126210072BC005CAEDB /* ADJActivityPackage.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0E3210072BC005CAEDB /* ADJActivityPackage.m */; }; 9DEAF127210072BC005CAEDB /* ADJUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0E4210072BC005CAEDB /* ADJUtil.m */; }; @@ -324,7 +316,6 @@ 9DEAF133210072BC005CAEDB /* ADJSessionParameters.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DEAF0F0210072BC005CAEDB /* ADJSessionParameters.h */; }; 9DEAF135210072BC005CAEDB /* ADJTimerCycle.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DEAF0F2210072BC005CAEDB /* ADJTimerCycle.h */; }; 9DEAF136210072BC005CAEDB /* ADJActivityHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0F3210072BC005CAEDB /* ADJActivityHandler.m */; }; - 9DEAF137210072BC005CAEDB /* ADJReachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DEAF0F4210072BC005CAEDB /* ADJReachability.m */; }; 9DF381BC260E990B0033F5A1 /* NSNumber+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF381A8260E990B0033F5A1 /* NSNumber+ADJAdditions.m */; }; 9DF381BD260E990B0033F5A1 /* NSNumber+ADJAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DF381BB260E990B0033F5A1 /* NSNumber+ADJAdditions.h */; }; 9DF381F5260E9AF50033F5A1 /* NSNumber+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF381F3260E9AF50033F5A1 /* NSNumber+ADJAdditions.m */; }; @@ -335,6 +326,14 @@ 9DF38210260E9B740033F5A1 /* NSNumber+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3820E260E9B740033F5A1 /* NSNumber+ADJAdditions.m */; }; 9DF3821C260E9B8D0033F5A1 /* NSNumber+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3821A260E9B8D0033F5A1 /* NSNumber+ADJAdditions.m */; }; 9DF3821D260E9B8D0033F5A1 /* NSNumber+ADJAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DF3821B260E9B8D0033F5A1 /* NSNumber+ADJAdditions.h */; }; + 9DF92D832630ED02000FC3FC /* ADJPackageParams.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DF92D812630ED02000FC3FC /* ADJPackageParams.h */; }; + 9DF92D842630ED02000FC3FC /* ADJPackageParams.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92D822630ED02000FC3FC /* ADJPackageParams.m */; }; + 9DF92D872630ED3D000FC3FC /* ADJPackageParams.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DF92D852630ED3D000FC3FC /* ADJPackageParams.h */; }; + 9DF92D882630ED3D000FC3FC /* ADJPackageParams.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92D862630ED3D000FC3FC /* ADJPackageParams.m */; }; + 9DF92D8B2630ED59000FC3FC /* ADJPackageParams.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DF92D892630ED59000FC3FC /* ADJPackageParams.h */; }; + 9DF92D8C2630ED59000FC3FC /* ADJPackageParams.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92D8A2630ED59000FC3FC /* ADJPackageParams.m */; }; + 9DF92D8F2630ED7B000FC3FC /* ADJPackageParams.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92D8D2630ED7B000FC3FC /* ADJPackageParams.m */; }; + 9DF92D902630ED7B000FC3FC /* ADJPackageParams.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DF92D8E2630ED7B000FC3FC /* ADJPackageParams.h */; }; 9DF9C9091D6F3CA5008E362F /* ADJActivityHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DF9C8C91D6F3CA5008E362F /* ADJActivityHandler.h */; }; 9DF9C90A1D6F3CA5008E362F /* ADJActivityHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF9C8CA1D6F3CA5008E362F /* ADJActivityHandler.m */; }; 9DF9C90B1D6F3CA5008E362F /* ADJActivityKind.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DF9C8CB1D6F3CA5008E362F /* ADJActivityKind.h */; }; @@ -347,8 +346,6 @@ 9DF9C9121D6F3CA5008E362F /* NSData+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF9C8D31D6F3CA5008E362F /* NSData+ADJAdditions.m */; }; 9DF9C9131D6F3CA5008E362F /* NSString+ADJAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DF9C8D41D6F3CA5008E362F /* NSString+ADJAdditions.h */; }; 9DF9C9141D6F3CA5008E362F /* NSString+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF9C8D51D6F3CA5008E362F /* NSString+ADJAdditions.m */; }; - 9DF9C9151D6F3CA5008E362F /* UIDevice+ADJAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DF9C8D61D6F3CA5008E362F /* UIDevice+ADJAdditions.h */; }; - 9DF9C9161D6F3CA5008E362F /* UIDevice+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF9C8D71D6F3CA5008E362F /* UIDevice+ADJAdditions.m */; }; 9DF9C9171D6F3CA5008E362F /* ADJAdjustFactory.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DF9C8D81D6F3CA5008E362F /* ADJAdjustFactory.h */; }; 9DF9C9181D6F3CA5008E362F /* ADJAdjustFactory.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF9C8D91D6F3CA5008E362F /* ADJAdjustFactory.m */; }; 9DF9C9191D6F3CA5008E362F /* ADJAttribution.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DF9C8DA1D6F3CA5008E362F /* ADJAttribution.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -357,8 +354,6 @@ 9DF9C91C1D6F3CA5008E362F /* ADJAttributionHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF9C8DD1D6F3CA5008E362F /* ADJAttributionHandler.m */; }; 9DF9C91F1D6F3CA5008E362F /* ADJConfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DF9C8E01D6F3CA5008E362F /* ADJConfig.h */; settings = {ATTRIBUTES = (Public, ); }; }; 9DF9C9201D6F3CA5008E362F /* ADJConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF9C8E11D6F3CA5008E362F /* ADJConfig.m */; }; - 9DF9C9211D6F3CA5008E362F /* ADJDeviceInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DF9C8E21D6F3CA5008E362F /* ADJDeviceInfo.h */; }; - 9DF9C9221D6F3CA5008E362F /* ADJDeviceInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF9C8E31D6F3CA5008E362F /* ADJDeviceInfo.m */; }; 9DF9C9231D6F3CA5008E362F /* ADJEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DF9C8E41D6F3CA5008E362F /* ADJEvent.h */; settings = {ATTRIBUTES = (Public, ); }; }; 9DF9C9241D6F3CA5008E362F /* ADJEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF9C8E51D6F3CA5008E362F /* ADJEvent.m */; }; 9DF9C9251D6F3CA5008E362F /* ADJEventFailure.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DF9C8E61D6F3CA5008E362F /* ADJEventFailure.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -379,8 +374,6 @@ 9DF9C9381D6F3CA5008E362F /* ADJSessionFailure.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF9C8F91D6F3CA5008E362F /* ADJSessionFailure.m */; }; 9DF9C9391D6F3CA5008E362F /* ADJSessionSuccess.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DF9C8FA1D6F3CA5008E362F /* ADJSessionSuccess.h */; settings = {ATTRIBUTES = (Public, ); }; }; 9DF9C93A1D6F3CA5008E362F /* ADJSessionSuccess.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF9C8FB1D6F3CA5008E362F /* ADJSessionSuccess.m */; }; - 9DF9C93B1D6F3CA5008E362F /* ADJSystemProfile.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DF9C8FC1D6F3CA5008E362F /* ADJSystemProfile.h */; }; - 9DF9C93C1D6F3CA5008E362F /* ADJSystemProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF9C8FD1D6F3CA5008E362F /* ADJSystemProfile.m */; }; 9DF9C93D1D6F3CA5008E362F /* ADJTimerCycle.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DF9C8FE1D6F3CA5008E362F /* ADJTimerCycle.h */; }; 9DF9C93E1D6F3CA5008E362F /* ADJTimerCycle.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF9C8FF1D6F3CA5008E362F /* ADJTimerCycle.m */; }; 9DF9C93F1D6F3CA5008E362F /* ADJTimerOnce.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DF9C9001D6F3CA5008E362F /* ADJTimerOnce.h */; }; @@ -403,8 +396,6 @@ 9DFB06631D7470C0006D48FC /* NSData+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DFB06241D7470C0006D48FC /* NSData+ADJAdditions.m */; }; 9DFB06641D7470C0006D48FC /* NSString+ADJAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DFB06251D7470C0006D48FC /* NSString+ADJAdditions.h */; }; 9DFB06651D7470C0006D48FC /* NSString+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DFB06261D7470C0006D48FC /* NSString+ADJAdditions.m */; }; - 9DFB06661D7470C0006D48FC /* UIDevice+ADJAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DFB06271D7470C0006D48FC /* UIDevice+ADJAdditions.h */; }; - 9DFB06671D7470C0006D48FC /* UIDevice+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DFB06281D7470C0006D48FC /* UIDevice+ADJAdditions.m */; }; 9DFB06681D7470C0006D48FC /* ADJAdjustFactory.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DFB06291D7470C0006D48FC /* ADJAdjustFactory.h */; }; 9DFB06691D7470C0006D48FC /* ADJAdjustFactory.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DFB062A1D7470C0006D48FC /* ADJAdjustFactory.m */; }; 9DFB066A1D7470C0006D48FC /* ADJAttribution.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DFB062B1D7470C0006D48FC /* ADJAttribution.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -415,8 +406,8 @@ 9DFB066F1D7470C0006D48FC /* ADJBackoffStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DFB06301D7470C0006D48FC /* ADJBackoffStrategy.m */; }; 9DFB06701D7470C0006D48FC /* ADJConfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DFB06311D7470C0006D48FC /* ADJConfig.h */; settings = {ATTRIBUTES = (Public, ); }; }; 9DFB06711D7470C0006D48FC /* ADJConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DFB06321D7470C0006D48FC /* ADJConfig.m */; }; - 9DFB06721D7470C0006D48FC /* ADJDeviceInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DFB06331D7470C0006D48FC /* ADJDeviceInfo.h */; }; - 9DFB06731D7470C0006D48FC /* ADJDeviceInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DFB06341D7470C0006D48FC /* ADJDeviceInfo.m */; }; + 9DFB06721D7470C0006D48FC /* ADJPackageParams.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DFB06331D7470C0006D48FC /* ADJPackageParams.h */; }; + 9DFB06731D7470C0006D48FC /* ADJPackageParams.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DFB06341D7470C0006D48FC /* ADJPackageParams.m */; }; 9DFB06741D7470C0006D48FC /* ADJEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DFB06351D7470C0006D48FC /* ADJEvent.h */; settings = {ATTRIBUTES = (Public, ); }; }; 9DFB06751D7470C0006D48FC /* ADJEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DFB06361D7470C0006D48FC /* ADJEvent.m */; }; 9DFB06761D7470C0006D48FC /* ADJEventFailure.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DFB06371D7470C0006D48FC /* ADJEventFailure.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -439,8 +430,6 @@ 9DFB06891D7470C0006D48FC /* ADJSessionFailure.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DFB064A1D7470C0006D48FC /* ADJSessionFailure.m */; }; 9DFB068A1D7470C0006D48FC /* ADJSessionSuccess.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DFB064B1D7470C0006D48FC /* ADJSessionSuccess.h */; settings = {ATTRIBUTES = (Public, ); }; }; 9DFB068B1D7470C0006D48FC /* ADJSessionSuccess.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DFB064C1D7470C0006D48FC /* ADJSessionSuccess.m */; }; - 9DFB068C1D7470C0006D48FC /* ADJSystemProfile.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DFB064D1D7470C0006D48FC /* ADJSystemProfile.h */; }; - 9DFB068D1D7470C0006D48FC /* ADJSystemProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DFB064E1D7470C0006D48FC /* ADJSystemProfile.m */; }; 9DFB068E1D7470C0006D48FC /* ADJTimerCycle.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DFB064F1D7470C0006D48FC /* ADJTimerCycle.h */; }; 9DFB068F1D7470C0006D48FC /* ADJTimerCycle.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DFB06501D7470C0006D48FC /* ADJTimerCycle.m */; }; 9DFB06901D7470C0006D48FC /* ADJTimerOnce.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DFB06511D7470C0006D48FC /* ADJTimerOnce.h */; }; @@ -623,6 +612,16 @@ 6F7AF63F211878BC00F730B2 /* AdjustWebBridgeTestApp.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = AdjustWebBridgeTestApp.xcodeproj; path = AdjustWebBridgeTestApp/AdjustWebBridgeTestApp.xcodeproj; sourceTree = ""; }; 6F84511025B1B1380004C7C0 /* ADJThirdPartySharing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJThirdPartySharing.h; sourceTree = ""; }; 6F84512325B1B1380004C7C0 /* ADJThirdPartySharing.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJThirdPartySharing.m; sourceTree = ""; }; + 6FAB784A2636DC0E00773869 /* ADJLinkResolution.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ADJLinkResolution.h; sourceTree = ""; }; + 6FAB784B2636DC0E00773869 /* ADJLinkResolution.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ADJLinkResolution.m; sourceTree = ""; }; + 6FAB78692636DC8400773869 /* ADJLinkResolution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJLinkResolution.h; sourceTree = ""; }; + 6FAB786A2636DC8400773869 /* ADJLinkResolution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJLinkResolution.m; sourceTree = ""; }; + 6FAB78762636DCB600773869 /* ADJLinkResolution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJLinkResolution.h; sourceTree = ""; }; + 6FAB78772636DCB600773869 /* ADJLinkResolution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJLinkResolution.m; sourceTree = ""; }; + 6FAB78832636DCCD00773869 /* ADJLinkResolution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJLinkResolution.h; sourceTree = ""; }; + 6FAB78842636DCCD00773869 /* ADJLinkResolution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJLinkResolution.m; sourceTree = ""; }; + 6FAB78902636DCE700773869 /* ADJLinkResolution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJLinkResolution.m; sourceTree = ""; }; + 6FAB78912636DCE700773869 /* ADJLinkResolution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJLinkResolution.h; sourceTree = ""; }; 6FBE0C6C2577CDAC00EC2CE0 /* ADJThirdPartySharing.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ADJThirdPartySharing.h; sourceTree = ""; }; 6FBE0C6D2577CDAC00EC2CE0 /* ADJThirdPartySharing.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ADJThirdPartySharing.m; sourceTree = ""; }; 6FBEE8F124E2C26F00FEF3F1 /* ADJUrlStrategy.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ADJUrlStrategy.h; sourceTree = ""; }; @@ -635,12 +634,6 @@ 6FBEE92F24E4231300FEF3F1 /* ADJUrlStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUrlStrategy.m; sourceTree = ""; }; 6FBEE93224E4232800FEF3F1 /* ADJUrlStrategy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUrlStrategy.h; sourceTree = ""; }; 6FBEE93324E4232800FEF3F1 /* ADJUrlStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUrlStrategy.m; sourceTree = ""; }; - 6FCC84F71F278CF300D6A0ED /* ADJReachability.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJReachability.m; sourceTree = ""; }; - 6FCC84F81F278CF300D6A0ED /* ADJReachability.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJReachability.h; sourceTree = ""; }; - 6FCC85021F27944600D6A0ED /* ADJReachability.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ADJReachability.h; sourceTree = ""; }; - 6FCC85031F27944600D6A0ED /* ADJReachability.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ADJReachability.m; sourceTree = ""; }; - 6FCC85061F27948700D6A0ED /* ADJReachability.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ADJReachability.m; sourceTree = ""; }; - 6FCC85071F27948700D6A0ED /* ADJReachability.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ADJReachability.h; sourceTree = ""; }; 9601C19C1A31DD7F00A9AE21 /* CoreTelephony.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreTelephony.framework; path = System/Library/Frameworks/CoreTelephony.framework; sourceTree = SDKROOT; }; 9601C1A11A31DE0300A9AE21 /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = System/Library/Frameworks/SystemConfiguration.framework; sourceTree = SDKROOT; }; 9601CAE21C74B70600670879 /* ADJEventSuccess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEventSuccess.h; sourceTree = ""; }; @@ -655,8 +648,6 @@ 961515A11CD2CB4F0022D336 /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; 96164D701CC8FA73009431AB /* ADJSdkClickHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSdkClickHandler.h; sourceTree = ""; }; 96164D711CC8FA73009431AB /* ADJSdkClickHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSdkClickHandler.m; sourceTree = ""; }; - 96164D8A1CCA4DEA009431AB /* ADJSystemProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSystemProfile.h; sourceTree = ""; }; - 96164D8B1CCA4DEA009431AB /* ADJSystemProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSystemProfile.m; sourceTree = ""; }; 9620EA431B062D6F009673F1 /* ADJTestActivityPackage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTestActivityPackage.h; sourceTree = ""; }; 9620EA441B062D6F009673F1 /* ADJTestActivityPackage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTestActivityPackage.m; sourceTree = ""; }; 9620EA4C1B06401B009673F1 /* ADJTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTest.h; sourceTree = ""; }; @@ -665,7 +656,6 @@ 9620EA501B065177009673F1 /* ADJPackageFields.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageFields.m; sourceTree = ""; }; 96325E84190E5CD900A97911 /* AdSupport.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AdSupport.framework; path = System/Library/Frameworks/AdSupport.framework; sourceTree = SDKROOT; }; 96325E86190E5CE400A97911 /* iAd.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = iAd.framework; path = System/Library/Frameworks/iAd.framework; sourceTree = SDKROOT; }; - 9644B7EA19F148F3008576FC /* ADJDeviceInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJDeviceInfo.h; sourceTree = ""; }; 9648C5E81CD1765E00A3B049 /* WebViewJavascriptBridge_JS.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WebViewJavascriptBridge_JS.h; sourceTree = ""; }; 9648C5E91CD1765E00A3B049 /* WebViewJavascriptBridge_JS.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = WebViewJavascriptBridge_JS.m; sourceTree = ""; }; 9648C5EA1CD1765E00A3B049 /* WebViewJavascriptBridgeBase.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WebViewJavascriptBridgeBase.h; sourceTree = ""; }; @@ -674,7 +664,6 @@ 9648C5ED1CD1765E00A3B049 /* WKWebViewJavascriptBridge.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = WKWebViewJavascriptBridge.m; sourceTree = ""; }; 9648C5F51CD1770300A3B049 /* AdjustBridge.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AdjustBridge.h; sourceTree = ""; }; 9648C5F61CD1770300A3B049 /* AdjustBridge.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AdjustBridge.m; sourceTree = ""; }; - 965307F51A000DA400107FF9 /* ADJDeviceInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJDeviceInfo.m; sourceTree = ""; }; 9657BF6E1A3B029000CD6853 /* ADJAttributionHandlerTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAttributionHandlerTests.m; sourceTree = ""; }; 965B7F2E1CC78F6600098639 /* ADJBackoffStrategy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJBackoffStrategy.h; sourceTree = ""; }; 965B7F2F1CC78F6600098639 /* ADJBackoffStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJBackoffStrategy.m; sourceTree = ""; }; @@ -709,8 +698,6 @@ 96C93DF41AC47F2E00B53F56 /* NSData+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+ADJAdditions.m"; sourceTree = ""; }; 96CD2BDC1A13BFC600A40AFB /* NSString+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+ADJAdditions.h"; sourceTree = ""; }; 96CD2BDD1A13BFC600A40AFB /* NSString+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+ADJAdditions.m"; sourceTree = ""; }; - 96CD2BDE1A13BFC600A40AFB /* UIDevice+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIDevice+ADJAdditions.h"; sourceTree = ""; }; - 96CD2BDF1A13BFC600A40AFB /* UIDevice+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIDevice+ADJAdditions.m"; sourceTree = ""; }; 96E5E34C18BBB48A008E7B30 /* Adjust.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Adjust.h; sourceTree = ""; }; 96E5E34D18BBB48A008E7B30 /* Adjust.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Adjust.m; sourceTree = ""; }; 96E5E36218BBB48A008E7B30 /* ADJActivityHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityHandler.h; sourceTree = ""; }; @@ -775,13 +762,11 @@ 9D0E2E04210B570600133B4F /* AdjustSdkWebBridge.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AdjustSdkWebBridge.h; sourceTree = ""; }; 9D0E2E05210B570600133B4F /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 9D0E2E17210B575600133B4F /* ADJConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJConfig.h; sourceTree = ""; }; - 9D0E2E18210B575600133B4F /* ADJDeviceInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJDeviceInfo.m; sourceTree = ""; }; 9D0E2E19210B575600133B4F /* ADJTimerOnce.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerOnce.m; sourceTree = ""; }; 9D0E2E1A210B575600133B4F /* ADJAttributionHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAttributionHandler.m; sourceTree = ""; }; 9D0E2E1B210B575600133B4F /* Adjust.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Adjust.h; sourceTree = ""; }; 9D0E2E1C210B575600133B4F /* ADJActivityPackage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityPackage.h; sourceTree = ""; }; 9D0E2E1D210B575600133B4F /* ADJRequestHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJRequestHandler.m; sourceTree = ""; }; - 9D0E2E1E210B575600133B4F /* ADJSystemProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSystemProfile.h; sourceTree = ""; }; 9D0E2E1F210B575600133B4F /* ADJAttribution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttribution.h; sourceTree = ""; }; 9D0E2E21210B575600133B4F /* ADJSdkClickHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSdkClickHandler.m; sourceTree = ""; }; 9D0E2E22210B575600133B4F /* ADJActivityKind.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityKind.h; sourceTree = ""; }; @@ -796,7 +781,6 @@ 9D0E2E2B210B575600133B4F /* ADJActivityState.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityState.m; sourceTree = ""; }; 9D0E2E2C210B575600133B4F /* ADJSessionFailure.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionFailure.m; sourceTree = ""; }; 9D0E2E2D210B575600133B4F /* ADJUtil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUtil.h; sourceTree = ""; }; - 9D0E2E2E210B575600133B4F /* ADJReachability.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJReachability.h; sourceTree = ""; }; 9D0E2E2F210B575600133B4F /* ADJActivityHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityHandler.h; sourceTree = ""; }; 9D0E2E30210B575600133B4F /* ADJTimerCycle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerCycle.m; sourceTree = ""; }; 9D0E2E31210B575600133B4F /* ADJSessionParameters.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionParameters.m; sourceTree = ""; }; @@ -806,20 +790,16 @@ 9D0E2E35210B575600133B4F /* Adjust.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Adjust.m; sourceTree = ""; }; 9D0E2E36210B575600133B4F /* ADJAttributionHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttributionHandler.h; sourceTree = ""; }; 9D0E2E37210B575600133B4F /* ADJTimerOnce.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerOnce.h; sourceTree = ""; }; - 9D0E2E38210B575600133B4F /* ADJDeviceInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJDeviceInfo.h; sourceTree = ""; }; 9D0E2E39210B575600133B4F /* ADJConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJConfig.m; sourceTree = ""; }; 9D0E2E3A210B575600133B4F /* ADJPackageHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageHandler.m; sourceTree = ""; }; 9D0E2E3B210B575600133B4F /* ADJEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEvent.h; sourceTree = ""; }; 9D0E2E3C210B575600133B4F /* ADJSdkClickHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSdkClickHandler.h; sourceTree = ""; }; 9D0E2E3D210B575600133B4F /* ADJActivityKind.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityKind.m; sourceTree = ""; }; 9D0E2E40210B575600133B4F /* NSString+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+ADJAdditions.m"; sourceTree = ""; }; - 9D0E2E41210B575600133B4F /* UIDevice+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIDevice+ADJAdditions.h"; sourceTree = ""; }; 9D0E2E42210B575600133B4F /* NSData+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+ADJAdditions.m"; sourceTree = ""; }; 9D0E2E43210B575600133B4F /* NSData+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData+ADJAdditions.h"; sourceTree = ""; }; - 9D0E2E44210B575600133B4F /* UIDevice+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIDevice+ADJAdditions.m"; sourceTree = ""; }; 9D0E2E45210B575600133B4F /* NSString+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+ADJAdditions.h"; sourceTree = ""; }; 9D0E2E46210B575600133B4F /* ADJAttribution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAttribution.m; sourceTree = ""; }; - 9D0E2E47210B575600133B4F /* ADJSystemProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSystemProfile.m; sourceTree = ""; }; 9D0E2E48210B575600133B4F /* ADJRequestHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJRequestHandler.h; sourceTree = ""; }; 9D0E2E49210B575600133B4F /* ADJActivityPackage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityPackage.m; sourceTree = ""; }; 9D0E2E4A210B575600133B4F /* ADJUtil.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUtil.m; sourceTree = ""; }; @@ -837,7 +817,6 @@ 9D0E2E56210B575600133B4F /* ADJSessionParameters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSessionParameters.h; sourceTree = ""; }; 9D0E2E58210B575600133B4F /* ADJTimerCycle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerCycle.h; sourceTree = ""; }; 9D0E2E59210B575600133B4F /* ADJActivityHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityHandler.m; sourceTree = ""; }; - 9D0E2E5A210B575600133B4F /* ADJReachability.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJReachability.m; sourceTree = ""; }; 9D0E2E5C210B575600133B4F /* AdjustBridge.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AdjustBridge.m; sourceTree = ""; }; 9D0E2E5D210B575600133B4F /* AdjustBridgeRegister.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AdjustBridgeRegister.h; sourceTree = ""; }; 9D0E2E5F210B575600133B4F /* WebViewJavascriptBridgeBase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WebViewJavascriptBridgeBase.m; sourceTree = ""; }; @@ -858,6 +837,16 @@ 9D2F23FF2447DD3700B7CA90 /* ADJSubscription.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSubscription.m; sourceTree = ""; }; 9D2F24022447DD6000B7CA90 /* ADJSubscription.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSubscription.m; sourceTree = ""; }; 9D2F24032447DD6000B7CA90 /* ADJSubscription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSubscription.h; sourceTree = ""; }; + 9D3A2AAA2625BEB800BD6E44 /* ADJAdRevenue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdRevenue.m; sourceTree = ""; }; + 9D3A2ABD2625BEB800BD6E44 /* ADJAdRevenue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdRevenue.h; sourceTree = ""; }; + 9D3A2AC32626501D00BD6E44 /* ADJAdRevenue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdRevenue.m; sourceTree = ""; }; + 9D3A2AC42626501D00BD6E44 /* ADJAdRevenue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdRevenue.h; sourceTree = ""; }; + 9D3A2AC72626505800BD6E44 /* ADJAdRevenue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdRevenue.h; sourceTree = ""; }; + 9D3A2AC82626505800BD6E44 /* ADJAdRevenue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdRevenue.m; sourceTree = ""; }; + 9D3A2ACB2626508F00BD6E44 /* ADJAdRevenue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdRevenue.h; sourceTree = ""; }; + 9D3A2ACC2626508F00BD6E44 /* ADJAdRevenue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdRevenue.m; sourceTree = ""; }; + 9D3A2ACF262650C300BD6E44 /* ADJAdRevenue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdRevenue.h; sourceTree = ""; }; + 9D3A2AD0262650C300BD6E44 /* ADJAdRevenue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdRevenue.m; sourceTree = ""; }; 9D449DB31E6ED23400E7E80B /* AdjustExample-iWatch.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = "AdjustExample-iWatch.xcodeproj"; path = "examples/AdjustExample-iWatch/AdjustExample-iWatch.xcodeproj"; sourceTree = ""; }; 9D449DBF1E6ED23900E7E80B /* AdjustExample-Swift.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = "AdjustExample-Swift.xcodeproj"; path = "examples/AdjustExample-Swift/AdjustExample-Swift.xcodeproj"; sourceTree = ""; }; 9D449DC51E6ED24000E7E80B /* AdjustExample-tvOS.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = "AdjustExample-tvOS.xcodeproj"; path = "examples/AdjustExample-tvOS/AdjustExample-tvOS.xcodeproj"; sourceTree = ""; }; @@ -887,13 +876,11 @@ 9DE354D52100726300D211C9 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 9DE7C8FC1AE688DA001556E5 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; 9DEAF0B1210072BC005CAEDB /* ADJConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJConfig.h; sourceTree = ""; }; - 9DEAF0B2210072BC005CAEDB /* ADJDeviceInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJDeviceInfo.m; sourceTree = ""; }; 9DEAF0B3210072BC005CAEDB /* ADJTimerOnce.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerOnce.m; sourceTree = ""; }; 9DEAF0B4210072BC005CAEDB /* ADJAttributionHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAttributionHandler.m; sourceTree = ""; }; 9DEAF0B5210072BC005CAEDB /* Adjust.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Adjust.h; sourceTree = ""; }; 9DEAF0B6210072BC005CAEDB /* ADJActivityPackage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityPackage.h; sourceTree = ""; }; 9DEAF0B7210072BC005CAEDB /* ADJRequestHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJRequestHandler.m; sourceTree = ""; }; - 9DEAF0B8210072BC005CAEDB /* ADJSystemProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSystemProfile.h; sourceTree = ""; }; 9DEAF0B9210072BC005CAEDB /* ADJAttribution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttribution.h; sourceTree = ""; }; 9DEAF0BB210072BC005CAEDB /* ADJSdkClickHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSdkClickHandler.m; sourceTree = ""; }; 9DEAF0BC210072BC005CAEDB /* ADJActivityKind.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityKind.h; sourceTree = ""; }; @@ -908,7 +895,6 @@ 9DEAF0C5210072BC005CAEDB /* ADJActivityState.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityState.m; sourceTree = ""; }; 9DEAF0C6210072BC005CAEDB /* ADJSessionFailure.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionFailure.m; sourceTree = ""; }; 9DEAF0C7210072BC005CAEDB /* ADJUtil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUtil.h; sourceTree = ""; }; - 9DEAF0C8210072BC005CAEDB /* ADJReachability.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJReachability.h; sourceTree = ""; }; 9DEAF0C9210072BC005CAEDB /* ADJActivityHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityHandler.h; sourceTree = ""; }; 9DEAF0CA210072BC005CAEDB /* ADJTimerCycle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerCycle.m; sourceTree = ""; }; 9DEAF0CB210072BC005CAEDB /* ADJSessionParameters.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionParameters.m; sourceTree = ""; }; @@ -918,20 +904,16 @@ 9DEAF0CF210072BC005CAEDB /* Adjust.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Adjust.m; sourceTree = ""; }; 9DEAF0D0210072BC005CAEDB /* ADJAttributionHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttributionHandler.h; sourceTree = ""; }; 9DEAF0D1210072BC005CAEDB /* ADJTimerOnce.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerOnce.h; sourceTree = ""; }; - 9DEAF0D2210072BC005CAEDB /* ADJDeviceInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJDeviceInfo.h; sourceTree = ""; }; 9DEAF0D3210072BC005CAEDB /* ADJConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJConfig.m; sourceTree = ""; }; 9DEAF0D4210072BC005CAEDB /* ADJPackageHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageHandler.m; sourceTree = ""; }; 9DEAF0D5210072BC005CAEDB /* ADJEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEvent.h; sourceTree = ""; }; 9DEAF0D6210072BC005CAEDB /* ADJSdkClickHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSdkClickHandler.h; sourceTree = ""; }; 9DEAF0D7210072BC005CAEDB /* ADJActivityKind.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityKind.m; sourceTree = ""; }; 9DEAF0DA210072BC005CAEDB /* NSString+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+ADJAdditions.m"; sourceTree = ""; }; - 9DEAF0DB210072BC005CAEDB /* UIDevice+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIDevice+ADJAdditions.h"; sourceTree = ""; }; 9DEAF0DC210072BC005CAEDB /* NSData+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+ADJAdditions.m"; sourceTree = ""; }; 9DEAF0DD210072BC005CAEDB /* NSData+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData+ADJAdditions.h"; sourceTree = ""; }; - 9DEAF0DE210072BC005CAEDB /* UIDevice+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIDevice+ADJAdditions.m"; sourceTree = ""; }; 9DEAF0DF210072BC005CAEDB /* NSString+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+ADJAdditions.h"; sourceTree = ""; }; 9DEAF0E0210072BC005CAEDB /* ADJAttribution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAttribution.m; sourceTree = ""; }; - 9DEAF0E1210072BC005CAEDB /* ADJSystemProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSystemProfile.m; sourceTree = ""; }; 9DEAF0E2210072BC005CAEDB /* ADJRequestHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJRequestHandler.h; sourceTree = ""; }; 9DEAF0E3210072BC005CAEDB /* ADJActivityPackage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityPackage.m; sourceTree = ""; }; 9DEAF0E4210072BC005CAEDB /* ADJUtil.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUtil.m; sourceTree = ""; }; @@ -949,7 +931,6 @@ 9DEAF0F0210072BC005CAEDB /* ADJSessionParameters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSessionParameters.h; sourceTree = ""; }; 9DEAF0F2210072BC005CAEDB /* ADJTimerCycle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerCycle.h; sourceTree = ""; }; 9DEAF0F3210072BC005CAEDB /* ADJActivityHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityHandler.m; sourceTree = ""; }; - 9DEAF0F4210072BC005CAEDB /* ADJReachability.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJReachability.m; sourceTree = ""; }; 9DF381A8260E990B0033F5A1 /* NSNumber+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSNumber+ADJAdditions.m"; sourceTree = ""; }; 9DF381BB260E990B0033F5A1 /* NSNumber+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNumber+ADJAdditions.h"; sourceTree = ""; }; 9DF381F3260E9AF50033F5A1 /* NSNumber+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSNumber+ADJAdditions.m"; sourceTree = ""; }; @@ -960,6 +941,14 @@ 9DF3820E260E9B740033F5A1 /* NSNumber+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSNumber+ADJAdditions.m"; sourceTree = ""; }; 9DF3821A260E9B8D0033F5A1 /* NSNumber+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSNumber+ADJAdditions.m"; sourceTree = ""; }; 9DF3821B260E9B8D0033F5A1 /* NSNumber+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNumber+ADJAdditions.h"; sourceTree = ""; }; + 9DF92D812630ED02000FC3FC /* ADJPackageParams.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJPackageParams.h; sourceTree = ""; }; + 9DF92D822630ED02000FC3FC /* ADJPackageParams.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageParams.m; sourceTree = ""; }; + 9DF92D852630ED3D000FC3FC /* ADJPackageParams.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJPackageParams.h; sourceTree = ""; }; + 9DF92D862630ED3D000FC3FC /* ADJPackageParams.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageParams.m; sourceTree = ""; }; + 9DF92D892630ED59000FC3FC /* ADJPackageParams.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJPackageParams.h; sourceTree = ""; }; + 9DF92D8A2630ED59000FC3FC /* ADJPackageParams.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageParams.m; sourceTree = ""; }; + 9DF92D8D2630ED7B000FC3FC /* ADJPackageParams.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageParams.m; sourceTree = ""; }; + 9DF92D8E2630ED7B000FC3FC /* ADJPackageParams.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJPackageParams.h; sourceTree = ""; }; 9DF9C8C91D6F3CA5008E362F /* ADJActivityHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityHandler.h; sourceTree = ""; }; 9DF9C8CA1D6F3CA5008E362F /* ADJActivityHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityHandler.m; sourceTree = ""; }; 9DF9C8CB1D6F3CA5008E362F /* ADJActivityKind.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityKind.h; sourceTree = ""; }; @@ -972,8 +961,6 @@ 9DF9C8D31D6F3CA5008E362F /* NSData+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+ADJAdditions.m"; sourceTree = ""; }; 9DF9C8D41D6F3CA5008E362F /* NSString+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+ADJAdditions.h"; sourceTree = ""; }; 9DF9C8D51D6F3CA5008E362F /* NSString+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+ADJAdditions.m"; sourceTree = ""; }; - 9DF9C8D61D6F3CA5008E362F /* UIDevice+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIDevice+ADJAdditions.h"; sourceTree = ""; }; - 9DF9C8D71D6F3CA5008E362F /* UIDevice+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIDevice+ADJAdditions.m"; sourceTree = ""; }; 9DF9C8D81D6F3CA5008E362F /* ADJAdjustFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdjustFactory.h; sourceTree = ""; }; 9DF9C8D91D6F3CA5008E362F /* ADJAdjustFactory.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdjustFactory.m; sourceTree = ""; }; 9DF9C8DA1D6F3CA5008E362F /* ADJAttribution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttribution.h; sourceTree = ""; }; @@ -984,8 +971,6 @@ 9DF9C8DF1D6F3CA5008E362F /* ADJBackoffStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJBackoffStrategy.m; sourceTree = ""; }; 9DF9C8E01D6F3CA5008E362F /* ADJConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJConfig.h; sourceTree = ""; }; 9DF9C8E11D6F3CA5008E362F /* ADJConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJConfig.m; sourceTree = ""; }; - 9DF9C8E21D6F3CA5008E362F /* ADJDeviceInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJDeviceInfo.h; sourceTree = ""; }; - 9DF9C8E31D6F3CA5008E362F /* ADJDeviceInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJDeviceInfo.m; sourceTree = ""; }; 9DF9C8E41D6F3CA5008E362F /* ADJEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEvent.h; sourceTree = ""; }; 9DF9C8E51D6F3CA5008E362F /* ADJEvent.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJEvent.m; sourceTree = ""; }; 9DF9C8E61D6F3CA5008E362F /* ADJEventFailure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEventFailure.h; sourceTree = ""; }; @@ -1008,8 +993,6 @@ 9DF9C8F91D6F3CA5008E362F /* ADJSessionFailure.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionFailure.m; sourceTree = ""; }; 9DF9C8FA1D6F3CA5008E362F /* ADJSessionSuccess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSessionSuccess.h; sourceTree = ""; }; 9DF9C8FB1D6F3CA5008E362F /* ADJSessionSuccess.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionSuccess.m; sourceTree = ""; }; - 9DF9C8FC1D6F3CA5008E362F /* ADJSystemProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSystemProfile.h; sourceTree = ""; }; - 9DF9C8FD1D6F3CA5008E362F /* ADJSystemProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSystemProfile.m; sourceTree = ""; }; 9DF9C8FE1D6F3CA5008E362F /* ADJTimerCycle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerCycle.h; sourceTree = ""; }; 9DF9C8FF1D6F3CA5008E362F /* ADJTimerCycle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerCycle.m; sourceTree = ""; }; 9DF9C9001D6F3CA5008E362F /* ADJTimerOnce.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerOnce.h; sourceTree = ""; }; @@ -1036,8 +1019,6 @@ 9DFB06241D7470C0006D48FC /* NSData+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+ADJAdditions.m"; sourceTree = ""; }; 9DFB06251D7470C0006D48FC /* NSString+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+ADJAdditions.h"; sourceTree = ""; }; 9DFB06261D7470C0006D48FC /* NSString+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+ADJAdditions.m"; sourceTree = ""; }; - 9DFB06271D7470C0006D48FC /* UIDevice+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIDevice+ADJAdditions.h"; sourceTree = ""; }; - 9DFB06281D7470C0006D48FC /* UIDevice+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIDevice+ADJAdditions.m"; sourceTree = ""; }; 9DFB06291D7470C0006D48FC /* ADJAdjustFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdjustFactory.h; sourceTree = ""; }; 9DFB062A1D7470C0006D48FC /* ADJAdjustFactory.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdjustFactory.m; sourceTree = ""; }; 9DFB062B1D7470C0006D48FC /* ADJAttribution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttribution.h; sourceTree = ""; }; @@ -1048,8 +1029,8 @@ 9DFB06301D7470C0006D48FC /* ADJBackoffStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJBackoffStrategy.m; sourceTree = ""; }; 9DFB06311D7470C0006D48FC /* ADJConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJConfig.h; sourceTree = ""; }; 9DFB06321D7470C0006D48FC /* ADJConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJConfig.m; sourceTree = ""; }; - 9DFB06331D7470C0006D48FC /* ADJDeviceInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJDeviceInfo.h; sourceTree = ""; }; - 9DFB06341D7470C0006D48FC /* ADJDeviceInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJDeviceInfo.m; sourceTree = ""; }; + 9DFB06331D7470C0006D48FC /* ADJPackageParams.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJPackageParams.h; sourceTree = ""; }; + 9DFB06341D7470C0006D48FC /* ADJPackageParams.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageParams.m; sourceTree = ""; }; 9DFB06351D7470C0006D48FC /* ADJEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEvent.h; sourceTree = ""; }; 9DFB06361D7470C0006D48FC /* ADJEvent.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJEvent.m; sourceTree = ""; }; 9DFB06371D7470C0006D48FC /* ADJEventFailure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEventFailure.h; sourceTree = ""; }; @@ -1072,8 +1053,6 @@ 9DFB064A1D7470C0006D48FC /* ADJSessionFailure.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionFailure.m; sourceTree = ""; }; 9DFB064B1D7470C0006D48FC /* ADJSessionSuccess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSessionSuccess.h; sourceTree = ""; }; 9DFB064C1D7470C0006D48FC /* ADJSessionSuccess.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionSuccess.m; sourceTree = ""; }; - 9DFB064D1D7470C0006D48FC /* ADJSystemProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSystemProfile.h; sourceTree = ""; }; - 9DFB064E1D7470C0006D48FC /* ADJSystemProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSystemProfile.m; sourceTree = ""; }; 9DFB064F1D7470C0006D48FC /* ADJTimerCycle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerCycle.h; sourceTree = ""; }; 9DFB06501D7470C0006D48FC /* ADJTimerCycle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerCycle.m; sourceTree = ""; }; 9DFB06511D7470C0006D48FC /* ADJTimerOnce.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerOnce.h; sourceTree = ""; }; @@ -1322,8 +1301,6 @@ children = ( 96CD2BDC1A13BFC600A40AFB /* NSString+ADJAdditions.h */, 96CD2BDD1A13BFC600A40AFB /* NSString+ADJAdditions.m */, - 96CD2BDE1A13BFC600A40AFB /* UIDevice+ADJAdditions.h */, - 96CD2BDF1A13BFC600A40AFB /* UIDevice+ADJAdditions.m */, 96C93DF31AC47F2E00B53F56 /* NSData+ADJAdditions.h */, 96C93DF41AC47F2E00B53F56 /* NSData+ADJAdditions.m */, 9DF381BB260E990B0033F5A1 /* NSNumber+ADJAdditions.h */, @@ -1352,6 +1329,8 @@ 96E5E37418BBB48A008E7B30 /* ADJLogger.m */, 96E5E37518BBB48A008E7B30 /* ADJPackageBuilder.h */, 96E5E37618BBB48A008E7B30 /* ADJPackageBuilder.m */, + 9DF92D812630ED02000FC3FC /* ADJPackageParams.h */, + 9DF92D822630ED02000FC3FC /* ADJPackageParams.m */, 96E5E37718BBB48A008E7B30 /* ADJPackageHandler.h */, 96E5E37818BBB48A008E7B30 /* ADJPackageHandler.m */, 96E5E37918BBB48A008E7B30 /* ADJRequestHandler.h */, @@ -1360,8 +1339,6 @@ 96E5E38018BBB48A008E7B30 /* ADJUtil.m */, 9609BC6819EEA55800E02303 /* ADJEvent.h */, 9609BC6919EEA55800E02303 /* ADJEvent.m */, - 9644B7EA19F148F3008576FC /* ADJDeviceInfo.h */, - 965307F51A000DA400107FF9 /* ADJDeviceInfo.m */, 969952CD1A012F5300928462 /* ADJAttributionHandler.h */, 969952CE1A012F5300928462 /* ADJAttributionHandler.m */, 969952D01A01309200928462 /* ADJAttribution.h */, @@ -1382,16 +1359,12 @@ 9601CAE31C74B70600670879 /* ADJEventSuccess.m */, 9601CAE61C74BAAE00670879 /* ADJEventFailure.h */, 9601CAE71C74BAAE00670879 /* ADJEventFailure.m */, - 96164D8A1CCA4DEA009431AB /* ADJSystemProfile.h */, - 96164D8B1CCA4DEA009431AB /* ADJSystemProfile.m */, 965B7F2E1CC78F6600098639 /* ADJBackoffStrategy.h */, 965B7F2F1CC78F6600098639 /* ADJBackoffStrategy.m */, 96164D701CC8FA73009431AB /* ADJSdkClickHandler.h */, 96164D711CC8FA73009431AB /* ADJSdkClickHandler.m */, 96B6710E1D788EEC0090A023 /* ADJSessionParameters.h */, 96B6710F1D788EEC0090A023 /* ADJSessionParameters.m */, - 6FCC84F81F278CF300D6A0ED /* ADJReachability.h */, - 6FCC84F71F278CF300D6A0ED /* ADJReachability.m */, 9DD0E9AC1F44690B00B2A759 /* ADJUserDefaults.h */, 9DD0E9AD1F44690B00B2A759 /* ADJUserDefaults.m */, 9D2F23E02447CE5C00B7CA90 /* ADJSubscription.h */, @@ -1400,6 +1373,10 @@ 6FBEE8F224E2C26F00FEF3F1 /* ADJUrlStrategy.m */, 9D651BF425B25A64006D69D6 /* ADJThirdPartySharing.h */, 9D651BE125B25A64006D69D6 /* ADJThirdPartySharing.m */, + 9D3A2ABD2625BEB800BD6E44 /* ADJAdRevenue.h */, + 9D3A2AAA2625BEB800BD6E44 /* ADJAdRevenue.m */, + 6FAB784A2636DC0E00773869 /* ADJLinkResolution.h */, + 6FAB784B2636DC0E00773869 /* ADJLinkResolution.m */, ); path = Adjust; sourceTree = ""; @@ -1440,13 +1417,11 @@ isa = PBXGroup; children = ( 9D0E2E17210B575600133B4F /* ADJConfig.h */, - 9D0E2E18210B575600133B4F /* ADJDeviceInfo.m */, 9D0E2E19210B575600133B4F /* ADJTimerOnce.m */, 9D0E2E1A210B575600133B4F /* ADJAttributionHandler.m */, 9D0E2E1B210B575600133B4F /* Adjust.h */, 9D0E2E1C210B575600133B4F /* ADJActivityPackage.h */, 9D0E2E1D210B575600133B4F /* ADJRequestHandler.m */, - 9D0E2E1E210B575600133B4F /* ADJSystemProfile.h */, 9D0E2E1F210B575600133B4F /* ADJAttribution.h */, 9D0E2E21210B575600133B4F /* ADJSdkClickHandler.m */, 9D0E2E22210B575600133B4F /* ADJActivityKind.h */, @@ -1461,7 +1436,6 @@ 9D0E2E2B210B575600133B4F /* ADJActivityState.m */, 9D0E2E2C210B575600133B4F /* ADJSessionFailure.m */, 9D0E2E2D210B575600133B4F /* ADJUtil.h */, - 9D0E2E2E210B575600133B4F /* ADJReachability.h */, 9D0E2E2F210B575600133B4F /* ADJActivityHandler.h */, 9D0E2E30210B575600133B4F /* ADJTimerCycle.m */, 9D0E2E31210B575600133B4F /* ADJSessionParameters.m */, @@ -1471,7 +1445,6 @@ 9D0E2E35210B575600133B4F /* Adjust.m */, 9D0E2E36210B575600133B4F /* ADJAttributionHandler.h */, 9D0E2E37210B575600133B4F /* ADJTimerOnce.h */, - 9D0E2E38210B575600133B4F /* ADJDeviceInfo.h */, 9D0E2E39210B575600133B4F /* ADJConfig.m */, 9D0E2E3A210B575600133B4F /* ADJPackageHandler.m */, 9D0E2E3B210B575600133B4F /* ADJEvent.h */, @@ -1479,7 +1452,6 @@ 9D0E2E3D210B575600133B4F /* ADJActivityKind.m */, 9D0E2E3F210B575600133B4F /* ADJAdditions */, 9D0E2E46210B575600133B4F /* ADJAttribution.m */, - 9D0E2E47210B575600133B4F /* ADJSystemProfile.m */, 9D0E2E48210B575600133B4F /* ADJRequestHandler.h */, 9D0E2E49210B575600133B4F /* ADJActivityPackage.m */, 9D0E2E4A210B575600133B4F /* ADJUtil.m */, @@ -1497,13 +1469,18 @@ 9D0E2E56210B575600133B4F /* ADJSessionParameters.h */, 9D0E2E58210B575600133B4F /* ADJTimerCycle.h */, 9D0E2E59210B575600133B4F /* ADJActivityHandler.m */, - 9D0E2E5A210B575600133B4F /* ADJReachability.m */, 9D2F24032447DD6000B7CA90 /* ADJSubscription.h */, 9D2F24022447DD6000B7CA90 /* ADJSubscription.m */, 6FBEE93224E4232800FEF3F1 /* ADJUrlStrategy.h */, 6FBEE93324E4232800FEF3F1 /* ADJUrlStrategy.m */, 6F84511025B1B1380004C7C0 /* ADJThirdPartySharing.h */, 6F84512325B1B1380004C7C0 /* ADJThirdPartySharing.m */, + 9D3A2ACF262650C300BD6E44 /* ADJAdRevenue.h */, + 9D3A2AD0262650C300BD6E44 /* ADJAdRevenue.m */, + 9DF92D8E2630ED7B000FC3FC /* ADJPackageParams.h */, + 9DF92D8D2630ED7B000FC3FC /* ADJPackageParams.m */, + 6FAB78912636DCE700773869 /* ADJLinkResolution.h */, + 6FAB78902636DCE700773869 /* ADJLinkResolution.m */, ); path = Adjust; sourceTree = SOURCE_ROOT; @@ -1512,10 +1489,8 @@ isa = PBXGroup; children = ( 9D0E2E40210B575600133B4F /* NSString+ADJAdditions.m */, - 9D0E2E41210B575600133B4F /* UIDevice+ADJAdditions.h */, 9D0E2E42210B575600133B4F /* NSData+ADJAdditions.m */, 9D0E2E43210B575600133B4F /* NSData+ADJAdditions.h */, - 9D0E2E44210B575600133B4F /* UIDevice+ADJAdditions.m */, 9D0E2E45210B575600133B4F /* NSString+ADJAdditions.h */, 9DF3821B260E9B8D0033F5A1 /* NSNumber+ADJAdditions.h */, 9DF3821A260E9B8D0033F5A1 /* NSNumber+ADJAdditions.m */, @@ -1650,13 +1625,11 @@ isa = PBXGroup; children = ( 9DEAF0B1210072BC005CAEDB /* ADJConfig.h */, - 9DEAF0B2210072BC005CAEDB /* ADJDeviceInfo.m */, 9DEAF0B3210072BC005CAEDB /* ADJTimerOnce.m */, 9DEAF0B4210072BC005CAEDB /* ADJAttributionHandler.m */, 9DEAF0B5210072BC005CAEDB /* Adjust.h */, 9DEAF0B6210072BC005CAEDB /* ADJActivityPackage.h */, 9DEAF0B7210072BC005CAEDB /* ADJRequestHandler.m */, - 9DEAF0B8210072BC005CAEDB /* ADJSystemProfile.h */, 9DEAF0B9210072BC005CAEDB /* ADJAttribution.h */, 9DEAF0BB210072BC005CAEDB /* ADJSdkClickHandler.m */, 9DEAF0BC210072BC005CAEDB /* ADJActivityKind.h */, @@ -1671,7 +1644,6 @@ 9DEAF0C5210072BC005CAEDB /* ADJActivityState.m */, 9DEAF0C6210072BC005CAEDB /* ADJSessionFailure.m */, 9DEAF0C7210072BC005CAEDB /* ADJUtil.h */, - 9DEAF0C8210072BC005CAEDB /* ADJReachability.h */, 9DEAF0C9210072BC005CAEDB /* ADJActivityHandler.h */, 9DEAF0CA210072BC005CAEDB /* ADJTimerCycle.m */, 9DEAF0CB210072BC005CAEDB /* ADJSessionParameters.m */, @@ -1681,7 +1653,6 @@ 9DEAF0CF210072BC005CAEDB /* Adjust.m */, 9DEAF0D0210072BC005CAEDB /* ADJAttributionHandler.h */, 9DEAF0D1210072BC005CAEDB /* ADJTimerOnce.h */, - 9DEAF0D2210072BC005CAEDB /* ADJDeviceInfo.h */, 9DEAF0D3210072BC005CAEDB /* ADJConfig.m */, 9DEAF0D4210072BC005CAEDB /* ADJPackageHandler.m */, 9DEAF0D5210072BC005CAEDB /* ADJEvent.h */, @@ -1689,7 +1660,6 @@ 9DEAF0D7210072BC005CAEDB /* ADJActivityKind.m */, 9DEAF0D9210072BC005CAEDB /* ADJAdditions */, 9DEAF0E0210072BC005CAEDB /* ADJAttribution.m */, - 9DEAF0E1210072BC005CAEDB /* ADJSystemProfile.m */, 9DEAF0E2210072BC005CAEDB /* ADJRequestHandler.h */, 9DEAF0E3210072BC005CAEDB /* ADJActivityPackage.m */, 9DEAF0E4210072BC005CAEDB /* ADJUtil.m */, @@ -1707,13 +1677,18 @@ 9DEAF0F0210072BC005CAEDB /* ADJSessionParameters.h */, 9DEAF0F2210072BC005CAEDB /* ADJTimerCycle.h */, 9DEAF0F3210072BC005CAEDB /* ADJActivityHandler.m */, - 9DEAF0F4210072BC005CAEDB /* ADJReachability.m */, 9D2F23FA2447DD2500B7CA90 /* ADJSubscription.h */, 9D2F23FB2447DD2500B7CA90 /* ADJSubscription.m */, 6FBEE92A24E4230700FEF3F1 /* ADJUrlStrategy.h */, 6FBEE92B24E4230700FEF3F1 /* ADJUrlStrategy.m */, 9D651C8625B26DF4006D69D6 /* ADJThirdPartySharing.h */, 9D651C8725B26DF5006D69D6 /* ADJThirdPartySharing.m */, + 9D3A2AC72626505800BD6E44 /* ADJAdRevenue.h */, + 9D3A2AC82626505800BD6E44 /* ADJAdRevenue.m */, + 9DF92D892630ED59000FC3FC /* ADJPackageParams.h */, + 9DF92D8A2630ED59000FC3FC /* ADJPackageParams.m */, + 6FAB78762636DCB600773869 /* ADJLinkResolution.h */, + 6FAB78772636DCB600773869 /* ADJLinkResolution.m */, ); path = Adjust; sourceTree = SOURCE_ROOT; @@ -1722,10 +1697,8 @@ isa = PBXGroup; children = ( 9DEAF0DA210072BC005CAEDB /* NSString+ADJAdditions.m */, - 9DEAF0DB210072BC005CAEDB /* UIDevice+ADJAdditions.h */, 9DEAF0DC210072BC005CAEDB /* NSData+ADJAdditions.m */, 9DEAF0DD210072BC005CAEDB /* NSData+ADJAdditions.h */, - 9DEAF0DE210072BC005CAEDB /* UIDevice+ADJAdditions.m */, 9DEAF0DF210072BC005CAEDB /* NSString+ADJAdditions.h */, 9DF38201260E9B0A0033F5A1 /* NSNumber+ADJAdditions.h */, 9DF38200260E9B0A0033F5A1 /* NSNumber+ADJAdditions.m */, @@ -1755,8 +1728,6 @@ 9DF9C8DF1D6F3CA5008E362F /* ADJBackoffStrategy.m */, 9DF9C8E01D6F3CA5008E362F /* ADJConfig.h */, 9DF9C8E11D6F3CA5008E362F /* ADJConfig.m */, - 9DF9C8E21D6F3CA5008E362F /* ADJDeviceInfo.h */, - 9DF9C8E31D6F3CA5008E362F /* ADJDeviceInfo.m */, 9DF9C8E41D6F3CA5008E362F /* ADJEvent.h */, 9DF9C8E51D6F3CA5008E362F /* ADJEvent.m */, 9DF9C8E61D6F3CA5008E362F /* ADJEventFailure.h */, @@ -1767,6 +1738,8 @@ 9DF9C8ED1D6F3CA5008E362F /* ADJLogger.m */, 9DF9C8EE1D6F3CA5008E362F /* ADJPackageBuilder.h */, 9DF9C8EF1D6F3CA5008E362F /* ADJPackageBuilder.m */, + 9DF92D852630ED3D000FC3FC /* ADJPackageParams.h */, + 9DF92D862630ED3D000FC3FC /* ADJPackageParams.m */, 9DF9C8F01D6F3CA5008E362F /* ADJPackageHandler.h */, 9DF9C8F11D6F3CA5008E362F /* ADJPackageHandler.m */, 9DF9C8F21D6F3CA5008E362F /* ADJRequestHandler.h */, @@ -1779,8 +1752,6 @@ 9DF9C8F91D6F3CA5008E362F /* ADJSessionFailure.m */, 9DF9C8FA1D6F3CA5008E362F /* ADJSessionSuccess.h */, 9DF9C8FB1D6F3CA5008E362F /* ADJSessionSuccess.m */, - 9DF9C8FC1D6F3CA5008E362F /* ADJSystemProfile.h */, - 9DF9C8FD1D6F3CA5008E362F /* ADJSystemProfile.m */, 9DF9C8FE1D6F3CA5008E362F /* ADJTimerCycle.h */, 9DF9C8FF1D6F3CA5008E362F /* ADJTimerCycle.m */, 9DF9C9001D6F3CA5008E362F /* ADJTimerOnce.h */, @@ -1791,14 +1762,16 @@ 9DF9C9071D6F3CA5008E362F /* ADJUtil.m */, 96B671121D788F4A0090A023 /* ADJSessionParameters.h */, 96B671131D788F4A0090A023 /* ADJSessionParameters.m */, - 6FCC85021F27944600D6A0ED /* ADJReachability.h */, - 6FCC85031F27944600D6A0ED /* ADJReachability.m */, 9D2F23F72447DCE800B7CA90 /* ADJSubscription.h */, 9D2F23F62447DCE800B7CA90 /* ADJSubscription.m */, 6FBEE92524E422EB00FEF3F1 /* ADJUrlStrategy.h */, 6FBEE92424E422EB00FEF3F1 /* ADJUrlStrategy.m */, 6FBE0C6C2577CDAC00EC2CE0 /* ADJThirdPartySharing.h */, 6FBE0C6D2577CDAC00EC2CE0 /* ADJThirdPartySharing.m */, + 9D3A2AC42626501D00BD6E44 /* ADJAdRevenue.h */, + 9D3A2AC32626501D00BD6E44 /* ADJAdRevenue.m */, + 6FAB78692636DC8400773869 /* ADJLinkResolution.h */, + 6FAB786A2636DC8400773869 /* ADJLinkResolution.m */, ); path = Adjust; sourceTree = SOURCE_ROOT; @@ -1810,8 +1783,6 @@ 9DF9C8D31D6F3CA5008E362F /* NSData+ADJAdditions.m */, 9DF9C8D41D6F3CA5008E362F /* NSString+ADJAdditions.h */, 9DF9C8D51D6F3CA5008E362F /* NSString+ADJAdditions.m */, - 9DF9C8D61D6F3CA5008E362F /* UIDevice+ADJAdditions.h */, - 9DF9C8D71D6F3CA5008E362F /* UIDevice+ADJAdditions.m */, 9DF381F4260E9AF50033F5A1 /* NSNumber+ADJAdditions.h */, 9DF381F3260E9AF50033F5A1 /* NSNumber+ADJAdditions.m */, ); @@ -1860,8 +1831,8 @@ 9DFB06301D7470C0006D48FC /* ADJBackoffStrategy.m */, 9DFB06311D7470C0006D48FC /* ADJConfig.h */, 9DFB06321D7470C0006D48FC /* ADJConfig.m */, - 9DFB06331D7470C0006D48FC /* ADJDeviceInfo.h */, - 9DFB06341D7470C0006D48FC /* ADJDeviceInfo.m */, + 9DFB06331D7470C0006D48FC /* ADJPackageParams.h */, + 9DFB06341D7470C0006D48FC /* ADJPackageParams.m */, 9DFB06351D7470C0006D48FC /* ADJEvent.h */, 9DFB06361D7470C0006D48FC /* ADJEvent.m */, 9DFB06371D7470C0006D48FC /* ADJEventFailure.h */, @@ -1884,8 +1855,6 @@ 9DFB064A1D7470C0006D48FC /* ADJSessionFailure.m */, 9DFB064B1D7470C0006D48FC /* ADJSessionSuccess.h */, 9DFB064C1D7470C0006D48FC /* ADJSessionSuccess.m */, - 9DFB064D1D7470C0006D48FC /* ADJSystemProfile.h */, - 9DFB064E1D7470C0006D48FC /* ADJSystemProfile.m */, 9DFB064F1D7470C0006D48FC /* ADJTimerCycle.h */, 9DFB06501D7470C0006D48FC /* ADJTimerCycle.m */, 9DFB06511D7470C0006D48FC /* ADJTimerOnce.h */, @@ -1896,14 +1865,16 @@ 9DFB06581D7470C0006D48FC /* ADJUtil.m */, 96B671161D788F7A0090A023 /* ADJSessionParameters.h */, 96B671171D788F7A0090A023 /* ADJSessionParameters.m */, - 6FCC85071F27948700D6A0ED /* ADJReachability.h */, - 6FCC85061F27948700D6A0ED /* ADJReachability.m */, 9D2F23FE2447DD3600B7CA90 /* ADJSubscription.h */, 9D2F23FF2447DD3700B7CA90 /* ADJSubscription.m */, 6FBEE92E24E4231300FEF3F1 /* ADJUrlStrategy.h */, 6FBEE92F24E4231300FEF3F1 /* ADJUrlStrategy.m */, 9D651C9425B26E1B006D69D6 /* ADJThirdPartySharing.h */, 9D651C9325B26E1B006D69D6 /* ADJThirdPartySharing.m */, + 9D3A2ACB2626508F00BD6E44 /* ADJAdRevenue.h */, + 9D3A2ACC2626508F00BD6E44 /* ADJAdRevenue.m */, + 6FAB78832636DCCD00773869 /* ADJLinkResolution.h */, + 6FAB78842636DCCD00773869 /* ADJLinkResolution.m */, ); path = Adjust; sourceTree = SOURCE_ROOT; @@ -1915,8 +1886,6 @@ 9DFB06241D7470C0006D48FC /* NSData+ADJAdditions.m */, 9DFB06251D7470C0006D48FC /* NSString+ADJAdditions.h */, 9DFB06261D7470C0006D48FC /* NSString+ADJAdditions.m */, - 9DFB06271D7470C0006D48FC /* UIDevice+ADJAdditions.h */, - 9DFB06281D7470C0006D48FC /* UIDevice+ADJAdditions.m */, 9DF3820D260E9B740033F5A1 /* NSNumber+ADJAdditions.h */, 9DF3820E260E9B740033F5A1 /* NSNumber+ADJAdditions.m */, ); @@ -1941,12 +1910,13 @@ 9601CAE81C74BAAE00670879 /* ADJEventFailure.h in Headers */, 968173871C3C2D36002AE1DE /* ADJSessionFailure.h in Headers */, 968173831C3C2D07002AE1DE /* ADJSessionSuccess.h in Headers */, + 9DF92D832630ED02000FC3FC /* ADJPackageParams.h in Headers */, 9601CAE41C74B70600670879 /* ADJEventSuccess.h in Headers */, - 6FCC85011F278CF300D6A0ED /* ADJReachability.h in Headers */, + 9D3A2ABF2625BEB800BD6E44 /* ADJAdRevenue.h in Headers */, + 6FAB784C2636DC0E00773869 /* ADJLinkResolution.h in Headers */, 9D651BF625B25A64006D69D6 /* ADJThirdPartySharing.h in Headers */, 96BCFBD41AC99338005A65C5 /* NSData+ADJAdditions.h in Headers */, 96BCFBD21AC99332005A65C5 /* NSString+ADJAdditions.h in Headers */, - 96BCFBD31AC99336005A65C5 /* UIDevice+ADJAdditions.h in Headers */, 96BCFBD51AC9933E005A65C5 /* ADJActivityHandler.h in Headers */, 9DD0E9AE1F44690B00B2A759 /* ADJUserDefaults.h in Headers */, 96BCFBD61AC99345005A65C5 /* ADJActivityKind.h in Headers */, @@ -1957,12 +1927,10 @@ 96BCFBDB1AC99355005A65C5 /* ADJPackageHandler.h in Headers */, 96BCFBDC1AC99360005A65C5 /* ADJRequestHandler.h in Headers */, 96BCFBDE1AC99365005A65C5 /* ADJUtil.h in Headers */, - 96BCFBDF1AC99368005A65C5 /* ADJDeviceInfo.h in Headers */, 96BCFBE01AC9936C005A65C5 /* ADJAttributionHandler.h in Headers */, 96854A591B1F2779002B2874 /* ADJTimerOnce.h in Headers */, 96854A5F1B1F278C002B2874 /* ADJTimerCycle.h in Headers */, 96FCC53A1C186426007BBFE1 /* ADJResponseData.h in Headers */, - 96164D8C1CCA4DEA009431AB /* ADJSystemProfile.h in Headers */, 965B7F301CC78F6600098639 /* ADJBackoffStrategy.h in Headers */, 96164D721CC8FA73009431AB /* ADJSdkClickHandler.h in Headers */, 96B671101D788EEC0090A023 /* ADJSessionParameters.h in Headers */, @@ -1991,27 +1959,26 @@ 9D0E2EA4210B575600133B4F /* ADJSessionSuccess.h in Headers */, 9D0E2EA8210B575600133B4F /* ADJLogger.h in Headers */, 6F84512425B1B1380004C7C0 /* ADJThirdPartySharing.h in Headers */, + 6FAB78932636DCE700773869 /* ADJLinkResolution.h in Headers */, + 9D3A2AD1262650C300BD6E44 /* ADJAdRevenue.h in Headers */, 9D0E2E7D210B575600133B4F /* ADJAdjustFactory.h in Headers */, 9D0E2E76210B575600133B4F /* ADJActivityKind.h in Headers */, 9D0E2E88210B575600133B4F /* ADJUserDefaults.h in Headers */, 9D0E2E8B210B575600133B4F /* ADJTimerOnce.h in Headers */, + 9DF92D902630ED7B000FC3FC /* ADJPackageParams.h in Headers */, 9D0E2EAB210B575600133B4F /* ADJTimerCycle.h in Headers */, 9D0E2E7A210B575600133B4F /* ADJResponseData.h in Headers */, 9D0E2E98210B575600133B4F /* NSString+ADJAdditions.h in Headers */, 9D0E2EA7210B575600133B4F /* ADJBackoffStrategy.h in Headers */, - 9D0E2E8C210B575600133B4F /* ADJDeviceInfo.h in Headers */, 6FBEE93424E4232800FEF3F1 /* ADJUrlStrategy.h in Headers */, 9D0E2E90210B575600133B4F /* ADJSdkClickHandler.h in Headers */, 9D0E2E81210B575600133B4F /* ADJUtil.h in Headers */, 9D0E2E78210B575600133B4F /* ADJPackageHandler.h in Headers */, 9D0E2EA9210B575600133B4F /* ADJSessionParameters.h in Headers */, 9D0E2E9B210B575600133B4F /* ADJRequestHandler.h in Headers */, - 9D0E2E94210B575600133B4F /* UIDevice+ADJAdditions.h in Headers */, - 9D0E2E72210B575600133B4F /* ADJSystemProfile.h in Headers */, 9D0E2E83210B575600133B4F /* ADJActivityHandler.h in Headers */, 9D0E2E79210B575600133B4F /* ADJPackageBuilder.h in Headers */, 9D0E2E70210B575600133B4F /* ADJActivityPackage.h in Headers */, - 9D0E2E82210B575600133B4F /* ADJReachability.h in Headers */, 9D0E2E8A210B575600133B4F /* ADJAttributionHandler.h in Headers */, 9D0E2E96210B575600133B4F /* NSData+ADJAdditions.h in Headers */, 9D0E2E9F210B575600133B4F /* ADJActivityState.h in Headers */, @@ -2035,6 +2002,9 @@ 9DEAF128210072BC005CAEDB /* ADJSessionFailure.h in Headers */, 9DEAF12B210072BC005CAEDB /* ADJEventSuccess.h in Headers */, 9D651C8825B26DF5006D69D6 /* ADJThirdPartySharing.h in Headers */, + 6FAB78782636DCB600773869 /* ADJLinkResolution.h in Headers */, + 9DF92D8B2630ED59000FC3FC /* ADJPackageParams.h in Headers */, + 9D3A2AC92626505800BD6E44 /* ADJAdRevenue.h in Headers */, 9DEAF107210072BC005CAEDB /* ADJAdjustFactory.h in Headers */, 9DEAF100210072BC005CAEDB /* ADJActivityKind.h in Headers */, 9DEAF112210072BC005CAEDB /* ADJUserDefaults.h in Headers */, @@ -2044,18 +2014,14 @@ 9DEAF122210072BC005CAEDB /* NSString+ADJAdditions.h in Headers */, 9DEAF131210072BC005CAEDB /* ADJBackoffStrategy.h in Headers */, 9DF38203260E9B0A0033F5A1 /* NSNumber+ADJAdditions.h in Headers */, - 9DEAF116210072BC005CAEDB /* ADJDeviceInfo.h in Headers */, 9DEAF11A210072BC005CAEDB /* ADJSdkClickHandler.h in Headers */, 9DEAF10B210072BC005CAEDB /* ADJUtil.h in Headers */, 9DEAF102210072BC005CAEDB /* ADJPackageHandler.h in Headers */, 9DEAF133210072BC005CAEDB /* ADJSessionParameters.h in Headers */, 9DEAF125210072BC005CAEDB /* ADJRequestHandler.h in Headers */, - 9DEAF11E210072BC005CAEDB /* UIDevice+ADJAdditions.h in Headers */, - 9DEAF0FC210072BC005CAEDB /* ADJSystemProfile.h in Headers */, 9DEAF10D210072BC005CAEDB /* ADJActivityHandler.h in Headers */, 9DEAF103210072BC005CAEDB /* ADJPackageBuilder.h in Headers */, 9DEAF0FA210072BC005CAEDB /* ADJActivityPackage.h in Headers */, - 9DEAF10C210072BC005CAEDB /* ADJReachability.h in Headers */, 9DEAF114210072BC005CAEDB /* ADJAttributionHandler.h in Headers */, 9DEAF120210072BC005CAEDB /* NSData+ADJAdditions.h in Headers */, 9DEAF129210072BC005CAEDB /* ADJActivityState.h in Headers */, @@ -2079,11 +2045,12 @@ 9DF9C9391D6F3CA5008E362F /* ADJSessionSuccess.h in Headers */, 9DF9C9371D6F3CA5008E362F /* ADJSessionFailure.h in Headers */, 6FBE0C6E2577CDAC00EC2CE0 /* ADJThirdPartySharing.h in Headers */, + 6FAB786B2636DC8400773869 /* ADJLinkResolution.h in Headers */, + 9DF92D872630ED3D000FC3FC /* ADJPackageParams.h in Headers */, + 9D3A2AC62626501D00BD6E44 /* ADJAdRevenue.h in Headers */, 9DDF24431F7BE4BA001C1A70 /* ADJUserDefaults.h in Headers */, - 6FCC85041F27945E00D6A0ED /* ADJReachability.h in Headers */, 9DF9C9111D6F3CA5008E362F /* NSData+ADJAdditions.h in Headers */, 9DF9C9131D6F3CA5008E362F /* NSString+ADJAdditions.h in Headers */, - 9DF9C9151D6F3CA5008E362F /* UIDevice+ADJAdditions.h in Headers */, 9DF9C9091D6F3CA5008E362F /* ADJActivityHandler.h in Headers */, 9DF9C90B1D6F3CA5008E362F /* ADJActivityKind.h in Headers */, 9DF9C90D1D6F3CA5008E362F /* ADJActivityPackage.h in Headers */, @@ -2094,12 +2061,10 @@ 9DF9C92F1D6F3CA5008E362F /* ADJPackageHandler.h in Headers */, 9DF9C9311D6F3CA5008E362F /* ADJRequestHandler.h in Headers */, 9DF9C9451D6F3CA5008E362F /* ADJUtil.h in Headers */, - 9DF9C9211D6F3CA5008E362F /* ADJDeviceInfo.h in Headers */, 9DF9C91B1D6F3CA5008E362F /* ADJAttributionHandler.h in Headers */, 9DF9C93F1D6F3CA5008E362F /* ADJTimerOnce.h in Headers */, 9DF9C93D1D6F3CA5008E362F /* ADJTimerCycle.h in Headers */, 9DF9C9331D6F3CA5008E362F /* ADJResponseData.h in Headers */, - 9DF9C93B1D6F3CA5008E362F /* ADJSystemProfile.h in Headers */, 96164D861CCA4D27009431AB /* ADJBackoffStrategy.h in Headers */, 96164D841CCA4D10009431AB /* ADJSdkClickHandler.h in Headers */, 96B671141D788F4A0090A023 /* ADJSessionParameters.h in Headers */, @@ -2123,11 +2088,11 @@ 9DFB068A1D7470C0006D48FC /* ADJSessionSuccess.h in Headers */, 9DFB06881D7470C0006D48FC /* ADJSessionFailure.h in Headers */, 9D651C9625B26E1B006D69D6 /* ADJThirdPartySharing.h in Headers */, + 6FAB78852636DCCD00773869 /* ADJLinkResolution.h in Headers */, + 9D3A2ACD2626508F00BD6E44 /* ADJAdRevenue.h in Headers */, 9DDF24451F7BE4E7001C1A70 /* ADJUserDefaults.h in Headers */, - 6FCC85081F27948C00D6A0ED /* ADJReachability.h in Headers */, 9DFB06621D7470C0006D48FC /* NSData+ADJAdditions.h in Headers */, 9DFB06641D7470C0006D48FC /* NSString+ADJAdditions.h in Headers */, - 9DFB06661D7470C0006D48FC /* UIDevice+ADJAdditions.h in Headers */, 9DFB065A1D7470C0006D48FC /* ADJActivityHandler.h in Headers */, 9DFB065C1D7470C0006D48FC /* ADJActivityKind.h in Headers */, 9DFB065E1D7470C0006D48FC /* ADJActivityPackage.h in Headers */, @@ -2138,12 +2103,11 @@ 9DFB06801D7470C0006D48FC /* ADJPackageHandler.h in Headers */, 9DFB06821D7470C0006D48FC /* ADJRequestHandler.h in Headers */, 9DFB06961D7470C0006D48FC /* ADJUtil.h in Headers */, - 9DFB06721D7470C0006D48FC /* ADJDeviceInfo.h in Headers */, + 9DFB06721D7470C0006D48FC /* ADJPackageParams.h in Headers */, 9DFB066C1D7470C0006D48FC /* ADJAttributionHandler.h in Headers */, 9DFB06901D7470C0006D48FC /* ADJTimerOnce.h in Headers */, 9DFB068E1D7470C0006D48FC /* ADJTimerCycle.h in Headers */, 9DFB06841D7470C0006D48FC /* ADJResponseData.h in Headers */, - 9DFB068C1D7470C0006D48FC /* ADJSystemProfile.h in Headers */, 9DFB066E1D7470C0006D48FC /* ADJBackoffStrategy.h in Headers */, 9DFB06861D7470C0006D48FC /* ADJSdkClickHandler.h in Headers */, 96B671181D788F7A0090A023 /* ADJSessionParameters.h in Headers */, @@ -2621,35 +2585,34 @@ files = ( 96C93DF51AC47F2E00B53F56 /* NSData+ADJAdditions.m in Sources */, 96C0EFE01A3EF47A00B39F31 /* NSString+ADJAdditions.m in Sources */, - 96C0EFE11A3EF47A00B39F31 /* UIDevice+ADJAdditions.m in Sources */, + 9DF92D842630ED02000FC3FC /* ADJPackageParams.m in Sources */, 96E5E38118BBB48A008E7B30 /* Adjust.m in Sources */, 96E5E38B18BBB48A008E7B30 /* ADJActivityHandler.m in Sources */, 96E5E38C18BBB48A008E7B30 /* ADJActivityKind.m in Sources */, 96E5E38D18BBB48A008E7B30 /* ADJActivityPackage.m in Sources */, 96E5E38E18BBB48A008E7B30 /* ADJActivityState.m in Sources */, 96E5E39218BBB48A008E7B30 /* ADJAdjustFactory.m in Sources */, + 6FAB784D2636DC0E00773869 /* ADJLinkResolution.m in Sources */, 96E5E39318BBB48A008E7B30 /* ADJLogger.m in Sources */, 96E5E39518BBB48A008E7B30 /* ADJPackageHandler.m in Sources */, 9D651BF525B25A64006D69D6 /* ADJThirdPartySharing.m in Sources */, 96E5E39418BBB48A008E7B30 /* ADJPackageBuilder.m in Sources */, - 6FCC85001F278CF300D6A0ED /* ADJReachability.m in Sources */, 96E5E39618BBB48A008E7B30 /* ADJRequestHandler.m in Sources */, 9D2F23E32447CE5C00B7CA90 /* ADJSubscription.m in Sources */, 96E5E39918BBB48A008E7B30 /* ADJUtil.m in Sources */, 6FBEE92624E422EB00FEF3F1 /* ADJUrlStrategy.m in Sources */, 9609BC6A19EEA55800E02303 /* ADJEvent.m in Sources */, - 965307F61A000DA400107FF9 /* ADJDeviceInfo.m in Sources */, 969952CF1A012F5300928462 /* ADJAttributionHandler.m in Sources */, 969952D21A01309200928462 /* ADJAttribution.m in Sources */, 960A8BB91A029A8000F2BB95 /* ADJConfig.m in Sources */, 96854A5A1B1F2779002B2874 /* ADJTimerOnce.m in Sources */, 96854A601B1F278C002B2874 /* ADJTimerCycle.m in Sources */, + 9D3A2ABE2625BEB800BD6E44 /* ADJAdRevenue.m in Sources */, 96FCC53B1C186426007BBFE1 /* ADJResponseData.m in Sources */, 968173841C3C2D07002AE1DE /* ADJSessionSuccess.m in Sources */, 968173881C3C2D36002AE1DE /* ADJSessionFailure.m in Sources */, 9601CAE51C74B70600670879 /* ADJEventSuccess.m in Sources */, 9601CAE91C74BAAE00670879 /* ADJEventFailure.m in Sources */, - 96164D8D1CCA4DEA009431AB /* ADJSystemProfile.m in Sources */, 965B7F311CC78F6600098639 /* ADJBackoffStrategy.m in Sources */, 96164D731CC8FA73009431AB /* ADJSdkClickHandler.m in Sources */, 96B671111D788EEC0090A023 /* ADJSessionParameters.m in Sources */, @@ -2670,7 +2633,6 @@ 9620EA451B062D6F009673F1 /* ADJTestActivityPackage.m in Sources */, 96E768A11CE6267D005D811C /* ADJDeeplinkDelegate.m in Sources */, 96E5E3B618BBB49E008E7B30 /* ADJTestsUtil.m in Sources */, - 96CD2BE11A13BFC600A40AFB /* UIDevice+ADJAdditions.m in Sources */, 96FDD75E1C566C38009C402E /* NSURLSession+NSURLDataWithRequestMocking.m in Sources */, 9D0C7D3F1D79B3FE009DDF4E /* ADJInitState.m in Sources */, 9620EA511B065177009673F1 /* ADJPackageFields.m in Sources */, @@ -2697,6 +2659,7 @@ buildActionMask = 2147483647; files = ( 9D0E2E93210B575600133B4F /* NSString+ADJAdditions.m in Sources */, + 9D3A2AD2262650C300BD6E44 /* ADJAdRevenue.m in Sources */, 9D0E2E7E210B575600133B4F /* ADJEventSuccess.m in Sources */, 9D0E2E7C210B575600133B4F /* ADJEventFailure.m in Sources */, 9D0E2E7F210B575600133B4F /* ADJActivityState.m in Sources */, @@ -2709,10 +2672,8 @@ 9D0E2EAC210B575600133B4F /* ADJActivityHandler.m in Sources */, 9D0E2E80210B575600133B4F /* ADJSessionFailure.m in Sources */, 9D0E2EB2210B575600133B4F /* WKWebViewJavascriptBridge.m in Sources */, - 9D0E2E97210B575600133B4F /* UIDevice+ADJAdditions.m in Sources */, 9D0E2E7B210B575600133B4F /* ADJSessionSuccess.m in Sources */, 9D0E2EB7210B575600133B4F /* WebViewJavascriptBridge_JS.m in Sources */, - 9D0E2E9A210B575600133B4F /* ADJSystemProfile.m in Sources */, 9D0E2E71210B575600133B4F /* ADJRequestHandler.m in Sources */, 9D0E2E91210B575600133B4F /* ADJActivityKind.m in Sources */, 9D0E2E9C210B575600133B4F /* ADJActivityPackage.m in Sources */, @@ -2724,19 +2685,19 @@ 9D2F24042447DD6000B7CA90 /* ADJSubscription.m in Sources */, 9DF3821C260E9B8D0033F5A1 /* NSNumber+ADJAdditions.m in Sources */, 9D0E2E6E210B575600133B4F /* ADJAttributionHandler.m in Sources */, + 9DF92D8F2630ED7B000FC3FC /* ADJPackageParams.m in Sources */, 9D0E2E87210B575600133B4F /* ADJBackoffStrategy.m in Sources */, 9D0E2EBB210B575600133B4F /* AdjustBridgeRegister.m in Sources */, 6F84512525B1B1380004C7C0 /* ADJThirdPartySharing.m in Sources */, 9D0E2E84210B575600133B4F /* ADJTimerCycle.m in Sources */, - 9D0E2E6C210B575600133B4F /* ADJDeviceInfo.m in Sources */, 6FBEE93524E4232800FEF3F1 /* ADJUrlStrategy.m in Sources */, 9D0E2EA5210B575600133B4F /* ADJPackageBuilder.m in Sources */, - 9D0E2EAD210B575600133B4F /* ADJReachability.m in Sources */, 9D0E2E99210B575600133B4F /* ADJAttribution.m in Sources */, 9D0E2EA3210B575600133B4F /* ADJResponseData.m in Sources */, 9D0E2EA0210B575600133B4F /* ADJAdjustFactory.m in Sources */, 9D0E2EA6210B575600133B4F /* ADJUserDefaults.m in Sources */, 9D0E2EAE210B575600133B4F /* AdjustBridge.m in Sources */, + 6FAB78922636DCE700773869 /* ADJLinkResolution.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2756,20 +2717,20 @@ files = ( 9DEAF11D210072BC005CAEDB /* NSString+ADJAdditions.m in Sources */, 9DEAF108210072BC005CAEDB /* ADJEventSuccess.m in Sources */, + 9DF92D8C2630ED59000FC3FC /* ADJPackageParams.m in Sources */, 9DEAF106210072BC005CAEDB /* ADJEventFailure.m in Sources */, 9DEAF109210072BC005CAEDB /* ADJActivityState.m in Sources */, 9DEAF11F210072BC005CAEDB /* NSData+ADJAdditions.m in Sources */, 9DEAF0FF210072BC005CAEDB /* ADJSdkClickHandler.m in Sources */, 9DEAF10F210072BC005CAEDB /* ADJSessionParameters.m in Sources */, 9DEAF127210072BC005CAEDB /* ADJUtil.m in Sources */, + 6FAB78792636DCB600773869 /* ADJLinkResolution.m in Sources */, 9DEAF113210072BC005CAEDB /* Adjust.m in Sources */, 9DEAF136210072BC005CAEDB /* ADJActivityHandler.m in Sources */, 9D651C8925B26DF5006D69D6 /* ADJThirdPartySharing.m in Sources */, 9DEAF10A210072BC005CAEDB /* ADJSessionFailure.m in Sources */, - 9DEAF121210072BC005CAEDB /* UIDevice+ADJAdditions.m in Sources */, 9DEAF105210072BC005CAEDB /* ADJSessionSuccess.m in Sources */, 9D2F23FD2447DD2500B7CA90 /* ADJSubscription.m in Sources */, - 9DEAF124210072BC005CAEDB /* ADJSystemProfile.m in Sources */, 9DEAF0FB210072BC005CAEDB /* ADJRequestHandler.m in Sources */, 9DEAF11B210072BC005CAEDB /* ADJActivityKind.m in Sources */, 9DEAF126210072BC005CAEDB /* ADJActivityPackage.m in Sources */, @@ -2779,12 +2740,11 @@ 6FBEE92D24E4230800FEF3F1 /* ADJUrlStrategy.m in Sources */, 9DEAF101210072BC005CAEDB /* ADJEvent.m in Sources */, 9DEAF117210072BC005CAEDB /* ADJConfig.m in Sources */, + 9D3A2ACA2626505800BD6E44 /* ADJAdRevenue.m in Sources */, 9DEAF0F8210072BC005CAEDB /* ADJAttributionHandler.m in Sources */, 9DEAF111210072BC005CAEDB /* ADJBackoffStrategy.m in Sources */, 9DEAF10E210072BC005CAEDB /* ADJTimerCycle.m in Sources */, - 9DEAF0F6210072BC005CAEDB /* ADJDeviceInfo.m in Sources */, 9DEAF12F210072BC005CAEDB /* ADJPackageBuilder.m in Sources */, - 9DEAF137210072BC005CAEDB /* ADJReachability.m in Sources */, 9DEAF123210072BC005CAEDB /* ADJAttribution.m in Sources */, 9DEAF12D210072BC005CAEDB /* ADJResponseData.m in Sources */, 9DEAF12A210072BC005CAEDB /* ADJAdjustFactory.m in Sources */, @@ -2799,36 +2759,35 @@ files = ( 9DDF243B1F7BE4A4001C1A70 /* ADJUserDefaults.m in Sources */, 9DF9C9121D6F3CA5008E362F /* NSData+ADJAdditions.m in Sources */, + 9DF92D882630ED3D000FC3FC /* ADJPackageParams.m in Sources */, 9DF9C9141D6F3CA5008E362F /* NSString+ADJAdditions.m in Sources */, - 9DF9C9161D6F3CA5008E362F /* UIDevice+ADJAdditions.m in Sources */, 9DF9C9441D6F3CA5008E362F /* Adjust.m in Sources */, 9DF9C90A1D6F3CA5008E362F /* ADJActivityHandler.m in Sources */, 9DF9C90C1D6F3CA5008E362F /* ADJActivityKind.m in Sources */, 9DF9C90E1D6F3CA5008E362F /* ADJActivityPackage.m in Sources */, 9DF9C9101D6F3CA5008E362F /* ADJActivityState.m in Sources */, + 6FAB786C2636DC8400773869 /* ADJLinkResolution.m in Sources */, 9DF9C9181D6F3CA5008E362F /* ADJAdjustFactory.m in Sources */, 9DF9C92C1D6F3CA5008E362F /* ADJLogger.m in Sources */, 6FBE0C6F2577CDAC00EC2CE0 /* ADJThirdPartySharing.m in Sources */, 9DF9C92E1D6F3CA5008E362F /* ADJPackageBuilder.m in Sources */, 9DF9C9301D6F3CA5008E362F /* ADJPackageHandler.m in Sources */, - 6FCC85051F27946100D6A0ED /* ADJReachability.m in Sources */, 9D2F23F82447DCE800B7CA90 /* ADJSubscription.m in Sources */, 9DF9C9321D6F3CA5008E362F /* ADJRequestHandler.m in Sources */, 9DF9C9461D6F3CA5008E362F /* ADJUtil.m in Sources */, 9DF9C9241D6F3CA5008E362F /* ADJEvent.m in Sources */, - 9DF9C9221D6F3CA5008E362F /* ADJDeviceInfo.m in Sources */, 9DF9C91C1D6F3CA5008E362F /* ADJAttributionHandler.m in Sources */, 9DF9C91A1D6F3CA5008E362F /* ADJAttribution.m in Sources */, 9DF9C9201D6F3CA5008E362F /* ADJConfig.m in Sources */, 6FBEE92724E422EB00FEF3F1 /* ADJUrlStrategy.m in Sources */, 9DF9C9401D6F3CA5008E362F /* ADJTimerOnce.m in Sources */, + 9D3A2AC52626501D00BD6E44 /* ADJAdRevenue.m in Sources */, 9DF9C93E1D6F3CA5008E362F /* ADJTimerCycle.m in Sources */, 9DF9C9341D6F3CA5008E362F /* ADJResponseData.m in Sources */, 9DF9C93A1D6F3CA5008E362F /* ADJSessionSuccess.m in Sources */, 9DF9C9381D6F3CA5008E362F /* ADJSessionFailure.m in Sources */, 9DF9C9281D6F3CA5008E362F /* ADJEventSuccess.m in Sources */, 9DF9C9261D6F3CA5008E362F /* ADJEventFailure.m in Sources */, - 9DF9C93C1D6F3CA5008E362F /* ADJSystemProfile.m in Sources */, 9DB457B01D743704004D69E8 /* ADJBackoffStrategy.m in Sources */, 9DB457B11D743704004D69E8 /* ADJSdkClickHandler.m in Sources */, 96B671151D788F4A0090A023 /* ADJSessionParameters.m in Sources */, @@ -2843,35 +2802,34 @@ 9DDF24441F7BE4DF001C1A70 /* ADJUserDefaults.m in Sources */, 9DFB06631D7470C0006D48FC /* NSData+ADJAdditions.m in Sources */, 9DFB06651D7470C0006D48FC /* NSString+ADJAdditions.m in Sources */, - 9DFB06671D7470C0006D48FC /* UIDevice+ADJAdditions.m in Sources */, 9DFB06951D7470C0006D48FC /* Adjust.m in Sources */, 9DFB065B1D7470C0006D48FC /* ADJActivityHandler.m in Sources */, 9DFB065D1D7470C0006D48FC /* ADJActivityKind.m in Sources */, 9DFB065F1D7470C0006D48FC /* ADJActivityPackage.m in Sources */, 9DFB06611D7470C0006D48FC /* ADJActivityState.m in Sources */, 9DFB06691D7470C0006D48FC /* ADJAdjustFactory.m in Sources */, + 6FAB78862636DCCD00773869 /* ADJLinkResolution.m in Sources */, 9DFB067D1D7470C0006D48FC /* ADJLogger.m in Sources */, 9D651C9525B26E1B006D69D6 /* ADJThirdPartySharing.m in Sources */, 9DFB067F1D7470C0006D48FC /* ADJPackageBuilder.m in Sources */, 9DFB06811D7470C0006D48FC /* ADJPackageHandler.m in Sources */, - 6FCC85091F27949000D6A0ED /* ADJReachability.m in Sources */, 9D2F24012447DD3700B7CA90 /* ADJSubscription.m in Sources */, 9DFB06831D7470C0006D48FC /* ADJRequestHandler.m in Sources */, 9DFB06971D7470C0006D48FC /* ADJUtil.m in Sources */, 9DFB06751D7470C0006D48FC /* ADJEvent.m in Sources */, - 9DFB06731D7470C0006D48FC /* ADJDeviceInfo.m in Sources */, + 9DFB06731D7470C0006D48FC /* ADJPackageParams.m in Sources */, 9DFB066D1D7470C0006D48FC /* ADJAttributionHandler.m in Sources */, 9DFB066B1D7470C0006D48FC /* ADJAttribution.m in Sources */, 9DFB06711D7470C0006D48FC /* ADJConfig.m in Sources */, 6FBEE93124E4231400FEF3F1 /* ADJUrlStrategy.m in Sources */, 9DFB06911D7470C0006D48FC /* ADJTimerOnce.m in Sources */, + 9D3A2ACE2626508F00BD6E44 /* ADJAdRevenue.m in Sources */, 9DFB068F1D7470C0006D48FC /* ADJTimerCycle.m in Sources */, 9DFB06851D7470C0006D48FC /* ADJResponseData.m in Sources */, 9DFB068B1D7470C0006D48FC /* ADJSessionSuccess.m in Sources */, 9DFB06891D7470C0006D48FC /* ADJSessionFailure.m in Sources */, 9DFB06791D7470C0006D48FC /* ADJEventSuccess.m in Sources */, 9DFB06771D7470C0006D48FC /* ADJEventFailure.m in Sources */, - 9DFB068D1D7470C0006D48FC /* ADJSystemProfile.m in Sources */, 9DFB066F1D7470C0006D48FC /* ADJBackoffStrategy.m in Sources */, 9DFB06871D7470C0006D48FC /* ADJSdkClickHandler.m in Sources */, 96B671191D788F7A0090A023 /* ADJSessionParameters.m in Sources */, diff --git a/Adjust/ADJActivityHandler.h b/Adjust/ADJActivityHandler.h index 2c797658b..a3ea75f0f 100644 --- a/Adjust/ADJActivityHandler.h +++ b/Adjust/ADJActivityHandler.h @@ -9,7 +9,7 @@ #import "Adjust.h" #import "ADJResponseData.h" #import "ADJActivityState.h" -#import "ADJDeviceInfo.h" +#import "ADJPackageParams.h" #import "ADJSessionParameters.h" #import "ADJThirdPartySharing.h" @@ -110,8 +110,9 @@ - (void)trackMeasurementConsent:(BOOL)enabled; - (void)trackSubscription:(ADJSubscription * _Nullable)subscription; - (void)updateAttStatusFromUserCallback:(int)newAttStatusFromUser; +- (void)trackAdRevenue:(ADJAdRevenue * _Nullable)adRevenue; -- (ADJDeviceInfo * _Nullable)deviceInfo; +- (ADJPackageParams * _Nullable)packageParams; - (ADJActivityState * _Nullable)activityState; - (ADJConfig * _Nullable)adjustConfig; - (ADJSessionParameters * _Nullable)sessionParameters; diff --git a/Adjust/ADJActivityHandler.m b/Adjust/ADJActivityHandler.m index d7e266a4f..9b50fcc6a 100644 --- a/Adjust/ADJActivityHandler.m +++ b/Adjust/ADJActivityHandler.m @@ -6,6 +6,8 @@ // Copyright (c) 2013 adjust GmbH. All rights reserved. // +#import + #import "ADJActivityPackage.h" #import "ADJActivityHandler.h" #import "ADJPackageBuilder.h" @@ -14,7 +16,6 @@ #import "ADJTimerCycle.h" #import "ADJTimerOnce.h" #import "ADJUtil.h" -#import "UIDevice+ADJAdditions.h" #import "ADJAdjustFactory.h" #import "ADJAttributionHandler.h" #import "NSString+ADJAdditions.h" @@ -87,7 +88,7 @@ @interface ADJActivityHandler() @property (nonatomic, assign) NSInteger iAdRetriesLeft; @property (nonatomic, assign) NSInteger adServicesRetriesLeft; @property (nonatomic, strong) ADJInternalState *internalState; -@property (nonatomic, strong) ADJDeviceInfo *deviceInfo; +@property (nonatomic, strong) ADJPackageParams *packageParams; @property (nonatomic, strong) ADJTimerOnce *delayStartTimer; @property (nonatomic, strong) ADJSessionParameters *sessionParameters; // weak for object that Activity Handler does not "own" @@ -562,7 +563,7 @@ - (void)sendIad3ClickPackage:(ADJActivityHandler *)selfI }]; } ADJPackageBuilder *clickBuilder = [[ADJPackageBuilder alloc] - initWithDeviceInfo:selfI.deviceInfo + initWithPackageParams:selfI.packageParams activityState:selfI.activityState config:selfI.adjustConfig sessionParameters:self.sessionParameters @@ -597,7 +598,7 @@ - (void)sendAdServicesClickPackage:(ADJActivityHandler *)selfI }]; } ADJPackageBuilder *clickBuilder = [[ADJPackageBuilder alloc] - initWithDeviceInfo:selfI.deviceInfo + initWithPackageParams:selfI.packageParams activityState:selfI.activityState config:selfI.adjustConfig sessionParameters:self.sessionParameters @@ -760,6 +761,14 @@ - (void)trackMeasurementConsent:(BOOL)enabled { }]; } +- (void)trackAdRevenue:(ADJAdRevenue *)adRevenue { + [ADJUtil launchInQueue:self.internalQueue + selfInject:self + block:^(ADJActivityHandler * selfI) { + [selfI trackAdRevenueI:selfI adRevenue:adRevenue]; + }]; +} + - (void)writeActivityState { [ADJUtil launchInQueue:self.internalQueue selfInject:self @@ -779,7 +788,7 @@ - (void)trackAttStatusUpdateI:(ADJActivityHandler *)selfI { double now = [NSDate.date timeIntervalSince1970]; ADJPackageBuilder *infoBuilder = [[ADJPackageBuilder alloc] - initWithDeviceInfo:selfI.deviceInfo + initWithPackageParams:selfI.packageParams activityState:selfI.activityState config:selfI.adjustConfig sessionParameters:selfI.sessionParameters @@ -845,7 +854,7 @@ - (void)teardown self.adjustDelegate = nil; self.adjustConfig = nil; self.internalState = nil; - self.deviceInfo = nil; + self.packageParams = nil; self.delayStartTimer = nil; self.logger = nil; } @@ -888,7 +897,7 @@ - (void)initI:(ADJActivityHandler *)selfI kForegroundTimerInterval = ADJAdjustFactory.timerInterval; kBackgroundTimerInterval = ADJAdjustFactory.timerInterval; - selfI.deviceInfo = [ADJDeviceInfo deviceInfoWithSdkPrefix:selfI.adjustConfig.sdkPrefix]; + selfI.packageParams = [ADJPackageParams packageParamsWithSdkPrefix:selfI.adjustConfig.sdkPrefix]; // read files that are accessed only in Internal sections selfI.sessionParameters = [[ADJSessionParameters alloc] init]; @@ -1159,7 +1168,7 @@ - (void)trackNewSessionI:(double)now withActivityHandler:(ADJActivityHandler *)s - (void)transferSessionPackageI:(ADJActivityHandler *)selfI now:(double)now { ADJPackageBuilder *sessionBuilder = [[ADJPackageBuilder alloc] - initWithDeviceInfo:selfI.deviceInfo + initWithPackageParams:selfI.packageParams activityState:selfI.activityState config:selfI.adjustConfig sessionParameters:selfI.sessionParameters @@ -1234,7 +1243,7 @@ - (void)eventI:(ADJActivityHandler *)selfI // create and populate event package ADJPackageBuilder *eventBuilder = [[ADJPackageBuilder alloc] - initWithDeviceInfo:selfI.deviceInfo + initWithPackageParams:selfI.packageParams activityState:selfI.activityState config:selfI.adjustConfig sessionParameters:selfI.sessionParameters @@ -1275,7 +1284,7 @@ - (void)adRevenueI:(ADJActivityHandler *)selfI // Create and submit ad revenue package. ADJPackageBuilder *adRevenueBuilder = [[ADJPackageBuilder alloc] - initWithDeviceInfo:selfI.deviceInfo + initWithPackageParams:selfI.packageParams activityState:selfI.activityState config:selfI.adjustConfig sessionParameters:selfI.sessionParameters @@ -1307,7 +1316,7 @@ - (void)trackSubscriptionI:(ADJActivityHandler *)selfI // Create and submit ad revenue package. ADJPackageBuilder *subscriptionBuilder = [[ADJPackageBuilder alloc] - initWithDeviceInfo:selfI.deviceInfo + initWithPackageParams:selfI.packageParams activityState:selfI.activityState config:selfI.adjustConfig sessionParameters:selfI.sessionParameters @@ -1352,7 +1361,7 @@ - (void)disableThirdPartySharingI:(ADJActivityHandler *)selfI { // build package ADJPackageBuilder *dtpsBuilder = [[ADJPackageBuilder alloc] - initWithDeviceInfo:selfI.deviceInfo + initWithPackageParams:selfI.packageParams activityState:selfI.activityState config:selfI.adjustConfig sessionParameters:selfI.sessionParameters @@ -1389,7 +1398,7 @@ - (BOOL)trackThirdPartySharingI:(ADJActivityHandler *)selfI // build package ADJPackageBuilder *tpsBuilder = [[ADJPackageBuilder alloc] - initWithDeviceInfo:selfI.deviceInfo + initWithPackageParams:selfI.packageParams activityState:selfI.activityState config:selfI.adjustConfig sessionParameters:selfI.sessionParameters @@ -1426,7 +1435,7 @@ - (BOOL)trackMeasurementConsentI:(ADJActivityHandler *)selfI // build package ADJPackageBuilder *tpsBuilder = [[ADJPackageBuilder alloc] - initWithDeviceInfo:selfI.deviceInfo + initWithPackageParams:selfI.packageParams activityState:selfI.activityState config:selfI.adjustConfig sessionParameters:selfI.sessionParameters @@ -1446,6 +1455,42 @@ - (BOOL)trackMeasurementConsentI:(ADJActivityHandler *)selfI return YES; } +- (void)trackAdRevenueI:(ADJActivityHandler *)selfI + adRevenue:(ADJAdRevenue *)adRevenue +{ + if (!selfI.activityState) { + return; + } + if (![selfI isEnabledI:selfI]) { + return; + } + if (selfI.activityState.isGdprForgotten) { + return; + } + if (![selfI checkAdRevenueI:selfI adRevenue:adRevenue]) { + return; + } + + double now = [NSDate.date timeIntervalSince1970]; + + // Create and submit ad revenue package. + ADJPackageBuilder *adRevenueBuilder = [[ADJPackageBuilder alloc] initWithPackageParams:selfI.packageParams + activityState:selfI.activityState + config:selfI.adjustConfig + sessionParameters:selfI.sessionParameters + trackingStatusManager:self.trackingStatusManager + createdAt:now]; + + ADJActivityPackage *adRevenuePackage = [adRevenueBuilder buildAdRevenuePackage:adRevenue + isInDelay:[selfI.internalState isInDelayedStart]]; + [selfI.packageHandler addPackage:adRevenuePackage]; + if (selfI.adjustConfig.eventBufferingEnabled) { + [selfI.logger info:@"Buffered event %@", adRevenuePackage.suffix]; + } else { + [selfI.packageHandler sendFirstPackage]; + } +} + - (void)launchEventResponseTasksI:(ADJActivityHandler *)selfI eventResponseData:(ADJEventResponseData *)eventResponseData { [selfI updateAdidI:selfI adid:eventResponseData.adid]; @@ -1710,7 +1755,7 @@ - (void)setEnabledI:(ADJActivityHandler *)selfI enabled:(BOOL)enabled { } - (void)checkForiAdI:(ADJActivityHandler *)selfI { - [[UIDevice currentDevice] adjCheckForiAd:selfI queue:selfI.internalQueue]; + [ADJUtil checkForiAd:selfI queue:selfI.internalQueue]; } - (BOOL)shouldFetchAdServicesI:(ADJActivityHandler *)selfI { @@ -1727,7 +1772,7 @@ - (void)checkForAdServicesAttributionI:(ADJActivityHandler *)selfI { if ([selfI shouldFetchAdServicesI:selfI]) { dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ NSError *error = nil; - NSString *token = [[UIDevice currentDevice] adjFetchAdServicesAttribution:&error]; + NSString *token = [ADJUtil fetchAdServicesAttribution:&error]; [selfI setAdServicesAttributionToken:token error:error]; }); } @@ -1842,7 +1887,7 @@ - (void)appWillOpenUrlI:(ADJActivityHandler *)selfI selfI.activityState.lastInterval = lastInterval; }]; ADJPackageBuilder *clickBuilder = [[ADJPackageBuilder alloc] - initWithDeviceInfo:selfI.deviceInfo + initWithPackageParams:selfI.packageParams activityState:selfI.activityState config:selfI.adjustConfig sessionParameters:selfI.sessionParameters @@ -1946,7 +1991,7 @@ - (void)setDeviceTokenI:(ADJActivityHandler *)selfI // send info package double now = [NSDate.date timeIntervalSince1970]; ADJPackageBuilder *infoBuilder = [[ADJPackageBuilder alloc] - initWithDeviceInfo:selfI.deviceInfo + initWithPackageParams:selfI.packageParams activityState:selfI.activityState config:selfI.adjustConfig sessionParameters:selfI.sessionParameters @@ -1995,7 +2040,7 @@ - (void)setPushTokenI:(ADJActivityHandler *)selfI // send info package double now = [NSDate.date timeIntervalSince1970]; ADJPackageBuilder *infoBuilder = [[ADJPackageBuilder alloc] - initWithDeviceInfo:selfI.deviceInfo + initWithPackageParams:selfI.packageParams activityState:selfI.activityState config:selfI.adjustConfig sessionParameters:selfI.sessionParameters @@ -2036,7 +2081,7 @@ - (void)setGdprForgetMeI:(ADJActivityHandler *)selfI { // Send GDPR package double now = [NSDate.date timeIntervalSince1970]; ADJPackageBuilder *gdprBuilder = [[ADJPackageBuilder alloc] - initWithDeviceInfo:selfI.deviceInfo + initWithPackageParams:selfI.packageParams activityState:selfI.activityState config:selfI.adjustConfig sessionParameters:selfI.sessionParameters @@ -2668,6 +2713,21 @@ - (BOOL)checkActivityStateI:(ADJActivityHandler *)selfI { return YES; } +- (BOOL)checkAdRevenueI:(ADJActivityHandler *)selfI + adRevenue:(ADJAdRevenue *)adRevenue { + if (adRevenue == nil) { + [selfI.logger error:@"Ad revenue missing"]; + return NO; + } + + if (![adRevenue isValid]) { + [selfI.logger error:@"Ad revenue not initialized correctly"]; + return NO; + } + + return YES; +} + - (void)registerForSKAdNetworkAttribution { if (!self.adjustConfig.isSKAdNetworkHandlingActive) { return; @@ -2705,6 +2765,13 @@ - (void)checkConversionValue:(ADJResponseData *)responseData { } [ADJUtil updateSkAdNetworkConversionValue:conversionValue]; + + if ([self.adjustDelegate respondsToSelector:@selector(adjustConversionValueUpdated:)]) { + [self.logger debug:@"Launching conversion value updated delegate"]; + [ADJUtil launchInMainThread:self.adjustDelegate + selector:@selector(adjustConversionValueUpdated:) + withObject:conversionValue]; + } } - (void)updateAttStatusFromUserCallback:(int)newAttStatusFromUser { @@ -2737,37 +2804,28 @@ - (BOOL)canGetAttStatus { } - (BOOL)trackingEnabled { - return UIDevice.currentDevice.adjTrackingEnabled; + return [ADJUtil trackingEnabled]; } - (int)attStatus { - int readAttStatus = UIDevice.currentDevice.adjATTStatus; - + int readAttStatus = [ADJUtil attStatus]; [self updateAttStatus:readAttStatus]; - - // does not need to track AttStatus update, since it will be send with package - return readAttStatus; } - (void)checkForNewAttStatus { - int readAttStatus = UIDevice.currentDevice.adjATTStatus; - + int readAttStatus = [ADJUtil attStatus]; BOOL didUpdateAttStatus = [self updateAttStatus:readAttStatus]; - if (!didUpdateAttStatus) { return; } - [self.activityHandler trackAttStatusUpdate]; } - (void)updateAttStatusFromUserCallback:(int)newAttStatusFromUser { BOOL didUpdateAttStatus = [self updateAttStatus:newAttStatusFromUser]; - if (!didUpdateAttStatus) { return; } - [self.activityHandler trackAttStatusUpdate]; } diff --git a/Adjust/ADJActivityState.h b/Adjust/ADJActivityState.h index a6cb96fc6..358555215 100644 --- a/Adjust/ADJActivityState.h +++ b/Adjust/ADJActivityState.h @@ -16,7 +16,7 @@ @property (nonatomic, assign) BOOL askingAttribution; @property (nonatomic, assign) BOOL isThirdPartySharingDisabled; -@property (nonatomic, copy) NSString *uuid; +@property (nonatomic, copy) NSString *dedupeToken; @property (nonatomic, copy) NSString *deviceToken; @property (nonatomic, assign) BOOL updatePackages; diff --git a/Adjust/ADJActivityState.m b/Adjust/ADJActivityState.m index ea9604842..0c6097100 100644 --- a/Adjust/ADJActivityState.m +++ b/Adjust/ADJActivityState.m @@ -8,7 +8,6 @@ #import "ADJAdjustFactory.h" #import "ADJActivityState.h" -#import "UIDevice+ADJAdditions.h" #import "NSString+ADJAdditions.h" static const int kTransactionIdCount = 10; @@ -24,7 +23,7 @@ - (id)init { return nil; } - [self assignUuid:[UIDevice.currentDevice adjCreateUuid]]; + [self assignRandomToken]; self.eventCount = 0; self.sessionCount = 0; @@ -82,8 +81,8 @@ - (BOOL)findTransactionId:(NSString *)transactionId { #pragma mark - Private & helper methods -- (void)assignUuid:(NSString *)uuid { - self.uuid = uuid; +- (void)assignRandomToken { + self.dedupeToken = [[NSUUID UUID] UUIDString]; } - (NSString *)description { @@ -111,10 +110,10 @@ - (id)initWithCoder:(NSCoder *)decoder { // Default values for migrating devices. if ([decoder containsValueForKey:@"uuid"]) { - [self assignUuid:[decoder decodeObjectForKey:@"uuid"]]; + self.dedupeToken = [decoder decodeObjectForKey:@"uuid"]; } - if (self.uuid == nil) { - [self assignUuid:[UIDevice.currentDevice adjCreateUuid]]; + if (self.dedupeToken == nil) { + [self assignRandomToken]; } if ([decoder containsValueForKey:@"transactionIds"]) { @@ -185,7 +184,7 @@ - (void)encodeWithCoder:(NSCoder *)encoder { [encoder encodeDouble:self.sessionLength forKey:@"sessionLength"]; [encoder encodeDouble:self.timeSpent forKey:@"timeSpent"]; [encoder encodeDouble:self.lastActivity forKey:@"lastActivity"]; - [encoder encodeObject:self.uuid forKey:@"uuid"]; + [encoder encodeObject:self.dedupeToken forKey:@"uuid"]; [encoder encodeObject:self.transactionIds forKey:@"transactionIds"]; [encoder encodeBool:self.enabled forKey:@"enabled"]; [encoder encodeBool:self.isGdprForgotten forKey:@"isGdprForgotten"]; @@ -210,7 +209,7 @@ - (id)copyWithZone:(NSZone *)zone { copy.subsessionCount = self.subsessionCount; copy.sessionLength = self.sessionLength; copy.timeSpent = self.timeSpent; - copy.uuid = [self.uuid copyWithZone:zone]; + copy.dedupeToken = [self.dedupeToken copyWithZone:zone]; copy.lastInterval = self.lastInterval; copy.eventCount = self.eventCount; copy.enabled = self.enabled; diff --git a/Adjust/ADJAdRevenue.h b/Adjust/ADJAdRevenue.h new file mode 100644 index 000000000..4b167ad24 --- /dev/null +++ b/Adjust/ADJAdRevenue.h @@ -0,0 +1,80 @@ +// +// ADJAdRevenue.h +// Adjust SDK +// +// Created by Uglješa Erceg (@uerceg) on 13th April 2021 +// Copyright (c) 2021 Adjust GmbH. All rights reserved. +// + +#import + +/** + * @brief Adjust ad revenue class. + */ +@interface ADJAdRevenue : NSObject + +/** + * @brief Ad revenue source value. + */ +@property (nonatomic, copy, readonly, nonnull) NSString *source; + +/** + * @brief Revenue value. + */ +@property (nonatomic, copy, readonly, nonnull) NSNumber *revenue; + +/** + * @brief Currency value. + */ +@property (nonatomic, copy, readonly, nonnull) NSString *currency; + +/** + * @brief Ad impressions count. + */ +@property (nonatomic, copy, readonly, nonnull) NSNumber *adImpressionsCount; + +/** + * @brief Ad revenue network. + */ +@property (nonatomic, copy, readonly, nonnull) NSString *adRevenueNetwork; + +/** + * @brief Ad revenue unit. + */ +@property (nonatomic, copy, readonly, nonnull) NSString *adRevenueUnit; + +/** + * @brief Ad revenue placement. + */ +@property (nonatomic, copy, readonly, nonnull) NSString *adRevenuePlacement; + +/** + * @brief List of partner parameters. + */ +@property (nonatomic, copy, readonly, nonnull) NSDictionary *partnerParameters; + +/** + * @brief List of callback parameters. + */ +@property (nonatomic, copy, readonly, nonnull) NSDictionary *callbackParameters; + + +- (nullable id)initWithSource:(nonnull NSString *)source; + +- (void)setRevenue:(double)amount currency:(nonnull NSString *)currency; + +- (void)setAdImpressionsCount:(int)adImpressionsCount; + +- (void)setAdRevenueNetwork:(nonnull NSString *)adRevenueNetwork; + +- (void)setAdRevenueUnit:(nonnull NSString *)adRevenueUnit; + +- (void)setAdRevenuePlacement:(nonnull NSString *)adRevenuePlacement; + +- (void)addCallbackParameter:(nonnull NSString *)key value:(nonnull NSString *)value; + +- (void)addPartnerParameter:(nonnull NSString *)key value:(nonnull NSString *)value; + +- (BOOL)isValid; + +@end diff --git a/Adjust/ADJAdRevenue.m b/Adjust/ADJAdRevenue.m new file mode 100644 index 000000000..20e3fd3a8 --- /dev/null +++ b/Adjust/ADJAdRevenue.m @@ -0,0 +1,163 @@ +// +// ADJAdRevenue.m +// Adjust SDK +// +// Created by Uglješa Erceg (@uerceg) on 13th April 2021 +// Copyright (c) 2021 Adjust GmbH. All rights reserved. +// + +#import "ADJAdRevenue.h" +#import "ADJAdjustFactory.h" +#import "ADJUtil.h" + +@interface ADJAdRevenue() + +@property (nonatomic, weak) id logger; + +@property (nonatomic, strong) NSMutableDictionary *mutableCallbackParameters; + +@property (nonatomic, strong) NSMutableDictionary *mutablePartnerParameters; + +@end + +@implementation ADJAdRevenue + +- (nullable id)initWithSource:(NSString *)source { + self = [super init]; + if (self == nil) { + return nil; + } + + _source = source; + _logger = ADJAdjustFactory.logger; + + return self; +} + +- (void)setRevenue:(double)amount currency:(NSString *)currency { + NSNumber *revenue = [NSNumber numberWithDouble:amount]; + + _revenue = revenue; + @synchronized (self) { + _currency = [currency copy]; + } +} + +- (void)setAdImpressionsCount:(int)adImpressionsCount { + NSNumber *nAdImpressionsCount = [NSNumber numberWithInt:adImpressionsCount]; + _adImpressionsCount = nAdImpressionsCount; +} + +- (void)setAdRevenueNetwork:(nonnull NSString *)adRevenueNetwork { + @synchronized (self) { + _adRevenueNetwork = [adRevenueNetwork copy]; + } +} + +- (void)setAdRevenueUnit:(nonnull NSString *)adRevenueUnit { + @synchronized (self) { + _adRevenueUnit = [adRevenueUnit copy]; + } +} + +- (void)setAdRevenuePlacement:(nonnull NSString *)adRevenuePlacement { + @synchronized (self) { + _adRevenuePlacement = [adRevenuePlacement copy]; + } +} + +- (void)addCallbackParameter:(nonnull NSString *)key + value:(nonnull NSString *)value +{ + @synchronized (self) { + NSString *immutableKey = [key copy]; + NSString *immutableValue = [value copy]; + + if (![ADJUtil isValidParameter:immutableKey + attributeType:@"key" + parameterName:@"Callback"]) { + return; + } + if (![ADJUtil isValidParameter:immutableValue + attributeType:@"value" + parameterName:@"Callback"]) { + return; + } + + if (self.mutableCallbackParameters == nil) { + self.mutableCallbackParameters = [[NSMutableDictionary alloc] init]; + } + + if ([self.mutableCallbackParameters objectForKey:immutableKey]) { + [self.logger warn:@"key %@ was overwritten", immutableKey]; + } + + [self.mutableCallbackParameters setObject:immutableValue forKey:immutableKey]; + } +} + +- (void)addPartnerParameter:(nonnull NSString *)key + value:(nonnull NSString *)value +{ + @synchronized (self) { + NSString *immutableKey = [key copy]; + NSString *immutableValue = [value copy]; + + if (![ADJUtil isValidParameter:immutableKey + attributeType:@"key" + parameterName:@"Partner"]) { + return; + } + if (![ADJUtil isValidParameter:immutableValue + attributeType:@"value" + parameterName:@"Partner"]) { + return; + } + + if (self.mutablePartnerParameters == nil) { + self.mutablePartnerParameters = [[NSMutableDictionary alloc] init]; + } + + if ([self.mutablePartnerParameters objectForKey:immutableKey]) { + [self.logger warn:@"key %@ was overwritten", immutableKey]; + } + + [self.mutablePartnerParameters setObject:immutableValue forKey:immutableKey]; + } +} + +- (NSDictionary *)callbackParameters { + @synchronized (self) { + return (NSDictionary *)self.mutableCallbackParameters; + } +} + +- (NSDictionary *)partnerParameters { + @synchronized (self) { + return (NSDictionary *)self.mutablePartnerParameters; + } +} + +- (BOOL)isValid { + return self.source != nil && [self.source length] > 0; +} + +- (id)copyWithZone:(NSZone *)zone { + ADJAdRevenue *copy = [[[self class] allocWithZone:zone] init]; + + if (copy) { + copy->_source = [self.source copyWithZone:zone]; + copy->_revenue = [self.revenue copyWithZone:zone]; + copy->_currency = [self.currency copyWithZone:zone]; + copy.mutableCallbackParameters = [self.mutableCallbackParameters copyWithZone:zone]; + copy.mutablePartnerParameters = [self.mutablePartnerParameters copyWithZone:zone]; + copy->_adImpressionsCount = [self.adImpressionsCount copyWithZone:zone]; + copy->_adRevenueUnit = [self.adRevenueUnit copyWithZone:zone]; + copy->_adRevenueNetwork = [self.adRevenueNetwork copyWithZone:zone]; + copy->_adRevenuePlacement = [self.adRevenuePlacement copyWithZone:zone]; + } + + return copy; +} + +@end diff --git a/Adjust/ADJAdditions/NSData+ADJAdditions.h b/Adjust/ADJAdditions/NSData+ADJAdditions.h index a2786c116..45a10c478 100644 --- a/Adjust/ADJAdditions/NSData+ADJAdditions.h +++ b/Adjust/ADJAdditions/NSData+ADJAdditions.h @@ -1,9 +1,9 @@ // // NSData+ADJAdditions.h -// adjust +// Adjust SDK // -// Created by Pedro Filipe on 26/03/15. -// Copyright (c) 2015 adjust GmbH. All rights reserved. +// Created by Pedro Filipe (@nonelse) on 26th March 2015. +// Copyright (c) 2015-2021 Adjust GmbH. All rights reserved. // #import diff --git a/Adjust/ADJAdditions/NSData+ADJAdditions.m b/Adjust/ADJAdditions/NSData+ADJAdditions.m index 6b70105e8..fa2f9b5b4 100644 --- a/Adjust/ADJAdditions/NSData+ADJAdditions.m +++ b/Adjust/ADJAdditions/NSData+ADJAdditions.m @@ -1,9 +1,9 @@ // // NSData+ADJAdditions.m -// adjust +// Adjust SDK // -// Created by Pedro Filipe on 26/03/15. -// Copyright (c) 2015 adjust GmbH. All rights reserved. +// Created by Pedro Filipe (@nonelse) on 26th March 2015. +// Copyright (c) 2015-2021 Adjust GmbH. All rights reserved. // #import "NSData+ADJAdditions.h" @@ -14,19 +14,21 @@ @implementation NSData(ADJAdditions) // http://stackoverflow.com/a/4727124 - (NSString *)adjEncodeBase64 { - const unsigned char * objRawData = self.bytes; - char * objPointer; - char * strResult; + const unsigned char* objRawData = self.bytes; + char* objPointer; + char* strResult; - // Get the Raw Data length and ensure we actually have data + // get the raw data length and ensure we actually have data NSUInteger intLength = self.length; - if (intLength == 0) return nil; + if (intLength == 0) { + return nil; + } - // Setup the String-based Result placeholder and pointer within that placeholder + // setup the string-based result placeholder and pointer within that placeholder strResult = (char *)calloc((((intLength + 2) / 3) * 4) + 1, sizeof(char)); objPointer = strResult; - // Iterate through everything + // iterate through everything while (intLength > 2) { // keep going until we have less than 24 bits *objPointer++ = _base64EncodingTable[objRawData[0] >> 2]; *objPointer++ = _base64EncodingTable[((objRawData[0] & 0x03) << 4) + (objRawData[1] >> 4)]; @@ -52,10 +54,10 @@ - (NSString *)adjEncodeBase64 { } } - // Terminate the string-based result + // terminate the string-based result *objPointer = '\0'; - // Return the results as an NSString object + // return the results as an NSString object NSString *encodedString = [NSString stringWithCString:strResult encoding:NSASCIIStringEncoding]; free(strResult); return encodedString; diff --git a/Adjust/ADJAdditions/NSNumber+ADJAdditions.h b/Adjust/ADJAdditions/NSNumber+ADJAdditions.h index 77b56653a..5db40a886 100644 --- a/Adjust/ADJAdditions/NSNumber+ADJAdditions.h +++ b/Adjust/ADJAdditions/NSNumber+ADJAdditions.h @@ -1,6 +1,6 @@ // // NSNumber+ADJAdditions.h -// Adjust +// Adjust SDK // // Created by Uglješa Erceg (@uerceg) on 26th March 2021. // Copyright (c) 2021 Adjust GmbH. All rights reserved. diff --git a/Adjust/ADJAdditions/NSNumber+ADJAdditions.m b/Adjust/ADJAdditions/NSNumber+ADJAdditions.m index 902e8a1c7..b148e4b78 100644 --- a/Adjust/ADJAdditions/NSNumber+ADJAdditions.m +++ b/Adjust/ADJAdditions/NSNumber+ADJAdditions.m @@ -1,6 +1,6 @@ // // NSNumber+ADJAdditions.m -// Adjust +// Adjust SDK // // Created by Uglješa Erceg (@uerceg) on 26th March 2021. // Copyright (c) 2021 Adjust GmbH. All rights reserved. @@ -14,7 +14,6 @@ + (BOOL)adjIsEqual:(NSNumber *)first toNumber:(NSNumber *)second { if (first == nil && second == nil) { return YES; } - return [first isEqualToNumber:second]; } diff --git a/Adjust/ADJAdditions/NSString+ADJAdditions.h b/Adjust/ADJAdditions/NSString+ADJAdditions.h index d76550fce..ace931844 100644 --- a/Adjust/ADJAdditions/NSString+ADJAdditions.h +++ b/Adjust/ADJAdditions/NSString+ADJAdditions.h @@ -1,10 +1,11 @@ // // NSString+ADJAdditions.h -// Adjust +// Adjust SDK // -// Created by Christian Wellenbrock on 23.07.12. -// Copyright (c) 2012-2014 adjust GmbH. All rights reserved. +// Created by Christian Wellenbrock (@wellle) on 23rd July 2012. +// Copyright (c) 2012-2021 Adjust GmbH. All rights reserved. // + #import @interface NSString(ADJAdditions) @@ -13,7 +14,6 @@ - (NSString *)adjTrim; - (NSString *)adjUrlEncode; - (NSString *)adjUrlDecode; -- (NSString *)adjRemoveColons; + (NSString *)adjJoin:(NSString *)strings, ...; + (BOOL) adjIsEqual:(NSString *)first toString:(NSString *)second; diff --git a/Adjust/ADJAdditions/NSString+ADJAdditions.m b/Adjust/ADJAdditions/NSString+ADJAdditions.m index 94e2b6c3a..bd94e6ba9 100644 --- a/Adjust/ADJAdditions/NSString+ADJAdditions.m +++ b/Adjust/ADJAdditions/NSString+ADJAdditions.m @@ -1,9 +1,9 @@ // // NSString+ADJAdditions.m -// Adjust +// Adjust SDK // -// Created by Christian Wellenbrock on 23.07.12. -// Copyright (c) 2012-2014 adjust GmbH. All rights reserved. +// Created by Christian Wellenbrock (@wellle) on 23rd July 2012. +// Copyright (c) 2012-2021 Adjust GmbH. All rights reserved. // #import @@ -12,11 +12,30 @@ @implementation NSString(ADJAdditions) ++ (NSString *)adjJoin:(NSString *)first, ... { + NSString *iter, *result = first; + va_list strings; + va_start(strings, first); + while ((iter = va_arg(strings, NSString*))) { + NSString *capitalized = iter.capitalizedString; + result = [result stringByAppendingString:capitalized]; + } + va_end(strings); + return result; +} + ++ (BOOL)adjIsEqual:(NSString *)first toString:(NSString *)second { + if (first == nil && second == nil) { + return YES; + } + return [first isEqualToString:second]; +} + - (NSString *)adjTrim { return [self stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]; } --(NSString *)adjUrlEncode { +- (NSString *)adjUrlEncode { #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wdeprecated-declarations" return (NSString *)CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes( @@ -26,57 +45,27 @@ -(NSString *)adjUrlEncode { (CFStringRef)@"!*'\"();:@&=+$,/?%#[]% ", CFStringConvertNSStringEncodingToEncoding(NSUTF8StringEncoding))); #pragma clang diagnostic pop - // Alternative: // return [self stringByAddingPercentEncodingWithAllowedCharacters: // [NSCharacterSet characterSetWithCharactersInString:@"!*'\"();:@&=+$,/?%#[]% "]]; } --(NSString *)adjUrlDecode { +- (NSString *)adjUrlDecode { return (NSString *)CFBridgingRelease(CFURLCreateStringByReplacingPercentEscapes( kCFAllocatorDefault, (CFStringRef)self, CFSTR(""))); } -- (NSString *)adjRemoveColons { - return [self stringByReplacingOccurrencesOfString:@":" withString:@""]; -} - - (NSString *)adjSha256 { const char* str = [self UTF8String]; unsigned char result[CC_SHA256_DIGEST_LENGTH]; CC_SHA256(str, (CC_LONG)strlen(str), result); - - NSMutableString *ret = [NSMutableString stringWithCapacity:CC_SHA256_DIGEST_LENGTH*2]; - for(int i = 0; i -#import -#import "ADJDeviceInfo.h" -#import "ADJActivityHandler.h" - -@interface UIDevice(ADJAdditions) - -- (int)adjATTStatus; -- (BOOL)adjTrackingEnabled; -- (NSString *)adjIdForAdvertisers; -- (NSString *)adjFbAnonymousId; -- (NSString *)adjDeviceType; -- (NSString *)adjDeviceName; -- (NSString *)adjCreateUuid; -- (NSString *)adjVendorId; -- (void)adjCheckForiAd:(ADJActivityHandler *)activityHandler queue:(dispatch_queue_t)queue; -- (NSString *)adjFetchAdServicesAttribution:(NSError **)errorPtr; - -- (void)requestTrackingAuthorizationWithCompletionHandler:(void (^)(NSUInteger status))completion; - -@end diff --git a/Adjust/ADJAdditions/UIDevice+ADJAdditions.m b/Adjust/ADJAdditions/UIDevice+ADJAdditions.m deleted file mode 100644 index dc830e822..000000000 --- a/Adjust/ADJAdditions/UIDevice+ADJAdditions.m +++ /dev/null @@ -1,359 +0,0 @@ -// -// UIDevice+ADJAdditions.m -// Adjust -// -// Created by Christian Wellenbrock (@wellle) on 23rd July 2012. -// Copyright © 2012-2018 Adjust GmbH. All rights reserved. -// - -#import "UIDevice+ADJAdditions.h" -#import "NSString+ADJAdditions.h" - -#import - -#if !ADJUST_NO_IDFA -#import -#endif - -#if !ADJUST_NO_IAD && !TARGET_OS_TV -#import -#endif - -#import "ADJUtil.h" -#import "ADJSystemProfile.h" -#import "ADJAdjustFactory.h" - -@implementation UIDevice(ADJAdditions) - -- (Class)adSupportManager { - NSString *className = [NSString adjJoin:@"A", @"S", @"identifier", @"manager", nil]; - Class class = NSClassFromString(className); - - return class; -} - -- (Class)appTrackingManager { - NSString *className = [NSString adjJoin:@"A", @"T", @"tracking", @"manager", nil]; - Class class = NSClassFromString(className); - - return class; -} - -- (int)adjATTStatus { - Class appTrackingClass = [self appTrackingManager]; - if (appTrackingClass != nil) { - NSString *keyAuthorization = [NSString adjJoin:@"tracking", @"authorization", @"status", nil]; - SEL selAuthorization = NSSelectorFromString(keyAuthorization); - if ([appTrackingClass respondsToSelector:selAuthorization]) { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wunguarded-availability" -#pragma clang diagnostic ignored "-Warc-performSelector-leaks" - return (int)[appTrackingClass performSelector:selAuthorization]; -#pragma clang diagnostic pop - } - } - - return -1; -} - -- (void)requestTrackingAuthorizationWithCompletionHandler:(void (^)(NSUInteger status))completion -{ - Class appTrackingClass = [self appTrackingManager]; - if (appTrackingClass == nil) { - return; - } - NSString *requestAuthorization = [NSString adjJoin: - @"request", - @"tracking", - @"authorization", - @"with", - @"completion", - @"handler:", nil]; - SEL selRequestAuthorization = NSSelectorFromString(requestAuthorization); - if (![appTrackingClass respondsToSelector:selRequestAuthorization]) { - return; - } -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wunguarded-availability" -#pragma clang diagnostic ignored "-Warc-performSelector-leaks" - [appTrackingClass performSelector:selRequestAuthorization withObject:completion]; -#pragma clang diagnostic pop -} - -- (BOOL)adjTrackingEnabled { -#if ADJUST_NO_IDFA - return NO; -#else - -// return [[ASIdentifierManager sharedManager] isAdvertisingTrackingEnabled]; - Class adSupportClass = [self adSupportManager]; - if (adSupportClass == nil) { - return NO; - } - - NSString *keyManager = [NSString adjJoin:@"shared", @"manager", nil]; - SEL selManager = NSSelectorFromString(keyManager); - if (![adSupportClass respondsToSelector:selManager]) { - return NO; - } -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Warc-performSelector-leaks" - id manager = [adSupportClass performSelector:selManager]; - - NSString *keyEnabled = [NSString adjJoin:@"is", @"advertising", @"tracking", @"enabled", nil]; - SEL selEnabled = NSSelectorFromString(keyEnabled); - if (![manager respondsToSelector:selEnabled]) { - return NO; - } - BOOL enabled = (BOOL)[manager performSelector:selEnabled]; - return enabled; -#pragma clang diagnostic pop -#endif -} - -- (NSString *)adjIdForAdvertisers { -#if ADJUST_NO_IDFA - return @""; -#else - // return [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString]; - Class adSupportClass = [self adSupportManager]; - if (adSupportClass == nil) { - return @""; - } -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Warc-performSelector-leaks" - - NSString *keyManager = [NSString adjJoin:@"shared", @"manager", nil]; - SEL selManager = NSSelectorFromString(keyManager); - if (![adSupportClass respondsToSelector:selManager]) { - return @""; - } - id manager = [adSupportClass performSelector:selManager]; - - NSString *keyIdentifier = [NSString adjJoin:@"advertising", @"identifier", nil]; - SEL selIdentifier = NSSelectorFromString(keyIdentifier); - if (![manager respondsToSelector:selIdentifier]) { - return @""; - } - id identifier = [manager performSelector:selIdentifier]; - - NSString *keyString = [NSString adjJoin:@"UUID", @"string", nil]; - SEL selString = NSSelectorFromString(keyString); - if (![identifier respondsToSelector:selString]) { - return @""; - } - NSString *string = [identifier performSelector:selString]; - return string; - -#pragma clang diagnostic pop -#endif -} - -- (NSString *)adjFbAnonymousId { -#if TARGET_OS_TV - return @""; -#else - // pre FB SDK v6.0.0 - // return [FBSDKAppEventsUtility retrievePersistedAnonymousID]; - // post FB SDK v6.0.0 - // return [FBSDKBasicUtility retrievePersistedAnonymousID]; - Class class = nil; - SEL selGetId = NSSelectorFromString(@"retrievePersistedAnonymousID"); - class = NSClassFromString(@"FBSDKBasicUtility"); - if (class != nil) { - if ([class respondsToSelector:selGetId]) { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Warc-performSelector-leaks" - NSString *fbAnonymousId = (NSString *)[class performSelector:selGetId]; - return fbAnonymousId; -#pragma clang diagnostic pop - } - } - class = NSClassFromString(@"FBSDKAppEventsUtility"); - if (class != nil) { - if ([class respondsToSelector:selGetId]) { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Warc-performSelector-leaks" - NSString *fbAnonymousId = (NSString *)[class performSelector:selGetId]; - return fbAnonymousId; -#pragma clang diagnostic pop - } - } - return @""; -#endif -} - -- (NSString *)adjDeviceType { - NSString *type = [self.model stringByReplacingOccurrencesOfString:@" " withString:@""]; - return type; -} - -- (NSString *)adjDeviceName { - size_t size; - sysctlbyname("hw.machine", NULL, &size, NULL, 0); - char *name = calloc(1, size); - sysctlbyname("hw.machine", name, &size, NULL, 0); - NSString *machine = [NSString stringWithUTF8String:name]; - free(name); - return machine; -} - -- (NSString *)adjCreateUuid { - CFUUIDRef newUniqueId = CFUUIDCreate(kCFAllocatorDefault); - CFStringRef stringRef = CFUUIDCreateString(kCFAllocatorDefault, newUniqueId); - NSString *uuidString = (__bridge_transfer NSString*)stringRef; - NSString *lowerUuid = [uuidString lowercaseString]; - CFRelease(newUniqueId); - return lowerUuid; -} - -- (NSString *)adjVendorId { - if ([UIDevice.currentDevice respondsToSelector:@selector(identifierForVendor)]) { - return [UIDevice.currentDevice.identifierForVendor UUIDString]; - } - return @""; -} - -- (void)adjCheckForiAd:(ADJActivityHandler *)activityHandler queue:(dispatch_queue_t)queue { - // if no tries for iad v3 left, stop trying - id logger = [ADJAdjustFactory logger]; - -#if ADJUST_NO_IAD || TARGET_OS_TV - [logger debug:@"ADJUST_NO_IAD or TARGET_OS_TV set"]; - return; -#else - [logger debug:@"ADJUST_NO_IAD or TARGET_OS_TV not set"]; - - // [[ADClient sharedClient] ...] - Class ADClientClass = NSClassFromString(@"ADClient"); - if (ADClientClass == nil) { - [logger warn:@"iAd framework not found in user's app (ADClientClass not found)"]; - return; - } -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Warc-performSelector-leaks" - SEL sharedClientSelector = NSSelectorFromString(@"sharedClient"); - if (![ADClientClass respondsToSelector:sharedClientSelector]) { - [logger warn:@"iAd framework not found in user's app (sharedClient method not found)"]; - return; - } - id ADClientSharedClientInstance = [ADClientClass performSelector:sharedClientSelector]; - if (ADClientSharedClientInstance == nil) { - [logger warn:@"iAd framework not found in user's app (ADClientSharedClientInstance is nil)"]; - return; - } - - [logger debug:@"iAd framework successfully found in user's app"]; - - BOOL iAdInformationAvailable = [self setiAdWithDetails:activityHandler - adcClientSharedInstance:ADClientSharedClientInstance - queue:queue]; - - if (!iAdInformationAvailable) { - [logger warn:@"iAd information not available"]; - return; - } -#pragma clang diagnostic pop -#endif -} - -- (NSString *)adjFetchAdServicesAttribution:(NSError **)errorPtr { - id logger = [ADJAdjustFactory logger]; - - // [AAAttribution attributionTokenWithError:...] - Class attributionClass = NSClassFromString(@"AAAttribution"); - if (attributionClass == nil) { - [logger warn:@"AdServices framework not found in user's app (AAAttribution not found)"]; - - if (errorPtr) { - *errorPtr = [NSError errorWithDomain:@"com.adjust.sdk.adServices" - code:100 - userInfo:@{@"Error reason": @"AdServices framework not found"}]; - } - return nil; - } - - SEL attributionTokenSelector = NSSelectorFromString(@"attributionTokenWithError:"); - if (![attributionClass respondsToSelector:attributionTokenSelector]) { - if (errorPtr) { - *errorPtr = [NSError errorWithDomain:@"com.adjust.sdk.adServices" - code:100 - userInfo:@{@"Error reason": @"AdServices framework not found"}]; - } - return nil; - } - - NSMethodSignature *attributionTokenMethodSignature = [attributionClass methodSignatureForSelector:attributionTokenSelector]; - NSInvocation *tokenInvocation = [NSInvocation invocationWithMethodSignature:attributionTokenMethodSignature]; - [tokenInvocation setSelector:attributionTokenSelector]; - [tokenInvocation setTarget:attributionClass]; - - __autoreleasing NSError *error; - __autoreleasing NSError **errorPointer = &error; - [tokenInvocation setArgument:&errorPointer atIndex:2]; - [tokenInvocation invoke]; - - if (error) { - [logger error:@"Error while retrieving AdServices attribution token: %@", error]; - if (errorPtr) { - *errorPtr = error; - } - return nil; - } - - NSString * __unsafe_unretained tmpToken = nil; - [tokenInvocation getReturnValue:&tmpToken]; - - NSString *token = tmpToken; - return token; -} - -- (BOOL)setiAdWithDetails:(ADJActivityHandler *)activityHandler - adcClientSharedInstance:(id)ADClientSharedClientInstance - queue:(dispatch_queue_t)queue { - SEL iAdDetailsSelector = NSSelectorFromString(@"requestAttributionDetailsWithBlock:"); - if (![ADClientSharedClientInstance respondsToSelector:iAdDetailsSelector]) { - return NO; - } - - __block Class lock = [ADJActivityHandler class]; - __block BOOL completed = NO; - -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Warc-performSelector-leaks" - [ADClientSharedClientInstance performSelector:iAdDetailsSelector - withObject:^(NSDictionary *attributionDetails, NSError *error) { - - @synchronized (lock) { - if (completed) { - return; - } else { - completed = YES; - } - } - - [activityHandler setAttributionDetails:attributionDetails - error:error]; - }]; -#pragma clang diagnostic pop - - // 5 seconds of timeout - dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(5.0 * NSEC_PER_SEC)), queue, ^{ - @synchronized (lock) { - if (completed) { - return; - } else { - completed = YES; - } - } - - [activityHandler setAttributionDetails:nil - error:[NSError errorWithDomain:@"com.adjust.sdk.iAd" - code:100 - userInfo:@{@"Error reason": @"iAd request timed out"}]]; - }); - - return YES; -} - -@end diff --git a/Adjust/ADJAttributionHandler.m b/Adjust/ADJAttributionHandler.m index af8d4bcb2..a99f84ada 100644 --- a/Adjust/ADJAttributionHandler.m +++ b/Adjust/ADJAttributionHandler.m @@ -239,7 +239,7 @@ - (ADJActivityPackage *)buildAndGetAttributionPackageI:(ADJAttributionHandler*)s double now = [NSDate.date timeIntervalSince1970]; ADJPackageBuilder *attributionBuilder = [[ADJPackageBuilder alloc] - initWithDeviceInfo:selfI.activityHandler.deviceInfo + initWithPackageParams:selfI.activityHandler.packageParams activityState:selfI.activityHandler.activityState config:selfI.activityHandler.adjustConfig sessionParameters:selfI.activityHandler.sessionParameters diff --git a/Adjust/ADJConfig.h b/Adjust/ADJConfig.h index b062cf987..bd7858c56 100644 --- a/Adjust/ADJConfig.h +++ b/Adjust/ADJConfig.h @@ -76,6 +76,13 @@ */ - (BOOL)adjustDeeplinkResponse:(nullable NSURL *)deeplink; +/** + * @brief Optional delegate method that gets called when Adjust SDK sets conversion value for the user. + * + * @param conversionValue Conversion value used by Adjust SDK to invoke updateConversionValue: API. + */ +- (void)adjustConversionValueUpdated:(nullable NSNumber *)conversionValue; + @end /** diff --git a/Adjust/ADJConfig.m b/Adjust/ADJConfig.m index 0e09ab80d..7928c1b52 100644 --- a/Adjust/ADJConfig.m +++ b/Adjust/ADJConfig.m @@ -129,6 +129,11 @@ - (void)setDelegate:(NSObject *)delegate { // does not enable hasDelegate flag implementsDeeplinkCallback = YES; } + + if ([delegate respondsToSelector:@selector(adjustConversionValueUpdated:)]) { + [self.logger debug:@"Delegate implements adjustConversionValueUpdated:"]; + hasResponseDelegate = YES; + } if (!(hasResponseDelegate || implementsDeeplinkCallback)) { [self.logger error:@"Delegate does not implement any optional method"]; diff --git a/Adjust/ADJDeviceInfo.h b/Adjust/ADJDeviceInfo.h deleted file mode 100644 index ed50ea3a2..000000000 --- a/Adjust/ADJDeviceInfo.h +++ /dev/null @@ -1,35 +0,0 @@ -// -// ADJDeviceInfo.h -// adjust -// -// Created by Pedro Filipe on 17/10/14. -// Copyright (c) 2014 adjust GmbH. All rights reserved. -// - -#import - -@interface ADJDeviceInfo : NSObject - -@property (nonatomic, copy) NSString *idForAdvertisers; -@property (nonatomic, copy) NSString *fbAnonymousId; -@property (nonatomic, assign) BOOL trackingEnabled; -@property (nonatomic, copy) NSString *vendorId; -@property (nonatomic, copy) NSString *clientSdk; -@property (nonatomic, copy) NSString *bundeIdentifier; -@property (nonatomic, copy) NSString *bundleVersion; -@property (nonatomic, copy) NSString *bundleShortVersion; -@property (nonatomic, copy) NSString *deviceType; -@property (nonatomic, copy) NSString *deviceName; -@property (nonatomic, copy) NSString *osName; -@property (nonatomic, copy) NSString *systemVersion; -@property (nonatomic, copy) NSString *languageCode; -@property (nonatomic, copy) NSString *countryCode; -@property (nonatomic, copy) NSString *machineModel; -@property (nonatomic, copy) NSString *cpuSubtype; -@property (nonatomic, copy) NSString *installReceiptBase64; -@property (nonatomic, copy) NSString *osBuild; - -- (id)initWithSdkPrefix:(NSString *)sdkPrefix; -+ (ADJDeviceInfo *)deviceInfoWithSdkPrefix:(NSString *)sdkPrefix; - -@end diff --git a/Adjust/ADJDeviceInfo.m b/Adjust/ADJDeviceInfo.m deleted file mode 100644 index 3a283a6ea..000000000 --- a/Adjust/ADJDeviceInfo.m +++ /dev/null @@ -1,108 +0,0 @@ -// -// ADJDeviceInfo.m -// adjust -// -// Created by Pedro Filipe on 17/10/14. -// Copyright (c) 2014 adjust GmbH. All rights reserved. -// - -#import "ADJDeviceInfo.h" -#import "UIDevice+ADJAdditions.h" -#import "NSString+ADJAdditions.h" -#import "ADJUtil.h" -#import "ADJSystemProfile.h" -#import "NSData+ADJAdditions.h" -#import "ADJReachability.h" - -#if !TARGET_OS_TV && !TARGET_OS_MACCATALYST -#import -#import -#endif - -@implementation ADJDeviceInfo - -+ (ADJDeviceInfo *) deviceInfoWithSdkPrefix:(NSString *)sdkPrefix { - return [[ADJDeviceInfo alloc] initWithSdkPrefix:sdkPrefix]; -} - -- (id)initWithSdkPrefix:(NSString *)sdkPrefix { - self = [super init]; - if (self == nil) return nil; - - UIDevice *device = UIDevice.currentDevice; - NSLocale *locale = NSLocale.currentLocale; - NSBundle *bundle = NSBundle.mainBundle; - NSDictionary *infoDictionary = bundle.infoDictionary; - - self.trackingEnabled = UIDevice.currentDevice.adjTrackingEnabled; - self.idForAdvertisers = UIDevice.currentDevice.adjIdForAdvertisers; - self.fbAnonymousId = UIDevice.currentDevice.adjFbAnonymousId; - self.vendorId = UIDevice.currentDevice.adjVendorId; - self.bundeIdentifier = [infoDictionary objectForKey:(NSString *)kCFBundleIdentifierKey]; - self.bundleVersion = [infoDictionary objectForKey:(NSString *)kCFBundleVersionKey]; - self.bundleShortVersion = [bundle objectForInfoDictionaryKey:@"CFBundleShortVersionString"]; - self.languageCode = [locale objectForKey:NSLocaleLanguageCode]; - self.countryCode = [locale objectForKey:NSLocaleCountryCode]; - self.osName = @"ios"; - self.deviceType = device.adjDeviceType; - self.deviceName = device.adjDeviceName; - self.systemVersion = device.systemVersion; - self.machineModel = [ADJSystemProfile machineModel]; - self.cpuSubtype = [ADJSystemProfile cpuSubtype]; - self.osBuild = [ADJSystemProfile osVersion]; - - if (sdkPrefix == nil) { - self.clientSdk = ADJUtil.clientSdk; - } else { - self.clientSdk = [NSString stringWithFormat:@"%@@%@", sdkPrefix, ADJUtil.clientSdk]; - } - - [self injectInstallReceipt:bundle]; - - return self; -} - -- (void)injectInstallReceipt:(NSBundle *)bundle{ - @try { - if (![bundle respondsToSelector:@selector(appStoreReceiptURL)]) { - return; - } - NSURL * installReceiptLocation = [bundle appStoreReceiptURL]; - if (installReceiptLocation == nil) return; - - NSData * installReceiptData = [NSData dataWithContentsOfURL:installReceiptLocation]; - if (installReceiptData == nil) return; - - self.installReceiptBase64 = [installReceiptData adjEncodeBase64]; - } @catch (NSException *exception) { - } -} - -/* --(id)copyWithZone:(NSZone *)zone -{ - ADJDeviceInfo* copy = [[[self class] allocWithZone:zone] init]; - if (copy) { - copy.idForAdvertisers = [self.idForAdvertisers copyWithZone:zone]; - copy.fbAttributionId = [self.fbAttributionId copyWithZone:zone]; - copy.trackingEnabled = self.trackingEnabled; - copy.vendorId = [self.vendorId copyWithZone:zone]; - copy.clientSdk = [self.clientSdk copyWithZone:zone]; - copy.bundeIdentifier = [self.bundeIdentifier copyWithZone:zone]; - copy.bundleVersion = [self.bundleVersion copyWithZone:zone]; - copy.bundleShortVersion = [self.bundleShortVersion copyWithZone:zone]; - copy.deviceType = [self.deviceType copyWithZone:zone]; - copy.deviceName = [self.deviceName copyWithZone:zone]; - copy.osName = [self.osName copyWithZone:zone]; - copy.systemVersion = [self.systemVersion copyWithZone:zone]; - copy.languageCode = [self.languageCode copyWithZone:zone]; - copy.countryCode = [self.countryCode copyWithZone:zone]; - copy.machineModel = [self.machineModel copyWithZone:zone]; - copy.cpuSubtype = [self.cpuSubtype copyWithZone:zone]; - } - - return copy; -} -*/ - -@end diff --git a/Adjust/ADJLinkResolution.h b/Adjust/ADJLinkResolution.h new file mode 100644 index 000000000..469b25815 --- /dev/null +++ b/Adjust/ADJLinkResolution.h @@ -0,0 +1,17 @@ +// +// ADJLinkResolution.h +// Adjust +// +// Created by Pedro S. on 26.04.21. +// Copyright © 2021 adjust GmbH. All rights reserved. +// + +#import + +@interface ADJLinkResolution : NSObject + ++ (void)resolveLinkWithUrl:(nonnull NSURL *)url + resolveUrlSuffixArray:(nullable NSArray *)resolveUrlSuffixArray + callback:(nonnull void (^)(NSURL *_Nullable resolvedLink))callback; + +@end diff --git a/Adjust/ADJLinkResolution.m b/Adjust/ADJLinkResolution.m new file mode 100644 index 000000000..8ab44124e --- /dev/null +++ b/Adjust/ADJLinkResolution.m @@ -0,0 +1,206 @@ +// +// ADJLinkResolution.m +// Adjust +// +// Created by Pedro S. on 26.04.21. +// Copyright © 2021 adjust GmbH. All rights reserved. +// + +#import "ADJLinkResolution.h" + +static NSUInteger kMaxRecursions = 3; + +@interface ADJLinkResolutionDelegate : NSObject + ++ (nonnull ADJLinkResolutionDelegate *)sharedInstance; + ++ (nullable NSURL *)convertUrlToHttps:(nullable NSURL *)url; + +@end + +@implementation ADJLinkResolutionDelegate + +- (nonnull instancetype)init { + self = [super init]; + + return self; +} + ++ (nonnull ADJLinkResolutionDelegate *)sharedInstance { + static ADJLinkResolutionDelegate *sharedInstance = nil; + static dispatch_once_t onceToken; // onceToken = 0 + dispatch_once(&onceToken, ^{ + sharedInstance = [[self alloc] init]; + }); + return sharedInstance; +} + +- (void)URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task + willPerformHTTPRedirection:(NSHTTPURLResponse *)response + newRequest:(NSURLRequest *)request + completionHandler:(void (^)(NSURLRequest * _Nullable))completionHandler +{ + NSURL *_Nullable convertedUrl = [ADJLinkResolutionDelegate convertUrlToHttps:request.URL]; + + if (request.URL != nil && convertedUrl != nil && ! [request.URL isEqual:convertedUrl]) { + completionHandler([ADJLinkResolutionDelegate replaceUrlWithRequest:request + urlToReplace:convertedUrl]); + } else { + completionHandler(request); + } +} + ++ (nullable NSURL *)convertUrlToHttps:(nullable NSURL *)url { + if (url == nil) { + return nil; + } + + if (! [url.absoluteString hasPrefix:@"http:"]) { + return url; + } + + NSString *_Nonnull urlStringWithoutPrefix = [url.absoluteString substringFromIndex:5]; + + return [NSURL URLWithString: + [NSString stringWithFormat:@"https:%@", urlStringWithoutPrefix]]; +} + ++ (NSURLRequest *)replaceUrlWithRequest:(NSURLRequest *)request + urlToReplace:(nonnull NSURL *)urlToReplace +{ + NSMutableURLRequest *mutableRequest = [request mutableCopy]; + + [mutableRequest setURL:urlToReplace]; + + return [mutableRequest copy]; +} + +@end + +@implementation ADJLinkResolution + ++ (void)resolveLinkWithUrl:(nonnull NSURL *)url + resolveUrlSuffixArray:(nullable NSArray *)resolveUrlSuffixArray + callback:(nonnull void (^)(NSURL *_Nullable resolvedLink))callback +{ + if (callback == nil) { + return; + } + + if (url == nil) { + callback(nil); + return; + } + + if (! [ADJLinkResolution urlMatchesSuffixWithHost:url.host + suffixArray:resolveUrlSuffixArray]) + { + callback(url); + return; + } + + ADJLinkResolutionDelegate *_Nonnull linkResolutionDelegate = + [ADJLinkResolutionDelegate sharedInstance]; + + NSURLSession *_Nonnull session = + [NSURLSession + sessionWithConfiguration:NSURLSessionConfiguration.defaultSessionConfiguration + delegate:linkResolutionDelegate + delegateQueue:nil]; + + NSURL *_Nullable httpsUrl = [ADJLinkResolutionDelegate convertUrlToHttps:url]; + + NSURLSessionDataTask *task = + [session + dataTaskWithURL:httpsUrl + completionHandler: + ^(NSData * _Nullable data, + NSURLResponse * _Nullable response, + NSError * _Nullable error) + { + // bootstrap the recursion of resolving the link + [ADJLinkResolution + resolveLinkWithResponseUrl:response != nil ? response.URL : nil + previousUrl:httpsUrl + recursionNumber:0 + session:session + callback:callback]; + }]; + [task resume]; +} + ++ (void)resolveLinkWithResponseUrl:(nullable NSURL *)responseUrl + previousUrl:(nullable NSURL *)previousUrl + recursionNumber:(NSUInteger)recursionNumber + session:(nonnull NSURLSession *)session + callback:(nonnull void (^)(NSURL *_Nullable resolvedLink))callback +{ + // return (possible nil) previous url when the current one does not exist + if (responseUrl == nil) { + callback(previousUrl); + return; + } + + // return found url with expected host + if ([ADJLinkResolution isTerminalUrlWithHost:responseUrl.host]) { + callback(responseUrl); + return; + } + + // return previous (non-nil) url when it reached the max number of recursive tries + if (recursionNumber >= kMaxRecursions) { + callback(responseUrl); + return; + } + + // when found a non expected url host, use it to recursively resolve the link + NSURLSessionDataTask *task = + [session + dataTaskWithURL:responseUrl + completionHandler: + ^(NSData * _Nullable data, + NSURLResponse * _Nullable response, + NSError * _Nullable error) + { + [ADJLinkResolution resolveLinkWithResponseUrl:response != nil ? response.URL : nil + previousUrl:responseUrl + recursionNumber:(recursionNumber + 1) + session:session + callback:callback]; + }]; + [task resume]; +} + ++ (BOOL)isTerminalUrlWithHost:(nullable NSString *)urlHost { + if (urlHost == nil) { + return NO; + } + + NSArray *_Nonnull terminalUrlHostSuffixArray = + @[@"adjust.com", @"adj.st", @"go.link"]; + + return [ADJLinkResolution urlMatchesSuffixWithHost:urlHost + suffixArray:terminalUrlHostSuffixArray]; +} + ++ (BOOL)urlMatchesSuffixWithHost:(nullable NSString *)urlHost + suffixArray:(nullable NSArray *)suffixArray +{ + if (urlHost == nil) { + return NO; + } + + if (suffixArray == nil) { + return NO; + } + + for (NSString *_Nonnull expectedHostSuffix in suffixArray) { + if ([urlHost hasSuffix:expectedHostSuffix]) { + return YES; + } + } + + return NO; +} + +@end diff --git a/Adjust/ADJPackageBuilder.h b/Adjust/ADJPackageBuilder.h index f5c6d23b9..d69d876ff 100644 --- a/Adjust/ADJPackageBuilder.h +++ b/Adjust/ADJPackageBuilder.h @@ -8,7 +8,7 @@ #import "ADJEvent.h" #import "ADJConfig.h" -#import "ADJDeviceInfo.h" +#import "ADJPackageParams.h" #import "ADJActivityState.h" #import "ADJActivityPackage.h" #import "ADJSessionParameters.h" @@ -30,12 +30,12 @@ @property (nonatomic, copy) ADJAttribution * _Nullable attribution; -- (id _Nullable)initWithDeviceInfo:(ADJDeviceInfo * _Nullable)deviceInfo - activityState:(ADJActivityState * _Nullable)activityState - config:(ADJConfig * _Nullable)adjustConfig - sessionParameters:(ADJSessionParameters * _Nullable)sessionParameters - trackingStatusManager:(ADJTrackingStatusManager * _Nullable)trackingStatusManager - createdAt:(double)createdAt; +- (id _Nullable)initWithPackageParams:(ADJPackageParams * _Nullable)packageParams + activityState:(ADJActivityState * _Nullable)activityState + config:(ADJConfig * _Nullable)adjustConfig + sessionParameters:(ADJSessionParameters * _Nullable)sessionParameters + trackingStatusManager:(ADJTrackingStatusManager * _Nullable)trackingStatusManager + createdAt:(double)createdAt; - (ADJActivityPackage * _Nullable)buildSessionPackage:(BOOL)isInDelay; @@ -44,13 +44,14 @@ - (ADJActivityPackage * _Nullable)buildInfoPackage:(NSString * _Nullable)infoSource; -- (ADJActivityPackage * _Nullable)buildAdRevenuePackage:(NSString * _Nullable)source payload:(NSData * _Nullable)payload; +- (ADJActivityPackage * _Nullable)buildAdRevenuePackage:(NSString * _Nullable)source + payload:(NSData * _Nullable)payload; - (ADJActivityPackage * _Nullable)buildClickPackage:(NSString * _Nullable)clickSource; - (ADJActivityPackage * _Nullable)buildClickPackage:(NSString * _Nullable)clickSource - token:(NSString * _Nullable)token - errorCodeNumber:(NSNumber * _Nullable)errorCodeNumber; + token:(NSString * _Nullable)token + errorCodeNumber:(NSNumber * _Nullable)errorCodeNumber; - (ADJActivityPackage * _Nullable)buildAttributionPackage:(NSString * _Nullable)initiatedBy; @@ -65,6 +66,9 @@ - (ADJActivityPackage * _Nullable)buildSubscriptionPackage:( ADJSubscription * _Nullable)subscription isInDelay:(BOOL)isInDelay; +- (ADJActivityPackage * _Nullable)buildAdRevenuePackage:(ADJAdRevenue * _Nullable)adRevenue + isInDelay:(BOOL)isInDelay; + + (void)parameters:(NSMutableDictionary * _Nullable)parameters setDictionary:(NSDictionary * _Nullable)dictionary forKey:(NSString * _Nullable)key; diff --git a/Adjust/ADJPackageBuilder.m b/Adjust/ADJPackageBuilder.m index ed4955a5c..07475c253 100644 --- a/Adjust/ADJPackageBuilder.m +++ b/Adjust/ADJPackageBuilder.m @@ -12,7 +12,6 @@ #import "ADJPackageBuilder.h" #import "ADJActivityPackage.h" #import "NSData+ADJAdditions.h" -#import "UIDevice+ADJAdditions.h" #import "ADJUserDefaults.h" NSString * const ADJAttributionTokenParameter = @"attribution_token"; @@ -23,7 +22,7 @@ @interface ADJPackageBuilder() @property (nonatomic, weak) ADJConfig *adjustConfig; -@property (nonatomic, weak) ADJDeviceInfo *deviceInfo; +@property (nonatomic, weak) ADJPackageParams *packageParams; @property (nonatomic, copy) ADJActivityState *activityState; @@ -37,12 +36,12 @@ @implementation ADJPackageBuilder #pragma mark - Object lifecycle methods -- (id)initWithDeviceInfo:(ADJDeviceInfo *)deviceInfo - activityState:(ADJActivityState *)activityState - config:(ADJConfig *)adjustConfig - sessionParameters:(ADJSessionParameters *)sessionParameters - trackingStatusManager:(ADJTrackingStatusManager *)trackingStatusManager - createdAt:(double)createdAt +- (id)initWithPackageParams:(ADJPackageParams * _Nullable)packageParams + activityState:(ADJActivityState * _Nullable)activityState + config:(ADJConfig * _Nullable)adjustConfig + sessionParameters:(ADJSessionParameters * _Nullable)sessionParameters + trackingStatusManager:(ADJTrackingStatusManager * _Nullable)trackingStatusManager + createdAt:(double)createdAt { self = [super init]; if (self == nil) { @@ -50,7 +49,7 @@ - (id)initWithDeviceInfo:(ADJDeviceInfo *)deviceInfo } self.createdAt = createdAt; - self.deviceInfo = deviceInfo; + self.packageParams = packageParams; self.adjustConfig = adjustConfig; self.activityState = activityState; self.sessionParameters = sessionParameters; @@ -121,6 +120,19 @@ - (ADJActivityPackage *)buildAdRevenuePackage:(NSString *)source payload:(NSData return adRevenuePackage; } +- (ADJActivityPackage *)buildAdRevenuePackage:(ADJAdRevenue *)adRevenue isInDelay:(BOOL)isInDelay { + NSMutableDictionary *parameters = [self getAdRevenueParameters:adRevenue isInDelay:isInDelay]; + ADJActivityPackage *adRevenuePackage = [self defaultActivityPackage]; + adRevenuePackage.path = @"/ad_revenue"; + adRevenuePackage.activityKind = ADJActivityKindAdRevenue; + adRevenuePackage.suffix = @""; + adRevenuePackage.parameters = parameters; + + [self signWithSigV2Plugin:adRevenuePackage]; + + return adRevenuePackage; +} + - (ADJActivityPackage *)buildClickPackage:(NSString *)clickSource { return [self buildClickPackage:clickSource extraParameters:nil]; } @@ -340,35 +352,28 @@ - (NSMutableDictionary *)getSessionParameters:(BOOL)isInDelay { [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appSecret forKey:@"app_secret"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appToken forKey:@"app_token"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil getUpdateTime] forKey:@"app_updated_at"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleVersion forKey:@"app_version"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleShortVersion forKey:@"app_version_short"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.buildNumber forKey:@"app_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.versionNumber forKey:@"app_version_short"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"attribution_deeplink"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundeIdentifier forKey:@"bundle_id"]; - [ADJPackageBuilder parameters:parameters setNumberInt:[ADJUtil readReachabilityFlags] forKey:@"connectivity_type"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.countryCode forKey:@"country"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.cpuSubtype forKey:@"cpu_type"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.bundleIdentifier forKey:@"bundle_id"]; [ADJPackageBuilder parameters:parameters setDate1970:self.createdAt forKey:@"created_at"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.defaultTracker forKey:@"default_tracker"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceName forKey:@"device_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceType forKey:@"device_type"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceName forKey:@"device_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceType forKey:@"device_type"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.environment forKey:@"environment"]; [ADJPackageBuilder parameters:parameters setBool:self.adjustConfig.eventBufferingEnabled forKey:@"event_buffering_enabled"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.externalDeviceId forKey:@"external_device_id"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.fbAnonymousId forKey:@"fb_anon_id"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.machineModel forKey:@"hardware_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.fbAnonymousId forKey:@"fb_anon_id"]; if (self.adjustConfig.allowIdfaReading == YES) { - [ADJPackageBuilder parameters:parameters setString:UIDevice.currentDevice.adjIdForAdvertisers forKey:@"idfa"]; + [ADJPackageBuilder parameters:parameters setString:[ADJUtil idfa] forKey:@"idfa"]; } - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.vendorId forKey:@"idfv"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.installReceiptBase64 forKey:@"install_receipt"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil getInstallTime] forKey:@"installed_at"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.languageCode forKey:@"language"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.idfv forKey:@"idfv"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.installedAt forKey:@"installed_at"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"needs_response_details"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osBuild forKey:@"os_build"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osName forKey:@"os_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.systemVersion forKey:@"os_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osName forKey:@"os_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osVersion forKey:@"os_version"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.secretId forKey:@"secret_id"]; + [ADJPackageBuilder parameters:parameters setDate1970:(double)self.packageParams.startedAt forKey:@"started_at"]; if ([self.trackingStatusManager canGetAttStatus]) { [ADJPackageBuilder parameters:parameters setInt:self.trackingStatusManager.attStatus @@ -392,7 +397,7 @@ - (NSMutableDictionary *)getSessionParameters:(BOOL)isInDelay { [ADJPackageBuilder parameters:parameters setDuration:self.activityState.sessionLength forKey:@"session_length"]; [ADJPackageBuilder parameters:parameters setInt:self.activityState.subsessionCount forKey:@"subsession_count"]; [ADJPackageBuilder parameters:parameters setDuration:self.activityState.timeSpent forKey:@"time_spent"]; - [ADJPackageBuilder parameters:parameters setString:self.activityState.uuid forKey:@"ios_uuid"]; + [ADJPackageBuilder parameters:parameters setString:self.activityState.dedupeToken forKey:@"secondary_dedupe_token"]; } if (!isInDelay) { @@ -400,12 +405,6 @@ - (NSMutableDictionary *)getSessionParameters:(BOOL)isInDelay { [ADJPackageBuilder parameters:parameters setDictionary:[self.sessionParameters.partnerParameters copy] forKey:@"partner_params"]; } -#if !TARGET_OS_TV && !TARGET_OS_MACCATALYST - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readMCC] forKey:@"mcc"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readMNC] forKey:@"mnc"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readCurrentRadioAccessTechnology] forKey:@"network_type"]; -#endif - return parameters; } @@ -414,37 +413,31 @@ - (NSMutableDictionary *)getEventParameters:(BOOL)isInDelay forEventPackage:(ADJ [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appSecret forKey:@"app_secret"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appToken forKey:@"app_token"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleVersion forKey:@"app_version"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleShortVersion forKey:@"app_version_short"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.buildNumber forKey:@"app_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.versionNumber forKey:@"app_version_short"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"attribution_deeplink"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundeIdentifier forKey:@"bundle_id"]; - [ADJPackageBuilder parameters:parameters setNumberInt:[ADJUtil readReachabilityFlags] forKey:@"connectivity_type"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.countryCode forKey:@"country"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.cpuSubtype forKey:@"cpu_type"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.bundleIdentifier forKey:@"bundle_id"]; [ADJPackageBuilder parameters:parameters setDate1970:self.createdAt forKey:@"created_at"]; [ADJPackageBuilder parameters:parameters setString:event.currency forKey:@"currency"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceName forKey:@"device_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceType forKey:@"device_type"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceName forKey:@"device_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceType forKey:@"device_type"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.environment forKey:@"environment"]; [ADJPackageBuilder parameters:parameters setBool:self.adjustConfig.eventBufferingEnabled forKey:@"event_buffering_enabled"]; [ADJPackageBuilder parameters:parameters setString:event.callbackId forKey:@"event_callback_id"]; [ADJPackageBuilder parameters:parameters setString:event.eventToken forKey:@"event_token"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.externalDeviceId forKey:@"external_device_id"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.fbAnonymousId forKey:@"fb_anon_id"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.machineModel forKey:@"hardware_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.fbAnonymousId forKey:@"fb_anon_id"]; if (self.adjustConfig.allowIdfaReading == YES) { - [ADJPackageBuilder parameters:parameters setString:UIDevice.currentDevice.adjIdForAdvertisers forKey:@"idfa"]; + [ADJPackageBuilder parameters:parameters setString:[ADJUtil idfa] forKey:@"idfa"]; } - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.vendorId forKey:@"idfv"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.installReceiptBase64 forKey:@"install_receipt"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil getInstallTime] forKey:@"installed_at"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.languageCode forKey:@"language"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.idfv forKey:@"idfv"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.installedAt forKey:@"installed_at"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"needs_response_details"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osBuild forKey:@"os_build"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osName forKey:@"os_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.systemVersion forKey:@"os_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osName forKey:@"os_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osVersion forKey:@"os_version"]; [ADJPackageBuilder parameters:parameters setNumber:event.revenue forKey:@"revenue"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.secretId forKey:@"secret_id"]; + [ADJPackageBuilder parameters:parameters setDate1970:(double)self.packageParams.startedAt forKey:@"started_at"]; if ([self.trackingStatusManager canGetAttStatus]) { [ADJPackageBuilder parameters:parameters setInt:self.trackingStatusManager.attStatus @@ -468,7 +461,7 @@ - (NSMutableDictionary *)getEventParameters:(BOOL)isInDelay forEventPackage:(ADJ [ADJPackageBuilder parameters:parameters setDuration:self.activityState.sessionLength forKey:@"session_length"]; [ADJPackageBuilder parameters:parameters setInt:self.activityState.subsessionCount forKey:@"subsession_count"]; [ADJPackageBuilder parameters:parameters setDuration:self.activityState.timeSpent forKey:@"time_spent"]; - [ADJPackageBuilder parameters:parameters setString:self.activityState.uuid forKey:@"ios_uuid"]; + [ADJPackageBuilder parameters:parameters setString:self.activityState.dedupeToken forKey:@"secondary_dedupe_token"]; } if (!isInDelay) { @@ -493,12 +486,6 @@ - (NSMutableDictionary *)getEventParameters:(BOOL)isInDelay forEventPackage:(ADJ [ADJPackageBuilder parameters:parameters setString:event.transactionId forKey:@"transaction_id"]; } -#if !TARGET_OS_TV && !TARGET_OS_MACCATALYST - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readMCC] forKey:@"mcc"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readMNC] forKey:@"mnc"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readCurrentRadioAccessTechnology] forKey:@"network_type"]; -#endif - return parameters; } @@ -507,42 +494,35 @@ - (NSMutableDictionary *)getInfoParameters:(NSString *)source { [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appSecret forKey:@"app_secret"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appToken forKey:@"app_token"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil getUpdateTime] forKey:@"app_updated_at"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleVersion forKey:@"app_version"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleShortVersion forKey:@"app_version_short"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.buildNumber forKey:@"app_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.versionNumber forKey:@"app_version_short"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"attribution_deeplink"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundeIdentifier forKey:@"bundle_id"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.bundleIdentifier forKey:@"bundle_id"]; [ADJPackageBuilder parameters:parameters setDictionary:[self.sessionParameters.callbackParameters copy] forKey:@"callback_params"]; [ADJPackageBuilder parameters:parameters setDate:self.clickTime forKey:@"click_time"]; - [ADJPackageBuilder parameters:parameters setNumberInt:[ADJUtil readReachabilityFlags] forKey:@"connectivity_type"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.countryCode forKey:@"country"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.cpuSubtype forKey:@"cpu_type"]; [ADJPackageBuilder parameters:parameters setDate1970:self.createdAt forKey:@"created_at"]; [ADJPackageBuilder parameters:parameters setString:self.deeplink forKey:@"deeplink"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.defaultTracker forKey:@"default_tracker"]; [ADJPackageBuilder parameters:parameters setDictionary:self.attributionDetails forKey:@"details"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceName forKey:@"device_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceType forKey:@"device_type"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceName forKey:@"device_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceType forKey:@"device_type"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.environment forKey:@"environment"]; [ADJPackageBuilder parameters:parameters setBool:self.adjustConfig.eventBufferingEnabled forKey:@"event_buffering_enabled"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.externalDeviceId forKey:@"external_device_id"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.fbAnonymousId forKey:@"fb_anon_id"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.machineModel forKey:@"hardware_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.fbAnonymousId forKey:@"fb_anon_id"]; if (self.adjustConfig.allowIdfaReading == YES) { - [ADJPackageBuilder parameters:parameters setString:UIDevice.currentDevice.adjIdForAdvertisers forKey:@"idfa"]; + [ADJPackageBuilder parameters:parameters setString:[ADJUtil idfa] forKey:@"idfa"]; } - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.vendorId forKey:@"idfv"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.installReceiptBase64 forKey:@"install_receipt"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil getInstallTime] forKey:@"installed_at"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.languageCode forKey:@"language"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.idfv forKey:@"idfv"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.installedAt forKey:@"installed_at"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"needs_response_details"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osBuild forKey:@"os_build"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osName forKey:@"os_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.systemVersion forKey:@"os_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osName forKey:@"os_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osVersion forKey:@"os_version"]; [ADJPackageBuilder parameters:parameters setDictionary:self.deeplinkParameters forKey:@"params"]; [ADJPackageBuilder parameters:parameters setDictionary:[self.sessionParameters.partnerParameters copy] forKey:@"partner_params"]; [ADJPackageBuilder parameters:parameters setDate:self.purchaseTime forKey:@"purchase_time"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.secretId forKey:@"secret_id"]; + [ADJPackageBuilder parameters:parameters setDate1970:(double)self.packageParams.startedAt forKey:@"started_at"]; [ADJPackageBuilder parameters:parameters setString:source forKey:@"source"]; if ([self.trackingStatusManager canGetAttStatus]) { @@ -567,7 +547,7 @@ - (NSMutableDictionary *)getInfoParameters:(NSString *)source { [ADJPackageBuilder parameters:parameters setDuration:self.activityState.sessionLength forKey:@"session_length"]; [ADJPackageBuilder parameters:parameters setInt:self.activityState.subsessionCount forKey:@"subsession_count"]; [ADJPackageBuilder parameters:parameters setDuration:self.activityState.timeSpent forKey:@"time_spent"]; - [ADJPackageBuilder parameters:parameters setString:self.activityState.uuid forKey:@"ios_uuid"]; + [ADJPackageBuilder parameters:parameters setString:self.activityState.dedupeToken forKey:@"secondary_dedupe_token"]; } if (self.attribution != nil) { @@ -577,12 +557,6 @@ - (NSMutableDictionary *)getInfoParameters:(NSString *)source { [ADJPackageBuilder parameters:parameters setString:self.attribution.trackerName forKey:@"tracker"]; } -#if !TARGET_OS_TV && !TARGET_OS_MACCATALYST - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readMCC] forKey:@"mcc"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readMNC] forKey:@"mnc"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readCurrentRadioAccessTechnology] forKey:@"network_type"]; -#endif - return parameters; } @@ -591,34 +565,28 @@ - (NSMutableDictionary *)getAdRevenueParameters:(NSString *)source payload:(NSDa [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appSecret forKey:@"app_secret"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appToken forKey:@"app_token"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleVersion forKey:@"app_version"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleShortVersion forKey:@"app_version_short"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.buildNumber forKey:@"app_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.versionNumber forKey:@"app_version_short"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"attribution_deeplink"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundeIdentifier forKey:@"bundle_id"]; - [ADJPackageBuilder parameters:parameters setNumberInt:[ADJUtil readReachabilityFlags] forKey:@"connectivity_type"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.countryCode forKey:@"country"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.cpuSubtype forKey:@"cpu_type"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.bundleIdentifier forKey:@"bundle_id"]; [ADJPackageBuilder parameters:parameters setDate1970:self.createdAt forKey:@"created_at"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.defaultTracker forKey:@"default_tracker"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceName forKey:@"device_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceType forKey:@"device_type"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceName forKey:@"device_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceType forKey:@"device_type"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.environment forKey:@"environment"]; [ADJPackageBuilder parameters:parameters setBool:self.adjustConfig.eventBufferingEnabled forKey:@"event_buffering_enabled"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.externalDeviceId forKey:@"external_device_id"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.fbAnonymousId forKey:@"fb_anon_id"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.machineModel forKey:@"hardware_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.fbAnonymousId forKey:@"fb_anon_id"]; if (self.adjustConfig.allowIdfaReading == YES) { - [ADJPackageBuilder parameters:parameters setString:UIDevice.currentDevice.adjIdForAdvertisers forKey:@"idfa"]; + [ADJPackageBuilder parameters:parameters setString:[ADJUtil idfa] forKey:@"idfa"]; } - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.vendorId forKey:@"idfv"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.installReceiptBase64 forKey:@"install_receipt"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil getInstallTime] forKey:@"installed_at"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.languageCode forKey:@"language"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.idfv forKey:@"idfv"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.installedAt forKey:@"installed_at"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"needs_response_details"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osBuild forKey:@"os_build"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osName forKey:@"os_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.systemVersion forKey:@"os_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osName forKey:@"os_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osVersion forKey:@"os_version"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.secretId forKey:@"secret_id"]; + [ADJPackageBuilder parameters:parameters setDate1970:(double)self.packageParams.startedAt forKey:@"started_at"]; [ADJPackageBuilder parameters:parameters setString:source forKey:@"source"]; [ADJPackageBuilder parameters:parameters setData:payload forKey:@"payload"]; @@ -644,60 +612,122 @@ - (NSMutableDictionary *)getAdRevenueParameters:(NSString *)source payload:(NSDa [ADJPackageBuilder parameters:parameters setDuration:self.activityState.sessionLength forKey:@"session_length"]; [ADJPackageBuilder parameters:parameters setInt:self.activityState.subsessionCount forKey:@"subsession_count"]; [ADJPackageBuilder parameters:parameters setDuration:self.activityState.timeSpent forKey:@"time_spent"]; - [ADJPackageBuilder parameters:parameters setString:self.activityState.uuid forKey:@"ios_uuid"]; + [ADJPackageBuilder parameters:parameters setString:self.activityState.dedupeToken forKey:@"secondary_dedupe_token"]; } -#if !TARGET_OS_TV && !TARGET_OS_MACCATALYST - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readMCC] forKey:@"mcc"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readMNC] forKey:@"mnc"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readCurrentRadioAccessTechnology] forKey:@"network_type"]; -#endif - return parameters; } +- (NSMutableDictionary *)getAdRevenueParameters:(ADJAdRevenue *)adRevenue isInDelay:(BOOL)isInDelay { + NSMutableDictionary *parameters = [NSMutableDictionary dictionary]; + + [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appSecret forKey:@"app_secret"]; + [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appToken forKey:@"app_token"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.buildNumber forKey:@"app_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.versionNumber forKey:@"app_version_short"]; + [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"attribution_deeplink"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.bundleIdentifier forKey:@"bundle_id"]; + [ADJPackageBuilder parameters:parameters setDate1970:self.createdAt forKey:@"created_at"]; + [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.defaultTracker forKey:@"default_tracker"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceName forKey:@"device_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceType forKey:@"device_type"]; + [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.environment forKey:@"environment"]; + [ADJPackageBuilder parameters:parameters setBool:self.adjustConfig.eventBufferingEnabled forKey:@"event_buffering_enabled"]; + [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.externalDeviceId forKey:@"external_device_id"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.fbAnonymousId forKey:@"fb_anon_id"]; + if (self.adjustConfig.allowIdfaReading == YES) { + [ADJPackageBuilder parameters:parameters setString:[ADJUtil idfa] forKey:@"idfa"]; + } + [ADJPackageBuilder parameters:parameters setString:self.packageParams.idfv forKey:@"idfv"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.installedAt forKey:@"installed_at"]; + [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"needs_response_details"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osName forKey:@"os_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osVersion forKey:@"os_version"]; + [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.secretId forKey:@"secret_id"]; + [ADJPackageBuilder parameters:parameters setDate1970:(double)self.packageParams.startedAt forKey:@"started_at"]; + + [ADJPackageBuilder parameters:parameters setString:adRevenue.source forKey:@"source"]; + [ADJPackageBuilder parameters:parameters setNumber:adRevenue.revenue forKey:@"revenue"]; + [ADJPackageBuilder parameters:parameters setString:adRevenue.currency forKey:@"currency"]; + [ADJPackageBuilder parameters:parameters setNumberInt:adRevenue.adImpressionsCount forKey:@"ad_impressions_count"]; + [ADJPackageBuilder parameters:parameters setString:adRevenue.adRevenueNetwork forKey:@"ad_revenue_network"]; + [ADJPackageBuilder parameters:parameters setString:adRevenue.adRevenueUnit forKey:@"ad_revenue_unit"]; + [ADJPackageBuilder parameters:parameters setString:adRevenue.adRevenuePlacement forKey:@"ad_revenue_placement"]; + + if ([self.trackingStatusManager canGetAttStatus]) { + [ADJPackageBuilder parameters:parameters setInt:self.trackingStatusManager.attStatus + forKey:@"att_status"]; + } else { + [ADJPackageBuilder parameters:parameters setInt:self.trackingStatusManager.trackingEnabled + forKey:@"tracking_enabled"]; + } + + if (self.adjustConfig.isDeviceKnown) { + [ADJPackageBuilder parameters:parameters setBool:self.adjustConfig.isDeviceKnown forKey:@"device_known"]; + } + if (self.adjustConfig.needsCost) { + [ADJPackageBuilder parameters:parameters setBool:self.adjustConfig.needsCost forKey:@"needs_cost"]; + } + + if (!isInDelay) { + NSDictionary *mergedCallbackParameters = [ADJUtil mergeParameters:[self.sessionParameters.callbackParameters copy] + source:[adRevenue.callbackParameters copy] + parameterName:@"Callback"]; + NSDictionary *mergedPartnerParameters = [ADJUtil mergeParameters:[self.sessionParameters.partnerParameters copy] + source:[adRevenue.partnerParameters copy] + parameterName:@"Partner"]; + + [ADJPackageBuilder parameters:parameters setDictionary:mergedCallbackParameters forKey:@"callback_params"]; + [ADJPackageBuilder parameters:parameters setDictionary:mergedPartnerParameters forKey:@"partner_params"]; + } + + if (self.activityState != nil) { + [ADJPackageBuilder parameters:parameters setDuration:self.activityState.lastInterval forKey:@"last_interval"]; + [ADJPackageBuilder parameters:parameters setString:self.activityState.deviceToken forKey:@"push_token"]; + [ADJPackageBuilder parameters:parameters setInt:self.activityState.sessionCount forKey:@"session_count"]; + [ADJPackageBuilder parameters:parameters setDuration:self.activityState.sessionLength forKey:@"session_length"]; + [ADJPackageBuilder parameters:parameters setInt:self.activityState.subsessionCount forKey:@"subsession_count"]; + [ADJPackageBuilder parameters:parameters setDuration:self.activityState.timeSpent forKey:@"time_spent"]; + [ADJPackageBuilder parameters:parameters setString:self.activityState.dedupeToken forKey:@"secondary_dedupe_token"]; + } + + return parameters; +} - (NSMutableDictionary *)getClickParameters:(NSString *)source { NSMutableDictionary *parameters = [NSMutableDictionary dictionary]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appSecret forKey:@"app_secret"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appToken forKey:@"app_token"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil getUpdateTime] forKey:@"app_updated_at"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleVersion forKey:@"app_version"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleShortVersion forKey:@"app_version_short"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.buildNumber forKey:@"app_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.versionNumber forKey:@"app_version_short"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"attribution_deeplink"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundeIdentifier forKey:@"bundle_id"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.bundleIdentifier forKey:@"bundle_id"]; [ADJPackageBuilder parameters:parameters setDictionary:[self.sessionParameters.callbackParameters copy] forKey:@"callback_params"]; [ADJPackageBuilder parameters:parameters setDate:self.clickTime forKey:@"click_time"]; - [ADJPackageBuilder parameters:parameters setNumberInt:[ADJUtil readReachabilityFlags] forKey:@"connectivity_type"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.countryCode forKey:@"country"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.cpuSubtype forKey:@"cpu_type"]; [ADJPackageBuilder parameters:parameters setDate1970:self.createdAt forKey:@"created_at"]; [ADJPackageBuilder parameters:parameters setString:self.deeplink forKey:@"deeplink"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.defaultTracker forKey:@"default_tracker"]; [ADJPackageBuilder parameters:parameters setDictionary:self.attributionDetails forKey:@"details"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceName forKey:@"device_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceType forKey:@"device_type"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceName forKey:@"device_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceType forKey:@"device_type"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.environment forKey:@"environment"]; [ADJPackageBuilder parameters:parameters setBool:self.adjustConfig.eventBufferingEnabled forKey:@"event_buffering_enabled"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.externalDeviceId forKey:@"external_device_id"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.fbAnonymousId forKey:@"fb_anon_id"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.machineModel forKey:@"hardware_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.fbAnonymousId forKey:@"fb_anon_id"]; if (self.adjustConfig.allowIdfaReading == YES) { - [ADJPackageBuilder parameters:parameters setString:UIDevice.currentDevice.adjIdForAdvertisers forKey:@"idfa"]; + [ADJPackageBuilder parameters:parameters setString:[ADJUtil idfa] forKey:@"idfa"]; } - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.vendorId forKey:@"idfv"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.installReceiptBase64 forKey:@"install_receipt"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil getInstallTime] forKey:@"installed_at"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.languageCode forKey:@"language"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.idfv forKey:@"idfv"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.installedAt forKey:@"installed_at"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"needs_response_details"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osBuild forKey:@"os_build"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osName forKey:@"os_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.systemVersion forKey:@"os_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osName forKey:@"os_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osVersion forKey:@"os_version"]; [ADJPackageBuilder parameters:parameters setDictionary:self.deeplinkParameters forKey:@"params"]; [ADJPackageBuilder parameters:parameters setDictionary:[self.sessionParameters.partnerParameters copy] forKey:@"partner_params"]; [ADJPackageBuilder parameters:parameters setDate:self.purchaseTime forKey:@"purchase_time"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.secretId forKey:@"secret_id"]; + [ADJPackageBuilder parameters:parameters setDate1970:(double)self.packageParams.startedAt forKey:@"started_at"]; [ADJPackageBuilder parameters:parameters setString:source forKey:@"source"]; if ([self.trackingStatusManager canGetAttStatus]) { @@ -722,7 +752,7 @@ - (NSMutableDictionary *)getClickParameters:(NSString *)source { [ADJPackageBuilder parameters:parameters setDuration:self.activityState.sessionLength forKey:@"session_length"]; [ADJPackageBuilder parameters:parameters setInt:self.activityState.subsessionCount forKey:@"subsession_count"]; [ADJPackageBuilder parameters:parameters setDuration:self.activityState.timeSpent forKey:@"time_spent"]; - [ADJPackageBuilder parameters:parameters setString:self.activityState.uuid forKey:@"ios_uuid"]; + [ADJPackageBuilder parameters:parameters setString:self.activityState.dedupeToken forKey:@"secondary_dedupe_token"]; } if (self.attribution != nil) { @@ -732,12 +762,6 @@ - (NSMutableDictionary *)getClickParameters:(NSString *)source { [ADJPackageBuilder parameters:parameters setString:self.attribution.trackerName forKey:@"tracker"]; } -#if !TARGET_OS_TV && !TARGET_OS_MACCATALYST - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readMCC] forKey:@"mcc"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readMNC] forKey:@"mnc"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readCurrentRadioAccessTechnology] forKey:@"network_type"]; -#endif - return parameters; } @@ -746,27 +770,27 @@ - (NSMutableDictionary *)getAttributionParameters:(NSString *)initiatedBy { [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appToken forKey:@"app_token"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appSecret forKey:@"app_secret"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleVersion forKey:@"app_version"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleShortVersion forKey:@"app_version_short"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.buildNumber forKey:@"app_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.versionNumber forKey:@"app_version_short"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"attribution_deeplink"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundeIdentifier forKey:@"bundle_id"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.bundleIdentifier forKey:@"bundle_id"]; [ADJPackageBuilder parameters:parameters setDate1970:self.createdAt forKey:@"created_at"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceName forKey:@"device_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceType forKey:@"device_type"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceName forKey:@"device_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceType forKey:@"device_type"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.environment forKey:@"environment"]; [ADJPackageBuilder parameters:parameters setBool:self.adjustConfig.eventBufferingEnabled forKey:@"event_buffering_enabled"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.externalDeviceId forKey:@"external_device_id"]; if (self.adjustConfig.allowIdfaReading == YES) { - [ADJPackageBuilder parameters:parameters setString:UIDevice.currentDevice.adjIdForAdvertisers forKey:@"idfa"]; + [ADJPackageBuilder parameters:parameters setString:[ADJUtil idfa] forKey:@"idfa"]; } - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.vendorId forKey:@"idfv"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.idfv forKey:@"idfv"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.installedAt forKey:@"installed_at"]; [ADJPackageBuilder parameters:parameters setString:initiatedBy forKey:@"initiated_by"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil getInstallTime] forKey:@"installed_at"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"needs_response_details"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osBuild forKey:@"os_build"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osName forKey:@"os_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.systemVersion forKey:@"os_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osName forKey:@"os_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osVersion forKey:@"os_version"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.secretId forKey:@"secret_id"]; + [ADJPackageBuilder parameters:parameters setDate1970:(double)self.packageParams.startedAt forKey:@"started_at"]; if (self.adjustConfig.isDeviceKnown) { [ADJPackageBuilder parameters:parameters setBool:self.adjustConfig.isDeviceKnown forKey:@"device_known"]; @@ -784,7 +808,7 @@ - (NSMutableDictionary *)getAttributionParameters:(NSString *)initiatedBy { } if (self.activityState != nil) { - [ADJPackageBuilder parameters:parameters setString:self.activityState.uuid forKey:@"ios_uuid"]; + [ADJPackageBuilder parameters:parameters setString:self.activityState.dedupeToken forKey:@"secondary_dedupe_token"]; } return parameters; @@ -795,26 +819,26 @@ - (NSMutableDictionary *)getGdprParameters { [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appToken forKey:@"app_token"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appSecret forKey:@"app_secret"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleVersion forKey:@"app_version"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleShortVersion forKey:@"app_version_short"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.buildNumber forKey:@"app_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.versionNumber forKey:@"app_version_short"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"attribution_deeplink"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundeIdentifier forKey:@"bundle_id"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.bundleIdentifier forKey:@"bundle_id"]; [ADJPackageBuilder parameters:parameters setDate1970:self.createdAt forKey:@"created_at"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceName forKey:@"device_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceType forKey:@"device_type"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceName forKey:@"device_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceType forKey:@"device_type"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.environment forKey:@"environment"]; [ADJPackageBuilder parameters:parameters setBool:self.adjustConfig.eventBufferingEnabled forKey:@"event_buffering_enabled"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.externalDeviceId forKey:@"external_device_id"]; if (self.adjustConfig.allowIdfaReading == YES) { - [ADJPackageBuilder parameters:parameters setString:UIDevice.currentDevice.adjIdForAdvertisers forKey:@"idfa"]; + [ADJPackageBuilder parameters:parameters setString:[ADJUtil idfa] forKey:@"idfa"]; } - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.vendorId forKey:@"idfv"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil getInstallTime] forKey:@"installed_at"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.idfv forKey:@"idfv"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.installedAt forKey:@"installed_at"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"needs_response_details"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osBuild forKey:@"os_build"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osName forKey:@"os_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.systemVersion forKey:@"os_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osName forKey:@"os_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osVersion forKey:@"os_version"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.secretId forKey:@"secret_id"]; + [ADJPackageBuilder parameters:parameters setDate1970:(double)self.packageParams.startedAt forKey:@"started_at"]; if (self.adjustConfig.isDeviceKnown) { [ADJPackageBuilder parameters:parameters setBool:self.adjustConfig.isDeviceKnown forKey:@"device_known"]; @@ -832,7 +856,7 @@ - (NSMutableDictionary *)getGdprParameters { } if (self.activityState != nil) { - [ADJPackageBuilder parameters:parameters setString:self.activityState.uuid forKey:@"ios_uuid"]; + [ADJPackageBuilder parameters:parameters setString:self.activityState.dedupeToken forKey:@"secondary_dedupe_token"]; } return parameters; @@ -843,42 +867,35 @@ - (NSMutableDictionary *)getDisableThirdPartySharingParameters { [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appSecret forKey:@"app_secret"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appToken forKey:@"app_token"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil getUpdateTime] forKey:@"app_updated_at"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleVersion forKey:@"app_version"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleShortVersion forKey:@"app_version_short"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.buildNumber forKey:@"app_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.versionNumber forKey:@"app_version_short"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"attribution_deeplink"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundeIdentifier forKey:@"bundle_id"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.bundleIdentifier forKey:@"bundle_id"]; [ADJPackageBuilder parameters:parameters setDictionary:[self.sessionParameters.callbackParameters copy] forKey:@"callback_params"]; [ADJPackageBuilder parameters:parameters setDate:self.clickTime forKey:@"click_time"]; - [ADJPackageBuilder parameters:parameters setNumberInt:[ADJUtil readReachabilityFlags] forKey:@"connectivity_type"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.countryCode forKey:@"country"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.cpuSubtype forKey:@"cpu_type"]; [ADJPackageBuilder parameters:parameters setDate1970:self.createdAt forKey:@"created_at"]; [ADJPackageBuilder parameters:parameters setString:self.deeplink forKey:@"deeplink"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.defaultTracker forKey:@"default_tracker"]; [ADJPackageBuilder parameters:parameters setDictionary:self.attributionDetails forKey:@"details"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceName forKey:@"device_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceType forKey:@"device_type"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceName forKey:@"device_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceType forKey:@"device_type"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.environment forKey:@"environment"]; [ADJPackageBuilder parameters:parameters setBool:self.adjustConfig.eventBufferingEnabled forKey:@"event_buffering_enabled"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.externalDeviceId forKey:@"external_device_id"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.fbAnonymousId forKey:@"fb_anon_id"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.machineModel forKey:@"hardware_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.fbAnonymousId forKey:@"fb_anon_id"]; if (self.adjustConfig.allowIdfaReading == YES) { - [ADJPackageBuilder parameters:parameters setString:UIDevice.currentDevice.adjIdForAdvertisers forKey:@"idfa"]; + [ADJPackageBuilder parameters:parameters setString:[ADJUtil idfa] forKey:@"idfa"]; } - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.vendorId forKey:@"idfv"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.installReceiptBase64 forKey:@"install_receipt"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil getInstallTime] forKey:@"installed_at"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.languageCode forKey:@"language"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.idfv forKey:@"idfv"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.installedAt forKey:@"installed_at"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"needs_response_details"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osBuild forKey:@"os_build"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osName forKey:@"os_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.systemVersion forKey:@"os_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osName forKey:@"os_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osVersion forKey:@"os_version"]; [ADJPackageBuilder parameters:parameters setDictionary:self.deeplinkParameters forKey:@"params"]; [ADJPackageBuilder parameters:parameters setDictionary:[self.sessionParameters.partnerParameters copy] forKey:@"partner_params"]; [ADJPackageBuilder parameters:parameters setDate:self.purchaseTime forKey:@"purchase_time"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.secretId forKey:@"secret_id"]; + [ADJPackageBuilder parameters:parameters setDate1970:(double)self.packageParams.startedAt forKey:@"started_at"]; if ([self.trackingStatusManager canGetAttStatus]) { [ADJPackageBuilder parameters:parameters setInt:self.trackingStatusManager.attStatus @@ -902,15 +919,9 @@ - (NSMutableDictionary *)getDisableThirdPartySharingParameters { [ADJPackageBuilder parameters:parameters setDuration:self.activityState.sessionLength forKey:@"session_length"]; [ADJPackageBuilder parameters:parameters setInt:self.activityState.subsessionCount forKey:@"subsession_count"]; [ADJPackageBuilder parameters:parameters setDuration:self.activityState.timeSpent forKey:@"time_spent"]; - [ADJPackageBuilder parameters:parameters setString:self.activityState.uuid forKey:@"ios_uuid"]; + [ADJPackageBuilder parameters:parameters setString:self.activityState.dedupeToken forKey:@"secondary_dedupe_token"]; } -#if !TARGET_OS_TV && !TARGET_OS_MACCATALYST - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readMCC] forKey:@"mcc"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readMNC] forKey:@"mnc"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readCurrentRadioAccessTechnology] forKey:@"network_type"]; -#endif - return parameters; } @@ -919,42 +930,35 @@ - (NSMutableDictionary *)getThirdPartySharingParameters:(nonnull ADJThirdPartySh [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appSecret forKey:@"app_secret"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appToken forKey:@"app_token"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil getUpdateTime] forKey:@"app_updated_at"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleVersion forKey:@"app_version"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleShortVersion forKey:@"app_version_short"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.buildNumber forKey:@"app_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.versionNumber forKey:@"app_version_short"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"attribution_deeplink"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundeIdentifier forKey:@"bundle_id"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.bundleIdentifier forKey:@"bundle_id"]; [ADJPackageBuilder parameters:parameters setDictionary:[self.sessionParameters.callbackParameters copy] forKey:@"callback_params"]; [ADJPackageBuilder parameters:parameters setDate:self.clickTime forKey:@"click_time"]; - [ADJPackageBuilder parameters:parameters setNumberInt:[ADJUtil readReachabilityFlags] forKey:@"connectivity_type"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.countryCode forKey:@"country"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.cpuSubtype forKey:@"cpu_type"]; [ADJPackageBuilder parameters:parameters setDate1970:self.createdAt forKey:@"created_at"]; [ADJPackageBuilder parameters:parameters setString:self.deeplink forKey:@"deeplink"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.defaultTracker forKey:@"default_tracker"]; [ADJPackageBuilder parameters:parameters setDictionary:self.attributionDetails forKey:@"details"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceName forKey:@"device_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceType forKey:@"device_type"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceName forKey:@"device_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceType forKey:@"device_type"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.environment forKey:@"environment"]; [ADJPackageBuilder parameters:parameters setBool:self.adjustConfig.eventBufferingEnabled forKey:@"event_buffering_enabled"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.externalDeviceId forKey:@"external_device_id"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.fbAnonymousId forKey:@"fb_anon_id"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.machineModel forKey:@"hardware_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.fbAnonymousId forKey:@"fb_anon_id"]; if (self.adjustConfig.allowIdfaReading == YES) { - [ADJPackageBuilder parameters:parameters setString:UIDevice.currentDevice.adjIdForAdvertisers forKey:@"idfa"]; + [ADJPackageBuilder parameters:parameters setString:[ADJUtil idfa] forKey:@"idfa"]; } - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.vendorId forKey:@"idfv"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.installReceiptBase64 forKey:@"install_receipt"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil getInstallTime] forKey:@"installed_at"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.languageCode forKey:@"language"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.idfv forKey:@"idfv"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.installedAt forKey:@"installed_at"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"needs_response_details"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osBuild forKey:@"os_build"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osName forKey:@"os_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.systemVersion forKey:@"os_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osName forKey:@"os_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osVersion forKey:@"os_version"]; [ADJPackageBuilder parameters:parameters setDictionary:self.deeplinkParameters forKey:@"params"]; [ADJPackageBuilder parameters:parameters setDictionary:[self.sessionParameters.partnerParameters copy] forKey:@"partner_params"]; [ADJPackageBuilder parameters:parameters setDate:self.purchaseTime forKey:@"purchase_time"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.secretId forKey:@"secret_id"]; + [ADJPackageBuilder parameters:parameters setDate1970:(double)self.packageParams.startedAt forKey:@"started_at"]; // Third Party Sharing if (thirdPartySharing.enabled != nil) { @@ -984,15 +988,9 @@ - (NSMutableDictionary *)getThirdPartySharingParameters:(nonnull ADJThirdPartySh [ADJPackageBuilder parameters:parameters setDuration:self.activityState.sessionLength forKey:@"session_length"]; [ADJPackageBuilder parameters:parameters setInt:self.activityState.subsessionCount forKey:@"subsession_count"]; [ADJPackageBuilder parameters:parameters setDuration:self.activityState.timeSpent forKey:@"time_spent"]; - [ADJPackageBuilder parameters:parameters setString:self.activityState.uuid forKey:@"ios_uuid"]; + [ADJPackageBuilder parameters:parameters setString:self.activityState.dedupeToken forKey:@"secondary_dedupe_token"]; } -#if !TARGET_OS_TV && !TARGET_OS_MACCATALYST - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readMCC] forKey:@"mcc"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readMNC] forKey:@"mnc"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readCurrentRadioAccessTechnology] forKey:@"network_type"]; -#endif - return parameters; } @@ -1001,42 +999,35 @@ - (NSMutableDictionary *)getMeasurementConsentParameters:(BOOL)enabled { [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appSecret forKey:@"app_secret"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appToken forKey:@"app_token"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil getUpdateTime] forKey:@"app_updated_at"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleVersion forKey:@"app_version"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleShortVersion forKey:@"app_version_short"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.buildNumber forKey:@"app_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.versionNumber forKey:@"app_version_short"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"attribution_deeplink"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundeIdentifier forKey:@"bundle_id"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.bundleIdentifier forKey:@"bundle_id"]; [ADJPackageBuilder parameters:parameters setDictionary:[self.sessionParameters.callbackParameters copy] forKey:@"callback_params"]; [ADJPackageBuilder parameters:parameters setDate:self.clickTime forKey:@"click_time"]; - [ADJPackageBuilder parameters:parameters setNumberInt:[ADJUtil readReachabilityFlags] forKey:@"connectivity_type"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.countryCode forKey:@"country"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.cpuSubtype forKey:@"cpu_type"]; [ADJPackageBuilder parameters:parameters setDate1970:self.createdAt forKey:@"created_at"]; [ADJPackageBuilder parameters:parameters setString:self.deeplink forKey:@"deeplink"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.defaultTracker forKey:@"default_tracker"]; [ADJPackageBuilder parameters:parameters setDictionary:self.attributionDetails forKey:@"details"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceName forKey:@"device_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceType forKey:@"device_type"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceName forKey:@"device_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceType forKey:@"device_type"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.environment forKey:@"environment"]; [ADJPackageBuilder parameters:parameters setBool:self.adjustConfig.eventBufferingEnabled forKey:@"event_buffering_enabled"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.externalDeviceId forKey:@"external_device_id"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.fbAnonymousId forKey:@"fb_anon_id"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.machineModel forKey:@"hardware_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.fbAnonymousId forKey:@"fb_anon_id"]; if (self.adjustConfig.allowIdfaReading == YES) { - [ADJPackageBuilder parameters:parameters setString:UIDevice.currentDevice.adjIdForAdvertisers forKey:@"idfa"]; + [ADJPackageBuilder parameters:parameters setString:[ADJUtil idfa] forKey:@"idfa"]; } - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.vendorId forKey:@"idfv"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.installReceiptBase64 forKey:@"install_receipt"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil getInstallTime] forKey:@"installed_at"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.languageCode forKey:@"language"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.idfv forKey:@"idfv"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.installedAt forKey:@"installed_at"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"needs_response_details"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osBuild forKey:@"os_build"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osName forKey:@"os_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.systemVersion forKey:@"os_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osName forKey:@"os_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osVersion forKey:@"os_version"]; [ADJPackageBuilder parameters:parameters setDictionary:self.deeplinkParameters forKey:@"params"]; [ADJPackageBuilder parameters:parameters setDictionary:[self.sessionParameters.partnerParameters copy] forKey:@"partner_params"]; [ADJPackageBuilder parameters:parameters setDate:self.purchaseTime forKey:@"purchase_time"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.secretId forKey:@"secret_id"]; + [ADJPackageBuilder parameters:parameters setDate1970:(double)self.packageParams.startedAt forKey:@"started_at"]; // Measurement Consent NSString *enableValue = enabled ? @"enable" : @"disable"; @@ -1063,15 +1054,9 @@ - (NSMutableDictionary *)getMeasurementConsentParameters:(BOOL)enabled { [ADJPackageBuilder parameters:parameters setDuration:self.activityState.sessionLength forKey:@"session_length"]; [ADJPackageBuilder parameters:parameters setInt:self.activityState.subsessionCount forKey:@"subsession_count"]; [ADJPackageBuilder parameters:parameters setDuration:self.activityState.timeSpent forKey:@"time_spent"]; - [ADJPackageBuilder parameters:parameters setString:self.activityState.uuid forKey:@"ios_uuid"]; + [ADJPackageBuilder parameters:parameters setString:self.activityState.dedupeToken forKey:@"secondary_dedupe_token"]; } -#if !TARGET_OS_TV && !TARGET_OS_MACCATALYST - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readMCC] forKey:@"mcc"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readMNC] forKey:@"mnc"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readCurrentRadioAccessTechnology] forKey:@"network_type"]; -#endif - return parameters; } - (NSMutableDictionary *)getSubscriptionParameters:(BOOL)isInDelay forSubscriptionPackage:(ADJSubscription *)subscription { @@ -1079,32 +1064,27 @@ - (NSMutableDictionary *)getSubscriptionParameters:(BOOL)isInDelay forSubscripti [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appSecret forKey:@"app_secret"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.appToken forKey:@"app_token"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleVersion forKey:@"app_version"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundleShortVersion forKey:@"app_version_short"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.buildNumber forKey:@"app_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.versionNumber forKey:@"app_version_short"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"attribution_deeplink"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.bundeIdentifier forKey:@"bundle_id"]; - [ADJPackageBuilder parameters:parameters setNumberInt:[ADJUtil readReachabilityFlags] forKey:@"connectivity_type"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.countryCode forKey:@"country"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.cpuSubtype forKey:@"cpu_type"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.bundleIdentifier forKey:@"bundle_id"]; [ADJPackageBuilder parameters:parameters setDate1970:self.createdAt forKey:@"created_at"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceName forKey:@"device_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.deviceType forKey:@"device_type"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceName forKey:@"device_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.deviceType forKey:@"device_type"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.environment forKey:@"environment"]; [ADJPackageBuilder parameters:parameters setBool:self.adjustConfig.eventBufferingEnabled forKey:@"event_buffering_enabled"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.externalDeviceId forKey:@"external_device_id"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.fbAnonymousId forKey:@"fb_anon_id"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.machineModel forKey:@"hardware_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.fbAnonymousId forKey:@"fb_anon_id"]; if (self.adjustConfig.allowIdfaReading == YES) { - [ADJPackageBuilder parameters:parameters setString:UIDevice.currentDevice.adjIdForAdvertisers forKey:@"idfa"]; + [ADJPackageBuilder parameters:parameters setString:[ADJUtil idfa] forKey:@"idfa"]; } - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.vendorId forKey:@"idfv"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil getInstallTime] forKey:@"installed_at"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.languageCode forKey:@"language"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.idfv forKey:@"idfv"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.installedAt forKey:@"installed_at"]; [ADJPackageBuilder parameters:parameters setBool:YES forKey:@"needs_response_details"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osBuild forKey:@"os_build"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.osName forKey:@"os_name"]; - [ADJPackageBuilder parameters:parameters setString:self.deviceInfo.systemVersion forKey:@"os_version"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osName forKey:@"os_name"]; + [ADJPackageBuilder parameters:parameters setString:self.packageParams.osVersion forKey:@"os_version"]; [ADJPackageBuilder parameters:parameters setString:self.adjustConfig.secretId forKey:@"secret_id"]; + [ADJPackageBuilder parameters:parameters setDate1970:(double)self.packageParams.startedAt forKey:@"started_at"]; if ([self.trackingStatusManager canGetAttStatus]) { [ADJPackageBuilder parameters:parameters setInt:self.trackingStatusManager.attStatus @@ -1127,7 +1107,7 @@ - (NSMutableDictionary *)getSubscriptionParameters:(BOOL)isInDelay forSubscripti [ADJPackageBuilder parameters:parameters setDuration:self.activityState.sessionLength forKey:@"session_length"]; [ADJPackageBuilder parameters:parameters setInt:self.activityState.subsessionCount forKey:@"subsession_count"]; [ADJPackageBuilder parameters:parameters setDuration:self.activityState.timeSpent forKey:@"time_spent"]; - [ADJPackageBuilder parameters:parameters setString:self.activityState.uuid forKey:@"ios_uuid"]; + [ADJPackageBuilder parameters:parameters setString:self.activityState.dedupeToken forKey:@"secondary_dedupe_token"]; } if (!isInDelay) { @@ -1150,18 +1130,12 @@ - (NSMutableDictionary *)getSubscriptionParameters:(BOOL)isInDelay forSubscripti [ADJPackageBuilder parameters:parameters setDate:subscription.transactionDate forKey:@"transaction_date"]; [ADJPackageBuilder parameters:parameters setString:subscription.salesRegion forKey:@"sales_region"]; -#if !TARGET_OS_TV && !TARGET_OS_MACCATALYST - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readMCC] forKey:@"mcc"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readMNC] forKey:@"mnc"]; - [ADJPackageBuilder parameters:parameters setString:[ADJUtil readCurrentRadioAccessTechnology] forKey:@"network_type"]; -#endif - return parameters; } - (ADJActivityPackage *)defaultActivityPackage { ADJActivityPackage *activityPackage = [[ADJActivityPackage alloc] init]; - activityPackage.clientSdk = self.deviceInfo.clientSdk; + activityPackage.clientSdk = self.packageParams.clientSdk; return activityPackage; } diff --git a/Adjust/ADJPackageParams.h b/Adjust/ADJPackageParams.h new file mode 100644 index 000000000..6413d0cbe --- /dev/null +++ b/Adjust/ADJPackageParams.h @@ -0,0 +1,30 @@ +// +// ADJPackageParams.h +// Adjust SDK +// +// Created by Pedro Filipe (@nonelse) on 17th November 2014. +// Copyright (c) 2014-2021 adjust GmbH. All rights reserved. +// + +#import + +@interface ADJPackageParams : NSObject + +@property (nonatomic, copy) NSString *fbAnonymousId; +@property (nonatomic, copy) NSString *idfv; +@property (nonatomic, copy) NSString *clientSdk; +@property (nonatomic, copy) NSString *bundleIdentifier; +@property (nonatomic, copy) NSString *buildNumber; +@property (nonatomic, copy) NSString *versionNumber; +@property (nonatomic, copy) NSString *deviceType; +@property (nonatomic, copy) NSString *deviceName; +@property (nonatomic, copy) NSString *osName; +@property (nonatomic, copy) NSString *osVersion; +@property (nonatomic, copy) NSString *installedAt; +@property (nonatomic, assign) NSUInteger startedAt; + +- (id)initWithSdkPrefix:(NSString *)sdkPrefix; + ++ (ADJPackageParams *)packageParamsWithSdkPrefix:(NSString *)sdkPrefix; + +@end diff --git a/Adjust/ADJPackageParams.m b/Adjust/ADJPackageParams.m new file mode 100644 index 000000000..c5ae43f0a --- /dev/null +++ b/Adjust/ADJPackageParams.m @@ -0,0 +1,46 @@ +// +// ADJPackageParams.m +// Adjust SDK +// +// Created by Pedro Filipe (@nonelse) on 17th November 2014. +// Copyright (c) 2014-2021 adjust GmbH. All rights reserved. +// + +#import + +#import "ADJPackageParams.h" +#import "ADJUtil.h" + +@implementation ADJPackageParams + ++ (ADJPackageParams *) packageParamsWithSdkPrefix:(NSString *)sdkPrefix { + return [[ADJPackageParams alloc] initWithSdkPrefix:sdkPrefix]; +} + +- (id)initWithSdkPrefix:(NSString *)sdkPrefix { + self = [super init]; + if (self == nil) { + return nil; + } + + self.osName = @"ios"; + self.idfv = [ADJUtil idfv]; + self.fbAnonymousId = [ADJUtil fbAnonymousId]; + self.bundleIdentifier = [ADJUtil bundleIdentifier]; + self.buildNumber = [ADJUtil buildNumber]; + self.versionNumber = [ADJUtil versionNumber]; + self.deviceType = [ADJUtil deviceType]; + self.deviceName = [ADJUtil deviceName]; + self.osVersion = [ADJUtil osVersion]; + self.installedAt = [ADJUtil installedAt]; + self.startedAt = [ADJUtil startedAt]; + if (sdkPrefix == nil) { + self.clientSdk = ADJUtil.clientSdk; + } else { + self.clientSdk = [NSString stringWithFormat:@"%@@%@", sdkPrefix, ADJUtil.clientSdk]; + } + + return self; +} + +@end diff --git a/Adjust/ADJReachability.h b/Adjust/ADJReachability.h deleted file mode 100644 index 92f96a07d..000000000 --- a/Adjust/ADJReachability.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - Copyright (C) 2016 Apple Inc. All Rights Reserved. - See LICENSE.txt for this sample’s licensing information - - Abstract: - Basic demonstration of how to use the SystemConfiguration Reachablity APIs. - */ - -#import -#import -#import - - -typedef enum : NSInteger { - ADJNotReachable = 0, - ADJReachableViaWiFi, - ADJReachableViaWWAN -} ADJNetworkStatus; - - -@interface ADJReachability : NSObject - -/*! - * Use to check the reachability of a given host name. - */ -+ (instancetype)reachabilityWithHostName:(NSString *)hostName; - -/*! - * Use to check the reachability of a given IP address. - */ -+ (instancetype)reachabilityWithAddress:(const struct sockaddr *)hostAddress; - -/*! - * Checks whether the default route is available. Should be used by applications that do not connect to a particular host. - */ -+ (instancetype)reachabilityForInternetConnection; - - -#pragma mark reachabilityForLocalWiFi -//reachabilityForLocalWiFi has been removed from the sample. See ReadMe.md for more information. -//+ (instancetype)reachabilityForLocalWiFi; - -/*! - * Start listening for reachability notifications on the current run loop. - */ -- (BOOL)startNotifier; -- (void)stopNotifier; - -- (ADJNetworkStatus)currentReachabilityStatus; - -/*! - * WWAN may be available, but not active until a connection has been established. WiFi may require a connection for VPN on Demand. - */ -- (BOOL)connectionRequired; - -- (NSNumber *)currentReachabilityFlags; - -@end - - diff --git a/Adjust/ADJReachability.m b/Adjust/ADJReachability.m deleted file mode 100644 index 1c2a029af..000000000 --- a/Adjust/ADJReachability.m +++ /dev/null @@ -1,230 +0,0 @@ -/* - Copyright (C) 2016 Apple Inc. All Rights Reserved. - - Abstract: - Basic demonstration of how to use the SystemConfiguration Reachablity APIs. - */ - -#import -#import -#import -#import -#import - -#import - -#import "ADJReachability.h" - -#pragma mark - Supporting functions - -#define kShouldPrintReachabilityFlags 1 - -static void PrintReachabilityFlags(SCNetworkReachabilityFlags flags, const char* comment) -{ -#if kShouldPrintReachabilityFlags - - NSLog(@"Reachability Flag Status: %c%c %c%c%c%c%c%c%c %s\n", - (flags & kSCNetworkReachabilityFlagsIsWWAN) ? 'W' : '-', - (flags & kSCNetworkReachabilityFlagsReachable) ? 'R' : '-', - - (flags & kSCNetworkReachabilityFlagsTransientConnection) ? 't' : '-', - (flags & kSCNetworkReachabilityFlagsConnectionRequired) ? 'c' : '-', - (flags & kSCNetworkReachabilityFlagsConnectionOnTraffic) ? 'C' : '-', - (flags & kSCNetworkReachabilityFlagsInterventionRequired) ? 'i' : '-', - (flags & kSCNetworkReachabilityFlagsConnectionOnDemand) ? 'D' : '-', - (flags & kSCNetworkReachabilityFlagsIsLocalAddress) ? 'l' : '-', - (flags & kSCNetworkReachabilityFlagsIsDirect) ? 'd' : '-', - comment - ); -#endif -} - -#pragma mark - Reachability implementation - -@implementation ADJReachability -{ - SCNetworkReachabilityRef _reachabilityRef; -} - -+ (instancetype)reachabilityWithHostName:(NSString *)hostName -{ - ADJReachability* returnValue = NULL; - SCNetworkReachabilityRef reachability = SCNetworkReachabilityCreateWithName(NULL, [hostName UTF8String]); - if (reachability != NULL) - { - returnValue= [[self alloc] init]; - if (returnValue != NULL) - { - returnValue->_reachabilityRef = reachability; - } - else { - CFRelease(reachability); - } - } - return returnValue; -} - - -+ (instancetype)reachabilityWithAddress:(const struct sockaddr *)hostAddress -{ - SCNetworkReachabilityRef reachability = SCNetworkReachabilityCreateWithAddress(kCFAllocatorDefault, hostAddress); - - ADJReachability* returnValue = NULL; - - if (reachability != NULL) - { - returnValue = [[self alloc] init]; - if (returnValue != NULL) - { - returnValue->_reachabilityRef = reachability; - } - else { - CFRelease(reachability); - } - } - return returnValue; -} - - -+ (instancetype)reachabilityForInternetConnection -{ - struct sockaddr_in zeroAddress; - bzero(&zeroAddress, sizeof(zeroAddress)); - zeroAddress.sin_len = sizeof(zeroAddress); - zeroAddress.sin_family = AF_INET; - - return [self reachabilityWithAddress: (const struct sockaddr *) &zeroAddress]; -} - - -#pragma mark - Start and stop notifier - -- (BOOL)startNotifier -{ - BOOL returnValue = NO; - SCNetworkReachabilityContext context = {0, (__bridge void *)(self), NULL, NULL, NULL}; - - if (SCNetworkReachabilitySetCallback(_reachabilityRef, NULL, &context)) - { - if (SCNetworkReachabilityScheduleWithRunLoop(_reachabilityRef, CFRunLoopGetCurrent(), kCFRunLoopDefaultMode)) - { - returnValue = YES; - } - } - - return returnValue; -} - - -- (void)stopNotifier -{ - if (_reachabilityRef != NULL) - { - SCNetworkReachabilityUnscheduleFromRunLoop(_reachabilityRef, CFRunLoopGetCurrent(), kCFRunLoopDefaultMode); - } -} - - -- (void)dealloc -{ - [self stopNotifier]; - if (_reachabilityRef != NULL) - { - CFRelease(_reachabilityRef); - } -} - - -#pragma mark - Network Flag Handling - -- (ADJNetworkStatus)networkStatusForFlags:(SCNetworkReachabilityFlags)flags -{ - PrintReachabilityFlags(flags, "networkStatusForFlags"); - if ((flags & kSCNetworkReachabilityFlagsReachable) == 0) - { - // The target host is not reachable. - return ADJNotReachable; - } - - ADJNetworkStatus returnValue = ADJNotReachable; - - if ((flags & kSCNetworkReachabilityFlagsConnectionRequired) == 0) - { - /* - If the target host is reachable and no connection is required then we'll assume (for now) that you're on Wi-Fi... - */ - returnValue = ADJReachableViaWiFi; - } - - if ((((flags & kSCNetworkReachabilityFlagsConnectionOnDemand ) != 0) || - (flags & kSCNetworkReachabilityFlagsConnectionOnTraffic) != 0)) - { - /* - ... and the connection is on-demand (or on-traffic) if the calling application is using the CFSocketStream or higher APIs... - */ - - if ((flags & kSCNetworkReachabilityFlagsInterventionRequired) == 0) - { - /* - ... and no [user] intervention is needed... - */ - returnValue = ADJReachableViaWiFi; - } - } - - if ((flags & kSCNetworkReachabilityFlagsIsWWAN) == kSCNetworkReachabilityFlagsIsWWAN) - { - /* - ... but WWAN connections are OK if the calling application is using the CFNetwork APIs. - */ - returnValue = ADJReachableViaWWAN; - } - - return returnValue; -} - - -- (BOOL)connectionRequired -{ - NSAssert(_reachabilityRef != NULL, @"connectionRequired called with NULL reachabilityRef"); - SCNetworkReachabilityFlags flags; - - if (SCNetworkReachabilityGetFlags(_reachabilityRef, &flags)) - { - return (flags & kSCNetworkReachabilityFlagsConnectionRequired); - } - - return NO; -} - - -- (ADJNetworkStatus)currentReachabilityStatus -{ - NSAssert(_reachabilityRef != NULL, @"currentNetworkStatus called with NULL SCNetworkReachabilityRef"); - ADJNetworkStatus returnValue = ADJNotReachable; - SCNetworkReachabilityFlags flags; - - if (SCNetworkReachabilityGetFlags(_reachabilityRef, &flags)) - { - returnValue = [self networkStatusForFlags:flags]; - } - - return returnValue; -} - -- (NSNumber *)currentReachabilityFlags -{ - if (_reachabilityRef == NULL) { - return nil; - } - SCNetworkReachabilityFlags flags; - - if (SCNetworkReachabilityGetFlags(_reachabilityRef, &flags)) - { - return [[NSNumber alloc] initWithUnsignedInt:flags]; - } else { - return [[NSNumber alloc] initWithUnsignedInt:0]; - } -} - -@end diff --git a/Adjust/ADJRequestHandler.m b/Adjust/ADJRequestHandler.m index 0bd9fa03d..1ded53a53 100644 --- a/Adjust/ADJRequestHandler.m +++ b/Adjust/ADJRequestHandler.m @@ -562,13 +562,13 @@ - (void)checkAndAddEntry:(NSMutableDictionary *)parameters - (NSString *)getValidIdentifier:(NSDictionary *)parameters { NSString *idfaName = @"idfa"; - NSString *uuidName = @"ios_uuid"; + NSString *randomTokenName = @"random_token"; if ([parameters objectForKey:idfaName] != nil) { return idfaName; } - if ([parameters objectForKey:uuidName] != nil) { - return uuidName; + if ([parameters objectForKey:randomTokenName] != nil) { + return randomTokenName; } return nil; } diff --git a/Adjust/ADJSdkClickHandler.m b/Adjust/ADJSdkClickHandler.m index a19f0886e..7d5dcb758 100644 --- a/Adjust/ADJSdkClickHandler.m +++ b/Adjust/ADJSdkClickHandler.m @@ -13,7 +13,6 @@ #import "ADJBackoffStrategy.h" #import "ADJUserDefaults.h" #import "ADJPackageBuilder.h" -#import "UIDevice+ADJAdditions.h" static const char * const kInternalQueueName = "com.adjust.SdkClickQueue"; @@ -149,7 +148,7 @@ - (void)sendNextSdkClickI:(ADJSdkClickHandler *)selfI { if ([ADJPackageBuilder isAdServicesPackage:sdkClickPackage]) { // refresh token - NSString *token = [[UIDevice currentDevice] adjFetchAdServicesAttribution:nil]; + NSString *token = [ADJUtil fetchAdServicesAttribution:nil]; if (token != nil && ![sdkClickPackage.parameters[ADJAttributionTokenParameter] isEqualToString:token]) { // update token diff --git a/Adjust/ADJSystemProfile.h b/Adjust/ADJSystemProfile.h deleted file mode 100644 index d6f4c88ea..000000000 --- a/Adjust/ADJSystemProfile.h +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright 2008-2014, Torsten Curdt - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -// original at https://github.com/tcurdt/feedbackreporter/blob/master/Sources/Main/FRSystemProfile.h - -#import - -@interface ADJSystemProfile : NSObject - -+ (BOOL) is64bit; -+ (NSString *)cpuFamily; -+ (NSString *)osVersion; -+ (int) cpuCount; -+ (NSString *)machineArch; -+ (NSString *)machineModel; -+ (NSString *)cpuBrand; -+ (NSString *)cpuFeatures; -+ (NSString *)cpuVendor; -+ (NSString *)appleLanguage; -+ (long long)cpuSpeed; -+ (long long)ramsize; -+ (NSString *)cpuType; -+ (NSString *)cpuSubtype; - -@end diff --git a/Adjust/ADJSystemProfile.m b/Adjust/ADJSystemProfile.m deleted file mode 100644 index ca9b4543e..000000000 --- a/Adjust/ADJSystemProfile.m +++ /dev/null @@ -1,812 +0,0 @@ -/* - * Copyright 2008-2014, Torsten Curdt - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -// original at https://github.com/tcurdt/feedbackreporter/blob/master/Sources/Main/FRSystemProfile.m - -#import "ADJSystemProfile.h" -#import -#import -#import -#import "ADJAdjustFactory.h" -#import "ADJLogger.h" -#import "UIDevice+ADJAdditions.h" -#import "ADJUtil.h" - -@implementation ADJSystemProfile - -+ (BOOL)is64bit { - int error = 0; - int value = 0; - size_t length = sizeof(value); - - error = sysctlbyname("hw.cpu64bit_capable", &value, &length, NULL, 0); - if (error != 0) { - error = sysctlbyname("hw.optional.x86_64", &value, &length, NULL, 0); //x86 specific - } - if (error != 0) { - error = sysctlbyname("hw.optional.64bitops", &value, &length, NULL, 0); //PPC specific - } - if (error != 0) { - return NO; - } - - return value == 1; -} - -+ (NSString *)cpuFamily { - int cpufamily = -1; - size_t length = sizeof(cpufamily); - int error = sysctlbyname("hw.cpufamily", &cpufamily, &length, NULL, 0); - if (error != 0) { - [ADJAdjustFactory.logger error:@"Failed to obtain CPU family (%d)", error]; - return nil; - } - - switch (cpufamily) - { -#ifdef CPUFAMILY_UNKNOWN - case CPUFAMILY_UNKNOWN: - return @"CPUFAMILY_UNKNOWN"; -#endif -#ifdef CPUFAMILY_POWERPC_G3 - case CPUFAMILY_POWERPC_G3: - return @"CPUFAMILY_POWERPC_G3"; -#endif -#ifdef CPUFAMILY_POWERPC_G4 - case CPUFAMILY_POWERPC_G4: - return @"CPUFAMILY_POWERPC_G4"; -#endif -#ifdef CPUFAMILY_POWERPC_G5 - case CPUFAMILY_POWERPC_G5: - return @"CPUFAMILY_POWERPC_G5"; -#endif -#ifdef CPUFAMILY_INTEL_6_13 - case CPUFAMILY_INTEL_6_13: - return @"CPUFAMILY_INTEL_6_13"; -#endif -#ifdef CPUFAMILY_INTEL_YONAH - case CPUFAMILY_INTEL_YONAH: - return @"CPUFAMILY_INTEL_YONAH"; -#endif -#ifdef CPUFAMILY_INTEL_MEROM - case CPUFAMILY_INTEL_MEROM: - return @"CPUFAMILY_INTEL_MEROM"; -#endif -#ifdef CPUFAMILY_INTEL_PENRYN - case CPUFAMILY_INTEL_PENRYN: - return @"CPUFAMILY_INTEL_PENRYN"; -#endif -#ifdef CPUFAMILY_INTEL_NEHALEM - case CPUFAMILY_INTEL_NEHALEM: - return @"CPUFAMILY_INTEL_NEHALEM"; -#endif -#ifdef CPUFAMILY_INTEL_WESTMERE - case CPUFAMILY_INTEL_WESTMERE: - return @"CPUFAMILY_INTEL_WESTMERE"; -#endif -#ifdef CPUFAMILY_INTEL_SANDYBRIDGE - case CPUFAMILY_INTEL_SANDYBRIDGE: - return @"CPUFAMILY_INTEL_SANDYBRIDGE"; -#endif -#ifdef CPUFAMILY_INTEL_IVYBRIDGE - case CPUFAMILY_INTEL_IVYBRIDGE: - return @"CPUFAMILY_INTEL_IVYBRIDGE"; -#endif -#ifdef CPUFAMILY_INTEL_HASWELL - case CPUFAMILY_INTEL_HASWELL: - return @"CPUFAMILY_INTEL_HASWELL"; -#endif -#ifdef CPUFAMILY_INTEL_BROADWELL - case CPUFAMILY_INTEL_BROADWELL: - return @"CPUFAMILY_INTEL_BROADWELL"; -#endif -#ifdef CPUFAMILY_INTEL_SKYLAKE - case CPUFAMILY_INTEL_SKYLAKE: - return @"CPUFAMILY_INTEL_SKYLAKE"; -#endif -#ifdef CPUFAMILY_ARM_9 - case CPUFAMILY_ARM_9: - return @"CPUFAMILY_ARM_9"; -#endif -#ifdef CPUFAMILY_ARM_11 - case CPUFAMILY_ARM_11: - return @"CPUFAMILY_ARM_11"; -#endif -#ifdef CPUFAMILY_ARM_XSCALE - case CPUFAMILY_ARM_XSCALE: - return @"CPUFAMILY_ARM_XSCALE"; -#endif -#ifdef CPUFAMILY_ARM_12 - case CPUFAMILY_ARM_12: - return @"CPUFAMILY_ARM_12"; -#endif -#ifdef CPUFAMILY_ARM_13 - case CPUFAMILY_ARM_13: - return @"CPUFAMILY_ARM_13"; -#endif -#ifdef CPUFAMILY_ARM_14 - case CPUFAMILY_ARM_14: - return @"CPUFAMILY_ARM_14"; -#endif -#ifdef CPUFAMILY_ARM_15 - case CPUFAMILY_ARM_15: - return @"CPUFAMILY_ARM_15"; -#endif -#ifdef CPUFAMILY_ARM_SWIFT - case CPUFAMILY_ARM_SWIFT: - return @"CPUFAMILY_ARM_SWIFT"; -#endif -#ifdef CPUFAMILY_ARM_CYCLONE - case CPUFAMILY_ARM_CYCLONE: - return @"CPUFAMILY_ARM_CYCLONE"; -#endif -#ifdef CPUFAMILY_ARM_TYPHOON - case CPUFAMILY_ARM_TYPHOON: - return @"CPUFAMILY_ARM_TYPHOON"; -#endif -#ifdef CPUFAMILY_ARM_TWISTER - case CPUFAMILY_ARM_TWISTER: - return @"CPUFAMILY_ARM_TWISTER"; -#endif -#ifdef CPUFAMILY_ARM_HURRICANE - case CPUFAMILY_ARM_HURRICANE: - return @"CPUFAMILY_ARM_HURRICANE"; -#endif - } - NSString *unknowCpuFamily = [NSString stringWithFormat:@"Unknown CPU family %d", cpufamily]; - [ADJAdjustFactory.logger warn:@"%@", unknowCpuFamily]; - return unknowCpuFamily; -} -/* - original function - operatingSystemVersionString should not be parsed - https://developer.apple.com/reference/foundation/nsprocessinfo/1408730-operatingsystemversionstring?language=objc -+ (NSString*) osVersion { - NSProcessInfo *info = [NSProcessInfo processInfo]; - if (info == nil) { - return nil; - } - - NSString *version = [info operatingSystemVersionString]; - if ([version hasPrefix:@"Version "]) { - version = [version substringFromIndex:8]; - } - - return version; -} -*/ - -+ (int)cpuCount { - int error = 0; - int value = 0; - size_t length = sizeof(value); - error = sysctlbyname("hw.ncpu", &value, &length, NULL, 0); - - if (error != 0) { - [ADJAdjustFactory.logger error:@"Failed to obtain CPU count (%d)", error]; - return 1; - } - - return value; -} - -+ (NSString *)machineArch { - return [ADJSystemProfile readSysctlbByNameString:"hw.machinearch" errorLog:@"Failed to obtain machine arch"]; -} - -+ (NSString *)machineModel { - return [ADJSystemProfile readSysctlbByNameString:"hw.model" errorLog:@"Failed to obtain machine model"]; -} - -+ (NSString *)cpuBrand { - return [ADJSystemProfile readSysctlbByNameString:"machdep.cpu.brand_string" errorLog:@"Failed to obtain CPU brand"]; -} - -+ (NSString *)cpuFeatures { - return [ADJSystemProfile readSysctlbByNameString:"machdep.cpu.features" errorLog:@"Failed to obtain CPU features"]; -} - -+ (NSString *)cpuVendor { - return [ADJSystemProfile readSysctlbByNameString:"machdep.cpu.vendor" errorLog:@"Failed to obtain CPU vendor"]; -} - -+ (NSString *)osVersion { - return [ADJSystemProfile readSysctlbByNameString:"kern.osversion" errorLog:@"Failed to obtain OS version"]; -} - -+ (NSString *)readSysctlbByNameString:(const char*)name - errorLog:(NSString *)errorLog { - int error = 0; - size_t length = 0; - error = sysctlbyname(name, NULL, &length, NULL, 0); - - if (error != 0) { - [ADJAdjustFactory.logger error:@"%@ (%d)", errorLog, error]; - return nil; - } - - char *p = calloc(1, sizeof(char) * length); - if (p) { - error = sysctlbyname(name, p, &length, NULL, 0); - } - - if (error != 0) { - [ADJAdjustFactory.logger error:@"%@ (%d)", errorLog, error]; - free(p); - return nil; - } - - NSString *result = [NSString stringWithUTF8String:p]; - free(p); - return result; -} - -+ (NSString *)appleLanguage { - NSUserDefaults *defs = [NSUserDefaults standardUserDefaults]; - NSArray *languages = [defs objectForKey:@"AppleLanguages"]; - - if ([languages count] == 0) { - [ADJAdjustFactory.logger error:@"Failed to obtain preferred language"]; - return nil; - } - - return [languages objectAtIndex:0]; -} - -+ (long long)cpuSpeed { - long long result = 0; - int error = 0; - int64_t hertz = 0; - size_t size = sizeof(hertz); - int mib[2] = {CTL_HW, HW_CPU_FREQ}; - - error = sysctl(mib, 2, &hertz, &size, NULL, 0); - if (error) { - [ADJAdjustFactory.logger error:@"Failed to obtain CPU speed (%d)", error]; - return -1; - } - - result = (long long)(hertz/1000000); // convert to MHz - return result; -} - -+ (long long)ramsize { - long long result = 0; - int error = 0; - int64_t value = 0; - size_t length = sizeof(value); - - error = sysctlbyname("hw.memsize", &value, &length, NULL, 0); - if (error) { - [ADJAdjustFactory.logger error:@"Failed to obtain RAM size (%d)", error]; - return -1; - } - - const int64_t kBytesPerMebibyte = 1024*1024; - result = (long long)(value/kBytesPerMebibyte); - return result; -} - - -+ (NSString *)cpuType { - int error = 0; - int cputype = -1; - size_t length = sizeof(cputype); - - error = sysctlbyname("hw.cputype", &cputype, &length, NULL, 0); - if (error != 0) { - [ADJAdjustFactory.logger error:@"Failed to obtain CPU type (%d)", error]; - return nil; - } - - NSString *cpuTypeString = [ADJSystemProfile readCpuTypeSubtype:cputype readSubType:NO cpusubtype:0]; - if (cpuTypeString != nil) { - return cpuTypeString; - } - - NSString *unknowCpuType = [NSString stringWithFormat:@"Unknown CPU type %d", cputype]; - [ADJAdjustFactory.logger warn:@"%@", unknowCpuType]; - return unknowCpuType; -} - -+ (NSString *)cpuSubtype { - int error = 0; - int cputype = -1; - size_t length = sizeof(cputype); - - error = sysctlbyname("hw.cputype", &cputype, &length, NULL, 0); - if (error != 0) { - [ADJAdjustFactory.logger error:@"Failed to obtain CPU type (%d)", error]; - return nil; - } - - int cpuSubtype = -1; - length = sizeof(cpuSubtype); - error = sysctlbyname("hw.cpusubtype", &cpuSubtype, &length, NULL, 0); - - if (error != 0) { - [ADJAdjustFactory.logger error:@"Failed to obtain CPU subtype (%d)", error]; - return nil; - } - - NSString *cpuSubtypeString = [ADJSystemProfile readCpuTypeSubtype:cputype readSubType:YES cpusubtype:cpuSubtype]; - if (cpuSubtypeString != nil) { - return cpuSubtypeString; - } - - NSString *unknowCpuSubtype = [NSString stringWithFormat:@"Unknown CPU subtype %d", cpuSubtype]; - [ADJAdjustFactory.logger warn:@"%@", unknowCpuSubtype]; - return unknowCpuSubtype; -} - -+ (NSString *)readCpuTypeSubtype:(int)cputype - readSubType:(BOOL)readSubType - cpusubtype:(int)cpusubtype { - switch (cputype) - { -#ifdef CPU_TYPE_ANY - case CPU_TYPE_ANY: - if (!readSubType) return @"CPU_TYPE_ANY"; - switch (cpusubtype) - { -#ifdef CPU_SUBTYPE_MULTIPLE - case CPU_SUBTYPE_MULTIPLE: - return @"CPU_SUBTYPE_MULTIPLE"; -#endif -#ifdef CPU_SUBTYPE_LITTLE_ENDIAN - case CPU_SUBTYPE_LITTLE_ENDIAN: - return @"CPU_SUBTYPE_LITTLE_ENDIAN"; -#endif -#ifdef CPU_SUBTYPE_BIG_ENDIAN - case CPU_SUBTYPE_BIG_ENDIAN: - return @"CPU_SUBTYPE_BIG_ENDIAN"; -#endif - } - break; -#endif -#ifdef CPU_TYPE_VAX - case CPU_TYPE_VAX: - if (!readSubType) return @"CPU_TYPE_VAX"; - switch (cpusubtype) - { -#ifdef CPU_SUBTYPE_VAX_ALL - case CPU_SUBTYPE_VAX_ALL: - return @"CPU_SUBTYPE_VAX_ALL"; -#endif -#ifdef CPU_SUBTYPE_VAX780 - case CPU_SUBTYPE_VAX780: - return @"CPU_SUBTYPE_VAX780"; -#endif -#ifdef CPU_SUBTYPE_VAX785 - case CPU_SUBTYPE_VAX785: - return @"CPU_SUBTYPE_VAX785"; -#endif -#ifdef CPU_SUBTYPE_VAX750 - case CPU_SUBTYPE_VAX750: - return @"CPU_SUBTYPE_VAX750"; -#endif -#ifdef CPU_SUBTYPE_VAX730 - case CPU_SUBTYPE_VAX730: - return @"CPU_SUBTYPE_VAX730"; -#endif -#ifdef CPU_SUBTYPE_UVAXI - case CPU_SUBTYPE_UVAXI: - return @"CPU_SUBTYPE_UVAXI"; -#endif -#ifdef CPU_SUBTYPE_UVAXII - case CPU_SUBTYPE_UVAXII: - return @"CPU_SUBTYPE_UVAXII"; -#endif -#ifdef CPU_SUBTYPE_VAX8200 - case CPU_SUBTYPE_VAX8200: - return @"CPU_SUBTYPE_VAX8200"; -#endif -#ifdef CPU_SUBTYPE_VAX8500 - case CPU_SUBTYPE_VAX8500: - return @"CPU_SUBTYPE_VAX8500"; -#endif -#ifdef CPU_SUBTYPE_VAX8600 - case CPU_SUBTYPE_VAX8600: - return @"CPU_SUBTYPE_VAX8600"; -#endif -#ifdef CPU_SUBTYPE_VAX8650 - case CPU_SUBTYPE_VAX8650: - return @"CPU_SUBTYPE_VAX8650"; -#endif -#ifdef CPU_SUBTYPE_VAX8800 - case CPU_SUBTYPE_VAX8800: - return @"CPU_SUBTYPE_VAX8800"; -#endif -#ifdef CPU_SUBTYPE_UVAXIII - case CPU_SUBTYPE_UVAXIII: - return @"CPU_SUBTYPE_UVAXIII"; -#endif - } - break; -#endif -#ifdef CPU_TYPE_MC680x0 - case CPU_TYPE_MC680x0: - if (!readSubType) return @"CPU_TYPE_MC680x0"; - switch (cpusubtype) - { -#ifdef CPU_SUBTYPE_MC680x0_ALL - case CPU_SUBTYPE_MC680x0_ALL: - return @"CPU_SUBTYPE_MC680x0_ALL"; -#endif -#ifdef CPU_SUBTYPE_MC68040 - case CPU_SUBTYPE_MC68040: - return @"CPU_SUBTYPE_MC68040"; -#endif -#ifdef CPU_SUBTYPE_MC68030_ONLY - case CPU_SUBTYPE_MC68030_ONLY: - return @"CPU_SUBTYPE_MC68030_ONLY"; -#endif - } - break; -#endif -#ifdef CPU_TYPE_X86_64 - case CPU_TYPE_X86_64: - if (!readSubType) return @"CPU_TYPE_X86_64"; - switch (cpusubtype) - { -#ifdef CPU_SUBTYPE_X86_64_ALL - case CPU_SUBTYPE_X86_64_ALL: - return @"CPU_SUBTYPE_X86_64_ALL"; -#endif -#ifdef CPU_SUBTYPE_X86_ARCH1 - case CPU_SUBTYPE_X86_ARCH1: - return @"CPU_SUBTYPE_X86_ARCH1"; -#endif -#ifdef CPU_SUBTYPE_X86_64_H - case CPU_SUBTYPE_X86_64_H: - return @"CPU_SUBTYPE_X86_64_H"; -#endif - } - break; -#endif -#ifdef CPU_TYPE_X86 - case CPU_TYPE_X86: - if (!readSubType) return @"CPU_TYPE_X86"; - switch (cpusubtype) { -#ifdef CPU_SUBTYPE_386 - case CPU_SUBTYPE_386: - return @"CPU_SUBTYPE_386"; -#endif -#ifdef CPU_SUBTYPE_486 - case CPU_SUBTYPE_486: - return @"CPU_SUBTYPE_486"; -#endif -#ifdef CPU_SUBTYPE_486SX - case CPU_SUBTYPE_486SX: - return @"CPU_SUBTYPE_486SX"; -#endif -#ifdef CPU_SUBTYPE_586 - case CPU_SUBTYPE_586: - return @"CPU_SUBTYPE_586"; -#endif -#ifdef CPU_SUBTYPE_PENTPRO - case CPU_SUBTYPE_PENTPRO: - return @"CPU_SUBTYPE_PENTPRO"; -#endif -#ifdef CPU_SUBTYPE_PENTII_M3 - case CPU_SUBTYPE_PENTII_M3: - return @"CPU_SUBTYPE_PENTII_M3"; -#endif -#ifdef CPU_SUBTYPE_PENTII_M5 - case CPU_SUBTYPE_PENTII_M5: - return @"CPU_SUBTYPE_PENTII_M5"; -#endif -#ifdef CPU_SUBTYPE_CELERON - case CPU_SUBTYPE_CELERON: - return @"CPU_SUBTYPE_CELERON"; -#endif -#ifdef CPU_SUBTYPE_CELERON_MOBILE - case CPU_SUBTYPE_CELERON_MOBILE: - return @"CPU_SUBTYPE_CELERON_MOBILE"; -#endif -#ifdef CPU_SUBTYPE_PENTIUM_3 - case CPU_SUBTYPE_PENTIUM_3: - return @"CPU_SUBTYPE_PENTIUM_3"; -#endif -#ifdef CPU_SUBTYPE_PENTIUM_3_M - case CPU_SUBTYPE_PENTIUM_3_M: - return @"CPU_SUBTYPE_PENTIUM_3_M"; -#endif -#ifdef CPU_SUBTYPE_PENTIUM_3_XEON - case CPU_SUBTYPE_PENTIUM_3_XEON: - return @"CPU_SUBTYPE_PENTIUM_3_XEON"; -#endif -#ifdef CPU_SUBTYPE_PENTIUM_M - case CPU_SUBTYPE_PENTIUM_M: - return @"CPU_SUBTYPE_PENTIUM_M"; -#endif -#ifdef CPU_SUBTYPE_PENTIUM_4 - case CPU_SUBTYPE_PENTIUM_4: - return @"CPU_SUBTYPE_PENTIUM_4"; -#endif -#ifdef CPU_SUBTYPE_PENTIUM_4_M - case CPU_SUBTYPE_PENTIUM_4_M: - return @"CPU_SUBTYPE_PENTIUM_4_M"; -#endif -#ifdef CPU_SUBTYPE_ITANIUM - case CPU_SUBTYPE_ITANIUM: - return @"CPU_SUBTYPE_ITANIUM"; -#endif -#ifdef CPU_SUBTYPE_ITANIUM_2 - case CPU_SUBTYPE_ITANIUM_2: - return @"CPU_SUBTYPE_ITANIUM_2"; -#endif -#ifdef CPU_SUBTYPE_XEON - case CPU_SUBTYPE_XEON: - return @"CPU_SUBTYPE_XEON"; -#endif -#ifdef CPU_SUBTYPE_XEON_MP - case CPU_SUBTYPE_XEON_MP: - return @"CPU_SUBTYPE_XEON_MP"; -#endif - } - break; -#endif -#ifdef CPU_TYPE_MC98000 - case CPU_TYPE_MC98000: - if (!readSubType) return @"CPU_TYPE_MC98000"; - switch (cpusubtype) - { -#ifdef CPU_SUBTYPE_MC98000_ALL - case CPU_SUBTYPE_MC98000_ALL: - return @"CPU_SUBTYPE_MC98000_ALL"; -#endif -#ifdef CPU_SUBTYPE_MC98601 - case CPU_SUBTYPE_MC98601: - return @"CPU_SUBTYPE_MC98601"; -#endif - } - break; -#endif -#ifdef CPU_TYPE_HPPA - case CPU_TYPE_HPPA: - if (!readSubType) return @"CPU_TYPE_HPPA"; - switch (cpusubtype) - { -#ifdef CPU_SUBTYPE_HPPA_7100 - case CPU_SUBTYPE_HPPA_7100: - return @"CPU_SUBTYPE_HPPA_7100"; -#endif -#ifdef CPU_SUBTYPE_HPPA_7100LC - case CPU_SUBTYPE_HPPA_7100LC: - return @"CPU_SUBTYPE_HPPA_7100LC"; -#endif - } - break; -#endif -#ifdef CPU_TYPE_ARM64 - case CPU_TYPE_ARM64: - if (!readSubType) return @"CPU_TYPE_ARM64"; - switch (cpusubtype) - { -#ifdef CPU_SUBTYPE_ARM64_ALL - case CPU_SUBTYPE_ARM64_ALL: - return @"CPU_SUBTYPE_ARM64_ALL"; -#endif -#ifdef CPU_SUBTYPE_ARM64_V8 - case CPU_SUBTYPE_ARM64_V8: - return @"CPU_SUBTYPE_ARM64_V8"; -#endif -#ifdef CPU_SUBTYPE_ARM64E - case CPU_SUBTYPE_ARM64E: - return @"CPU_SUBTYPE_ARM64E"; -#endif - } - break; -#endif -#ifdef CPU_TYPE_ARM - case CPU_TYPE_ARM: - if (!readSubType) return @"CPU_TYPE_ARM"; - switch (cpusubtype) - { -#ifdef CPU_SUBTYPE_ARM_ALL - case CPU_SUBTYPE_ARM_ALL: - return @"CPU_SUBTYPE_ARM_ALL"; -#endif -#ifdef CPU_SUBTYPE_ARM_V4T - case CPU_SUBTYPE_ARM_V4T: - return @"CPU_SUBTYPE_ARM_V4T"; -#endif -#ifdef CPU_SUBTYPE_ARM_V6 - case CPU_SUBTYPE_ARM_V6: - return @"CPU_SUBTYPE_ARM_V6"; -#endif -#ifdef CPU_SUBTYPE_ARM_V5TEJ - case CPU_SUBTYPE_ARM_V5TEJ: - return @"CPU_SUBTYPE_ARM_V5TEJ"; -#endif -#ifdef CPU_SUBTYPE_ARM_XSCALE - case CPU_SUBTYPE_ARM_XSCALE: - return @"CPU_SUBTYPE_ARM_XSCALE"; -#endif -#ifdef CPU_SUBTYPE_ARM_V7 - case CPU_SUBTYPE_ARM_V7: - return @"CPU_SUBTYPE_ARM_V7"; -#endif -#ifdef CPU_SUBTYPE_ARM_V7F - case CPU_SUBTYPE_ARM_V7F: - return @"CPU_SUBTYPE_ARM_V7F"; -#endif -#ifdef CPU_SUBTYPE_ARM_V7S - case CPU_SUBTYPE_ARM_V7S: - return @"CPU_SUBTYPE_ARM_V7S"; -#endif -#ifdef CPU_SUBTYPE_ARM_V7K - case CPU_SUBTYPE_ARM_V7K: - return @"CPU_SUBTYPE_ARM_V7K"; -#endif -#ifdef CPU_SUBTYPE_ARM_V8 - case CPU_SUBTYPE_ARM_V8: - return @"CPU_SUBTYPE_ARM_V8"; -#endif -#ifdef CPU_SUBTYPE_ARM_V6M - case CPU_SUBTYPE_ARM_V6M: - return @"CPU_SUBTYPE_ARM_V6M"; -#endif -#ifdef CPU_SUBTYPE_ARM_V7M - case CPU_SUBTYPE_ARM_V7M: - return @"CPU_SUBTYPE_ARM_V7M"; -#endif -#ifdef CPU_SUBTYPE_ARM_V7EM - case CPU_SUBTYPE_ARM_V7EM: - return @"CPU_SUBTYPE_ARM_V7EM"; -#endif -#ifdef CPU_SUBTYPE_ARM_V8M - case CPU_SUBTYPE_ARM_V8M: - return @"CPU_SUBTYPE_ARM_V8M"; -#endif - } - break; -#endif -#ifdef CPU_TYPE_ARM64_32 - case CPU_TYPE_ARM64_32: - if (!readSubType) return @"CPU_TYPE_ARM64_32"; - switch (cpusubtype) - { -#ifdef CPU_SUBTYPE_ARM64_32_ALL - case CPU_SUBTYPE_ARM64_32_ALL: - return @"CPU_SUBTYPE_ARM64_32_ALL"; -#endif -#ifdef CPU_SUBTYPE_ARM64_32_V8 - case CPU_SUBTYPE_ARM64_32_V8: - return @"CPU_SUBTYPE_ARM64_32_V8"; -#endif - } - break; -#endif -#ifdef CPU_TYPE_MC88000 - case CPU_TYPE_MC88000: - if (!readSubType) return @"CPU_TYPE_MC88000"; - switch (cpusubtype) - { -#ifdef CPU_SUBTYPE_MC88000_ALL - case CPU_SUBTYPE_MC88000_ALL: - return @"CPU_SUBTYPE_MC88000_ALL"; -#endif -#ifdef CPU_SUBTYPE_MC88100 - case CPU_SUBTYPE_MC88100: - return @"CPU_SUBTYPE_MC88100"; -#endif -#ifdef CPU_SUBTYPE_MC88110 - case CPU_SUBTYPE_MC88110: - return @"CPU_SUBTYPE_MC88110"; -#endif - } - break; -#endif -#ifdef CPU_TYPE_SPARC - case CPU_TYPE_SPARC: - if (!readSubType) return @"CPU_TYPE_SPARC"; - switch (cpusubtype) - { -#ifdef CPU_SUBTYPE_SPARC_ALL - case CPU_SUBTYPE_SPARC_ALL: - return @"CPU_SUBTYPE_SPARC_ALL"; -#endif - } - break; -#endif -#ifdef CPU_TYPE_I860 - case CPU_TYPE_I860: - if (!readSubType) return @"CPU_TYPE_I860"; - switch (cpusubtype) - { -#ifdef CPU_SUBTYPE_I860_ALL - case CPU_SUBTYPE_I860_ALL: - return @"CPU_SUBTYPE_I860_ALL"; -#endif -#ifdef CPU_SUBTYPE_I860_860 - case CPU_SUBTYPE_I860_860: - return @"CPU_SUBTYPE_I860_860"; -#endif - } - break; -#endif -#ifdef CPU_TYPE_POWERPC64 - case CPU_TYPE_POWERPC64: - if (!readSubType) return @"CPU_TYPE_POWERPC64"; - break; -#endif -#ifdef CPU_TYPE_POWERPC - case CPU_TYPE_POWERPC: - if (!readSubType) return @"CPU_TYPE_POWERPC"; - switch (cpusubtype) - { -#ifdef CPU_SUBTYPE_POWERPC_ALL - case CPU_SUBTYPE_POWERPC_ALL: - return @"CPU_SUBTYPE_POWERPC_ALL"; -#endif -#ifdef CPU_SUBTYPE_POWERPC_601 - case CPU_SUBTYPE_POWERPC_601: - return @"CPU_SUBTYPE_POWERPC_601"; -#endif -#ifdef CPU_SUBTYPE_POWERPC_602 - case CPU_SUBTYPE_POWERPC_602: - return @"CPU_SUBTYPE_POWERPC_602"; -#endif -#ifdef CPU_SUBTYPE_POWERPC_603 - case CPU_SUBTYPE_POWERPC_603: - return @"CPU_SUBTYPE_POWERPC_603"; -#endif -#ifdef CPU_SUBTYPE_POWERPC_603e - case CPU_SUBTYPE_POWERPC_603e: - return @"CPU_SUBTYPE_POWERPC_603e"; -#endif -#ifdef CPU_SUBTYPE_POWERPC_603ev - case CPU_SUBTYPE_POWERPC_603ev: - return @"CPU_SUBTYPE_POWERPC_603ev"; -#endif -#ifdef CPU_SUBTYPE_POWERPC_604 - case CPU_SUBTYPE_POWERPC_604: - return @"CPU_SUBTYPE_POWERPC_604"; -#endif -#ifdef CPU_SUBTYPE_POWERPC_604e - case CPU_SUBTYPE_POWERPC_604e: - return @"CPU_SUBTYPE_POWERPC_604e"; -#endif -#ifdef CPU_SUBTYPE_POWERPC_620 - case CPU_SUBTYPE_POWERPC_620: - return @"CPU_SUBTYPE_POWERPC_620"; -#endif -#ifdef CPU_SUBTYPE_POWERPC_750 - case CPU_SUBTYPE_POWERPC_750: - return @"CPU_SUBTYPE_POWERPC_750"; -#endif -#ifdef CPU_SUBTYPE_POWERPC_7400 - case CPU_SUBTYPE_POWERPC_7400: - return @"CPU_SUBTYPE_POWERPC_7400"; -#endif -#ifdef CPU_SUBTYPE_POWERPC_7450 - case CPU_SUBTYPE_POWERPC_7450: - return @"CPU_SUBTYPE_POWERPC_7450"; -#endif -#ifdef CPU_SUBTYPE_POWERPC_970 - case CPU_SUBTYPE_POWERPC_970: - return @"CPU_SUBTYPE_POWERPC_970"; -#endif - } - break; -#endif - } - - return nil; -} - -@end diff --git a/Adjust/ADJUrlStrategy.m b/Adjust/ADJUrlStrategy.m index 3bd40b5a3..acaabd520 100644 --- a/Adjust/ADJUrlStrategy.m +++ b/Adjust/ADJUrlStrategy.m @@ -77,40 +77,43 @@ - (instancetype)initWithUrlStrategyInfo:(NSString *)urlStrategyInfo return self; } -+ (NSArray *)baseUrlChoicesWithWithUrlStrategyInfo:(NSString *)urlStrategyInfo -{ ++ (NSArray *)baseUrlChoicesWithWithUrlStrategyInfo:(NSString *)urlStrategyInfo { if ([urlStrategyInfo isEqualToString:ADJUrlStrategyIndia]) { return @[baseUrlIndia, baseUrl]; } else if ([urlStrategyInfo isEqualToString:ADJUrlStrategyChina]) { return @[baseUrlChina, baseUrl]; } else if ([urlStrategyInfo isEqualToString:ADJDataResidencyEU]) { return @[baseUrlEU]; + } else if ([urlStrategyInfo isEqualToString:ADJDataResidencyTR]) { + return @[baseUrlTR]; } else { return @[baseUrl, baseUrlIndia, baseUrlChina]; } } -+ (NSArray *)gdprUrlChoicesWithWithUrlStrategyInfo:(NSString *)urlStrategyInfo -{ ++ (NSArray *)gdprUrlChoicesWithWithUrlStrategyInfo:(NSString *)urlStrategyInfo { if ([urlStrategyInfo isEqualToString:ADJUrlStrategyIndia]) { return @[gdprUrlIndia, gdprUrl]; } else if ([urlStrategyInfo isEqualToString:ADJUrlStrategyChina]) { return @[gdprUrlChina, gdprUrl]; } else if ([urlStrategyInfo isEqualToString:ADJDataResidencyEU]) { return @[gdprUrlEU]; + } else if ([urlStrategyInfo isEqualToString:ADJDataResidencyTR]) { + return @[gdprUrlTR]; } else { return @[gdprUrl, gdprUrlIndia, gdprUrlChina]; } } -+ (NSArray *)subscriptionUrlChoicesWithWithUrlStrategyInfo:(NSString *)urlStrategyInfo -{ ++ (NSArray *)subscriptionUrlChoicesWithWithUrlStrategyInfo:(NSString *)urlStrategyInfo { if ([urlStrategyInfo isEqualToString:ADJUrlStrategyIndia]) { return @[subscritionUrlIndia, subscriptionUrl]; } else if ([urlStrategyInfo isEqualToString:ADJUrlStrategyChina]) { return @[subscritionUrlChina, subscriptionUrl]; } else if ([urlStrategyInfo isEqualToString:ADJDataResidencyEU]) { return @[subscriptionUrlEU]; + } else if ([urlStrategyInfo isEqualToString:ADJDataResidencyTR]) { + return @[subscriptionUrlTR]; } else { return @[subscriptionUrl, subscritionUrlIndia, subscritionUrlChina]; } diff --git a/Adjust/ADJUtil.h b/Adjust/ADJUtil.h index 0d3ee742d..d8e6bb7b2 100644 --- a/Adjust/ADJUtil.h +++ b/Adjust/ADJUtil.h @@ -1,9 +1,9 @@ // // ADJUtil.h -// Adjust +// Adjust SDK // -// Created by Christian Wellenbrock on 2013-07-05. -// Copyright (c) 2013 adjust GmbH. All rights reserved. +// Created by Christian Wellenbrock (@wellle) on 5th July 2013. +// Copyright (c) 2013-2021 Adjust GmbH. All rights reserved. // #import @@ -14,6 +14,7 @@ #import "ADJResponseData.h" #import "ADJActivityPackage.h" #import "ADJBackoffStrategy.h" +#import "ADJActivityHandler.h" typedef void (^selfInjectedBlock)(id); typedef void (^synchronisedBlock)(void); @@ -58,14 +59,8 @@ typedef void (^isInactiveInjected)(BOOL); + (void)launchSynchronisedWithObject:(id)synchronisationObject block:(synchronisedBlock)block; -+ (NSString *)idfa; - + (NSString *)clientSdk; -+ (NSString *)getUpdateTime; - -+ (NSString *)getInstallTime; - + (NSString *)formatDate:(NSDate *)value; + (NSString *)formatSeconds1970:(double)value; @@ -102,18 +97,50 @@ typedef void (^isInactiveInjected)(BOOL); + (NSTimeInterval)waitingTime:(NSInteger)retries backoffStrategy:(ADJBackoffStrategy *)backoffStrategy; -+ (NSNumber *)readReachabilityFlags; - + (BOOL)isDeeplinkValid:(NSURL *)url; + (NSString *)sdkVersion; -+ (NSString *)readMCC; ++ (void)updateSkAdNetworkConversionValue:(NSNumber *)conversionValue; + ++ (Class)adSupportManager; -+ (NSString *)readMNC; ++ (Class)appTrackingManager; -+ (NSString *)readCurrentRadioAccessTechnology; ++ (BOOL)trackingEnabled; -+ (void)updateSkAdNetworkConversionValue:(NSNumber *)conversionValue; ++ (NSString *)idfa; + ++ (NSString *)idfv; + ++ (NSString *)fbAnonymousId; + ++ (NSString *)deviceType; + ++ (NSString *)deviceName; + ++ (NSUInteger)startedAt; + ++ (int)attStatus; + ++ (NSString *)fetchAdServicesAttribution:(NSError **)errorPtr; + ++ (void)checkForiAd:(ADJActivityHandler *)activityHandler queue:(dispatch_queue_t)queue; + ++ (BOOL)setiAdWithDetails:(ADJActivityHandler *)activityHandler + adClientSharedInstance:(id)ADClientSharedClientInstance + queue:(dispatch_queue_t)queue; + ++ (void)requestTrackingAuthorizationWithCompletionHandler:(void (^)(NSUInteger status))completion; + ++ (NSString *)bundleIdentifier; + ++ (NSString *)buildNumber; + ++ (NSString *)versionNumber; + ++ (NSString *)osVersion; + ++ (NSString *)installedAt; @end diff --git a/Adjust/ADJUtil.m b/Adjust/ADJUtil.m index d77f1b3b1..8a0312801 100644 --- a/Adjust/ADJUtil.m +++ b/Adjust/ADJUtil.m @@ -3,41 +3,43 @@ // Adjust SDK // // Created by Christian Wellenbrock (@wellle) on 5th July 2013. -// Copyright (c) 2013-2018 Adjust GmbH. All rights reserved. +// Copyright (c) 2013-2021 Adjust GmbH. All rights reserved. // #include +#include #include #include + #import +#import +#import +#import + +#import #import "ADJUtil.h" #import "ADJLogger.h" -#import "ADJReachability.h" #import "ADJResponseData.h" #import "ADJAdjustFactory.h" -#import "UIDevice+ADJAdditions.h" #import "NSString+ADJAdditions.h" -#if !TARGET_OS_TV && !TARGET_OS_MACCATALYST -#import -#import +#if !ADJUST_NO_IDFA +#import +#endif + +#if !ADJUST_NO_IAD && !TARGET_OS_TV +#import #endif static NSString *userAgent = nil; -static ADJReachability *reachability = nil; static NSRegularExpression *universalLinkRegex = nil; static NSNumberFormatter *secondsNumberFormatter = nil; static NSRegularExpression *optionalRedirectRegex = nil; static NSRegularExpression *shortUniversalLinkRegex = nil; static NSRegularExpression *excludedDeeplinkRegex = nil; -#if !TARGET_OS_TV && !TARGET_OS_MACCATALYST -static CTCarrier *carrier = nil; -static CTTelephonyNetworkInfo *networkInfo = nil; -#endif - -static NSString * const kClientSdk = @"ios4.28.0"; +static NSString * const kClientSdk = @"ios4.29.0"; static NSString * const kDeeplinkParam = @"deep_link="; static NSString * const kSchemeDelimiter = @"://"; static NSString * const kDefaultScheme = @"AdjustUniversalScheme"; @@ -59,23 +61,13 @@ + (void)initialize { [self initializeShortUniversalLinkRegex]; [self initializeOptionalRedirectRegex]; [self initializeExcludedDeeplinkRegex]; - [self initializeReachability]; -#if !TARGET_OS_TV && !TARGET_OS_MACCATALYST - [self initializeNetworkInfoAndCarrier]; -#endif } + (void)teardown { - reachability = nil; universalLinkRegex = nil; secondsNumberFormatter = nil; optionalRedirectRegex = nil; shortUniversalLinkRegex = nil; -#if !TARGET_OS_TV && !TARGET_OS_MACCATALYST - networkInfo = nil; - carrier = nil; -#endif - } + (void)initializeUniversalLinkRegex { @@ -131,31 +123,6 @@ + (void)initializeSecondsNumberFormatter { [secondsNumberFormatter setPositiveFormat:@"0.0"]; } -#if !TARGET_OS_TV && !TARGET_OS_MACCATALYST -+ (void)initializeNetworkInfoAndCarrier { - networkInfo = [[CTTelephonyNetworkInfo alloc] init]; - - if (@available(iOS 12.0, *)) { - NSString *currentRadioAccess = networkInfo.serviceCurrentRadioAccessTechnology.allKeys.firstObject; - if (currentRadioAccess) { - carrier = networkInfo.serviceSubscriberCellularProviders[currentRadioAccess]; - } - } - - if (!carrier) { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdeprecated-declarations" - carrier = [networkInfo subscriberCellularProvider]; -#pragma clang diagnostic pop - } -} -#endif - -+ (void)initializeReachability { - reachability = [ADJReachability reachabilityForInternetConnection]; - [reachability startNotifier]; -} - + (void)updateUrlSessionConfiguration:(ADJConfig *)config { userAgent = config.userAgent; } @@ -183,7 +150,6 @@ + (NSDateFormatter *)getDateFormatter { } dateFormatter.calendar = [NSCalendar calendarWithIdentifier:calendarIdentifier]; } - dateFormatter.locale = [NSLocale systemLocale]; [dateFormatter setDateFormat:kDateFormat]; return dateFormatter; @@ -404,11 +370,41 @@ + (void)writeObject:(id)object } + (BOOL)migrateFileFromPath:(NSString *)oldPath toPath:(NSString *)newPath { - NSError *errorCopy; - [[NSFileManager defaultManager] copyItemAtPath:oldPath toPath:newPath error:&errorCopy]; - if (errorCopy != nil) { + __autoreleasing NSError *error; + __autoreleasing NSError **errorPointer = &error; + Class class = NSClassFromString([NSString adjJoin:@"N", @"S", @"file", @"manager", nil]); + if (class == nil) { + return NO; + } + NSString *keyDm = [NSString adjJoin:@"default", @"manager", nil]; + SEL selDm = NSSelectorFromString(keyDm); + if (![class respondsToSelector:selDm]) { + return NO; + } +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" + id man = [class performSelector:selDm]; +#pragma clang diagnostic pop + NSString *keyCpy = [NSString stringWithFormat:@"%@%@%@", + [NSString adjJoin:@"copy", @"item", @"at", @"path", @":", nil], + [NSString adjJoin:@"to", @"path", @":", nil], + [NSString adjJoin:@"error", @":", nil]]; + SEL selCpy = NSSelectorFromString(keyCpy); + if (![man respondsToSelector:selCpy]) { + return NO; + } + + NSInvocation *inv = [NSInvocation invocationWithMethodSignature:[man methodSignatureForSelector:selCpy]]; + [inv setSelector:selCpy]; + [inv setTarget:man]; + [inv setArgument:&oldPath atIndex:2]; + [inv setArgument:&newPath atIndex:3]; + [inv setArgument:&errorPointer atIndex:4]; + [inv invoke]; + + if (error != nil) { [[ADJAdjustFactory logger] error:@"Error while copying from %@ to %@", oldPath, newPath]; - [[ADJAdjustFactory logger] error:[errorCopy description]]; + [[ADJAdjustFactory logger] error:[error description]]; return NO; } // Migration successful. @@ -443,10 +439,53 @@ + (NSString *)getFilePathInAppSupportDir:(NSString *)fileName { + (BOOL)checkForDirectoryPresenceInPath:(NSString *)path forFolder:(NSString *)folderName { // Check for presence of directory first. // If it doesn't exist, make one. - if (![[NSFileManager defaultManager] fileExistsAtPath:path]) { + Class class = NSClassFromString([NSString adjJoin:@"N", @"S", @"file", @"manager", nil]); + if (class == nil) { + return NO; + } + NSString *keyDm = [NSString adjJoin:@"default", @"manager", nil]; + SEL selDm = NSSelectorFromString(keyDm); + if (![class respondsToSelector:selDm]) { + return NO; + } +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" + id man = [class performSelector:selDm]; +#pragma clang diagnostic pop + NSString *keyExi = [NSString adjJoin:@"file", @"exists", @"at", @"path", @":", nil]; + SEL selExi = NSSelectorFromString(keyExi); + if (![man respondsToSelector:selExi]) { + return NO; + } +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" + BOOL exists = (BOOL)[man performSelector:selExi withObject:path]; +#pragma clang diagnostic pop + if (!exists) { [[ADJAdjustFactory logger] debug:@"%@ directory not present and will be created", folderName]; - NSError *error; - [[NSFileManager defaultManager] createDirectoryAtPath:path withIntermediateDirectories:NO attributes:nil error:&error]; + BOOL withIntermediateDirectories = NO; + NSDictionary *attributes = nil; + __autoreleasing NSError *error; + __autoreleasing NSError **errorPointer = &error; + NSString *keyCrt = [NSString stringWithFormat:@"%@%@%@%@", + [NSString adjJoin:@"create", @"directory", @"at", @"path", @":", nil], + [NSString adjJoin:@"with", @"intermediate", @"directories", @":", nil], + [NSString adjJoin:@"attributes", @":", nil], + [NSString adjJoin:@"error", @":", nil]]; + SEL selCrt = NSSelectorFromString(keyCrt); + if (![man respondsToSelector:selCrt]) { + return NO; + } + + NSInvocation *inv = [NSInvocation invocationWithMethodSignature:[man methodSignatureForSelector:selCrt]]; + [inv setSelector:selCrt]; + [inv setTarget:man]; + [inv setArgument:&path atIndex:2]; + [inv setArgument:&withIntermediateDirectories atIndex:3]; + [inv setArgument:&attributes atIndex:4]; + [inv setArgument:&errorPointer atIndex:5]; + [inv invoke]; + if (error != nil) { [[ADJAdjustFactory logger] error:@"Error while creating %@ directory", path]; [[ADJAdjustFactory logger] error:[error description]]; @@ -521,47 +560,6 @@ + (NSDictionary *)convertDictionaryValues:(NSDictionary *)dictionary { return convertedDictionary; } -+ (NSString *)idfa { - return [[UIDevice currentDevice] adjIdForAdvertisers]; -} - -+ (NSString *)getUpdateTime { - NSDate *updateTime = nil; - id logger = ADJAdjustFactory.logger; - @try { - __autoreleasing NSError *error; - NSString *infoPlistPath = [[NSBundle mainBundle] pathForResource:@"Info" ofType:@"plist"]; - updateTime = [[[NSFileManager defaultManager] attributesOfItemAtPath:infoPlistPath error:&error] objectForKey:NSFileModificationDate]; - } @catch (NSException *exception) { - [logger error:@"Error while trying to check update date. Exception: %@", exception]; - } - return [ADJUtil formatDate:updateTime]; -} - -+ (NSString *)getInstallTime { - id logger = ADJAdjustFactory.logger; - NSDate *installTime = nil; - NSString *pathToCheck = nil; - NSSearchPathDirectory folderToCheck = NSDocumentDirectory; -#if TARGET_OS_TV - folderToCheck = NSCachesDirectory; -#endif - @try { - NSArray *paths = NSSearchPathForDirectoriesInDomains(folderToCheck, NSUserDomainMask, YES); - if (paths.count > 0) { - pathToCheck = [paths objectAtIndex:0]; - } else { - // There's no NSDocumentDirectory (or NSCachesDirectory). - // Check app's bundle creation date instead. - pathToCheck = [[NSBundle mainBundle] bundlePath]; - } - installTime = [[NSFileManager defaultManager] attributesOfItemAtPath:pathToCheck error:nil][NSFileCreationDate]; - } @catch (NSException *exception) { - [logger error:@"Error while trying to check install date. Exception: %@", exception]; - } - return [ADJUtil formatDate:installTime]; -} - + (NSURL *)convertUniversalLink:(NSURL *)url scheme:(NSString *)scheme { id logger = ADJAdjustFactory.logger; @@ -828,13 +826,52 @@ + (BOOL)deleteFileWithName:(NSString *)fileName { } + (BOOL)deleteFileInPath:(NSString *)filePath { - NSError *error; - if (![[NSFileManager defaultManager] fileExistsAtPath:filePath]) { + Class class = NSClassFromString([NSString adjJoin:@"N", @"S", @"file", @"manager", nil]); + if (class == nil) { + return NO; + } + NSString *keyDm = [NSString adjJoin:@"default", @"manager", nil]; + SEL selDm = NSSelectorFromString(keyDm); + if (![class respondsToSelector:selDm]) { + return NO; + } +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" + id man = [class performSelector:selDm]; +#pragma clang diagnostic pop + NSString *keyExi = [NSString adjJoin:@"file", @"exists", @"at", @"path", @":", nil]; + SEL selExi = NSSelectorFromString(keyExi); + if (![man respondsToSelector:selExi]) { + return NO; + } +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" + BOOL exists = (BOOL)[man performSelector:selExi withObject:filePath]; +#pragma clang diagnostic pop + if (!exists) { // [[ADJAdjustFactory logger] verbose:@"File does not exist at path %@", filePath]; return YES; } - BOOL deleted = [[NSFileManager defaultManager] removeItemAtPath:filePath error:&error]; + __autoreleasing NSError *error; + __autoreleasing NSError **errorPointer = &error; + NSString *keyRm = [NSString stringWithFormat:@"%@%@", + [NSString adjJoin:@"remove", @"item", @"at", @"path", @":", nil], + [NSString adjJoin:@"error", @":", nil]]; + SEL selRm = NSSelectorFromString(keyRm); + if (![man respondsToSelector:selRm]) { + return NO; + } + + NSInvocation *inv = [NSInvocation invocationWithMethodSignature:[man methodSignatureForSelector:selRm]]; + [inv setSelector:selRm]; + [inv setTarget:man]; + [inv setArgument:&filePath atIndex:2]; + [inv setArgument:&errorPointer atIndex:3]; + [inv invoke]; + BOOL deleted; + [inv getReturnValue:&deleted]; + if (!deleted) { [[ADJAdjustFactory logger] verbose:@"Unable to delete file at path %@", filePath]; } @@ -957,13 +994,6 @@ + (BOOL)contains:(NSDictionary *)dictionary return [value isEqualToString:[readValue description]]; } -+ (NSNumber *)readReachabilityFlags { - if (reachability == nil) { - return nil; - } - return [reachability currentReachabilityFlags]; -} - + (BOOL)isDeeplinkValid:(NSURL *)url { if (url == nil) { return NO; @@ -992,70 +1022,485 @@ + (NSString *)sdkVersion { return kClientSdk; } -+ (NSString *)readMCC { -#if TARGET_OS_TV || TARGET_OS_MACCATALYST - return nil; ++ (void)updateSkAdNetworkConversionValue:(NSNumber *)conversionValue { + id logger = [ADJAdjustFactory logger]; + + Class skAdNetwork = NSClassFromString(@"SKAdNetwork"); + if (skAdNetwork == nil) { + [logger warn:@"StoreKit framework not found in user's app (SKAdNetwork not found)"]; + return; + } + + SEL updateConversionValueSelector = NSSelectorFromString(@"updateConversionValue:"); + if ([skAdNetwork respondsToSelector:updateConversionValueSelector]) { + NSInteger intValue = [conversionValue integerValue]; + + NSMethodSignature *conversionValueMethodSignature = [skAdNetwork methodSignatureForSelector:updateConversionValueSelector]; + NSInvocation *conversionInvocation = [NSInvocation invocationWithMethodSignature:conversionValueMethodSignature]; + [conversionInvocation setSelector:updateConversionValueSelector]; + [conversionInvocation setTarget:skAdNetwork]; + + [conversionInvocation setArgument:&intValue atIndex:2]; + [conversionInvocation invoke]; + + [logger verbose:@"Call to SKAdNetwork's updateConversionValue: method made with value %d", intValue]; + } +} + ++ (Class)adSupportManager { + NSString *className = [NSString adjJoin:@"A", @"S", @"identifier", @"manager", nil]; + Class class = NSClassFromString(className); + return class; +} + ++ (Class)appTrackingManager { + NSString *className = [NSString adjJoin:@"A", @"T", @"tracking", @"manager", nil]; + Class class = NSClassFromString(className); + return class; +} + ++ (BOOL)trackingEnabled { +#if ADJUST_NO_IDFA + return NO; #else - if (carrier == nil) { - return nil; + // return [[ASIdentifierManager sharedManager] isAdvertisingTrackingEnabled]; + Class adSupportClass = [ADJUtil adSupportManager]; + if (adSupportClass == nil) { + return NO; + } + + NSString *keyManager = [NSString adjJoin:@"shared", @"manager", nil]; + SEL selManager = NSSelectorFromString(keyManager); + if (![adSupportClass respondsToSelector:selManager]) { + return NO; + } +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" + id manager = [adSupportClass performSelector:selManager]; + NSString *keyEnabled = [NSString adjJoin:@"is", @"advertising", @"tracking", @"enabled", nil]; + SEL selEnabled = NSSelectorFromString(keyEnabled); + if (![manager respondsToSelector:selEnabled]) { + return NO; } - return [carrier mobileCountryCode]; + BOOL enabled = (BOOL)[manager performSelector:selEnabled]; + return enabled; +#pragma clang diagnostic pop #endif } -+ (NSString *)readMNC { -#if TARGET_OS_TV || TARGET_OS_MACCATALYST - return nil; ++ (NSString *)idfa { +#if ADJUST_NO_IDFA + return @""; #else - if (carrier == nil) { - return nil; + // return [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString]; + Class adSupportClass = [ADJUtil adSupportManager]; + if (adSupportClass == nil) { + return @""; } - return [carrier mobileNetworkCode]; +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" + NSString *keyManager = [NSString adjJoin:@"shared", @"manager", nil]; + SEL selManager = NSSelectorFromString(keyManager); + if (![adSupportClass respondsToSelector:selManager]) { + return @""; + } + id manager = [adSupportClass performSelector:selManager]; + NSString *keyIdentifier = [NSString adjJoin:@"advertising", @"identifier", nil]; + SEL selIdentifier = NSSelectorFromString(keyIdentifier); + if (![manager respondsToSelector:selIdentifier]) { + return @""; + } + id identifier = [manager performSelector:selIdentifier]; + NSString *keyString = [NSString adjJoin:@"UUID", @"string", nil]; + SEL selString = NSSelectorFromString(keyString); + if (![identifier respondsToSelector:selString]) { + return @""; + } + NSString *string = [identifier performSelector:selString]; + return string; +#pragma clang diagnostic pop #endif } -+ (NSString *)readCurrentRadioAccessTechnology { -#if TARGET_OS_TV || TARGET_OS_MACCATALYST - return nil; -#else - if (networkInfo == nil) { ++ (NSString *)idfv { + Class class = NSClassFromString([NSString adjJoin:@"U", @"I", @"device", nil]); + if (class == nil) { return nil; } - SEL radioTechSelector = NSSelectorFromString(@"currentRadioAccessTechnology"); - if (![networkInfo respondsToSelector:radioTechSelector]) { + NSString *keyCd = [NSString adjJoin:@"current", @"device", nil]; + SEL selCd = NSSelectorFromString(keyCd); + if (![class respondsToSelector:selCd]) { + return nil; + } +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" + id dev = [class performSelector:selCd]; +#pragma clang diagnostic pop + NSString *keyIfv = [NSString adjJoin:@"identifier", @"for", @"vendor", nil]; + SEL selIfv = NSSelectorFromString(keyIfv); + if (![dev respondsToSelector:selIfv]) { return nil; } #pragma clang diagnostic push #pragma clang diagnostic ignored "-Warc-performSelector-leaks" - id radioTech = [networkInfo performSelector:radioTechSelector]; + NSUUID *uuid = (NSUUID *)[dev performSelector:selIfv]; #pragma clang diagnostic pop - return radioTech; + if (uuid == nil) { + return nil; + } + return [uuid UUIDString]; +} + ++ (NSString *)fbAnonymousId { +#if TARGET_OS_TV + return @""; +#else + // pre FB SDK v6.0.0 + // return [FBSDKAppEventsUtility retrievePersistedAnonymousID]; + // post FB SDK v6.0.0 + // return [FBSDKBasicUtility retrievePersistedAnonymousID]; + Class class = nil; + SEL selGetId = NSSelectorFromString(@"retrievePersistedAnonymousID"); + class = NSClassFromString(@"FBSDKBasicUtility"); + if (class != nil) { + if ([class respondsToSelector:selGetId]) { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" + NSString *fbAnonymousId = (NSString *)[class performSelector:selGetId]; + return fbAnonymousId; +#pragma clang diagnostic pop + } + } + class = NSClassFromString(@"FBSDKAppEventsUtility"); + if (class != nil) { + if ([class respondsToSelector:selGetId]) { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" + NSString *fbAnonymousId = (NSString *)[class performSelector:selGetId]; + return fbAnonymousId; +#pragma clang diagnostic pop + } + } + return @""; #endif } -+ (void)updateSkAdNetworkConversionValue:(NSNumber *)conversionValue { ++ (NSString *)deviceType { + Class class = NSClassFromString([NSString adjJoin:@"U", @"I", @"device", nil]); + if (class == nil) { + return nil; + } + NSString *keyCd = [NSString adjJoin:@"current", @"device", nil]; + SEL selCd = NSSelectorFromString(keyCd); + if (![class respondsToSelector:selCd]) { + return nil; + } +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" + id dev = [class performSelector:selCd]; +#pragma clang diagnostic pop + NSString *keyM = [NSString adjJoin:@"model", nil]; + SEL selM = NSSelectorFromString(keyM); + if (![dev respondsToSelector:selM]) { + return nil; + } +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" + return (NSString *)[dev performSelector:selM]; +#pragma clang diagnostic pop +} + ++ (NSString *)deviceName { + struct utsname systemInfo; + uname(&systemInfo); + return @(systemInfo.machine); +} + ++ (NSUInteger)startedAt { + int MIB_SIZE = 2; + int mib[MIB_SIZE]; + size_t size; + struct timeval starttime; + mib[0] = CTL_KERN; + mib[1] = KERN_BOOTTIME; + size = sizeof(starttime); + + NSString *m = [[NSString adjJoin:@"s", @"ys", @"ct", @"l", nil] lowercaseString]; + int (*fptr)(int *, u_int, void *, size_t *, void *, size_t); + *(int**)(&fptr) = dlsym(RTLD_SELF, [m UTF8String]); + if (fptr) { + if ((*fptr)(mib, MIB_SIZE, &starttime, &size, NULL, 0) != -1) { + NSDate *startDate = [NSDate dateWithTimeIntervalSince1970:starttime.tv_sec]; + return (NSUInteger)round([startDate timeIntervalSince1970]); + } + } + + return 0; +} + ++ (int)attStatus { + Class appTrackingClass = [self appTrackingManager]; + if (appTrackingClass != nil) { + NSString *keyAuthorization = [NSString adjJoin:@"tracking", @"authorization", @"status", nil]; + SEL selAuthorization = NSSelectorFromString(keyAuthorization); + if ([appTrackingClass respondsToSelector:selAuthorization]) { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wunguarded-availability" +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" + return (int)[appTrackingClass performSelector:selAuthorization]; +#pragma clang diagnostic pop + } + } + return -1; +} + ++ (NSString *)fetchAdServicesAttribution:(NSError **)errorPtr { id logger = [ADJAdjustFactory logger]; + + // [AAAttribution attributionTokenWithError:...] + Class attributionClass = NSClassFromString(@"AAAttribution"); + if (attributionClass == nil) { + [logger warn:@"AdServices framework not found in user's app (AAAttribution not found)"]; + if (errorPtr) { + *errorPtr = [NSError errorWithDomain:@"com.adjust.sdk.adServices" + code:100 + userInfo:@{@"Error reason": @"AdServices framework not found"}]; + } + return nil; + } + + SEL attributionTokenSelector = NSSelectorFromString(@"attributionTokenWithError:"); + if (![attributionClass respondsToSelector:attributionTokenSelector]) { + if (errorPtr) { + *errorPtr = [NSError errorWithDomain:@"com.adjust.sdk.adServices" + code:100 + userInfo:@{@"Error reason": @"AdServices framework not found"}]; + } + return nil; + } - Class skAdNetwork = NSClassFromString(@"SKAdNetwork"); - if (skAdNetwork == nil) { - [logger warn:@"StoreKit framework not found in user's app (SKAdNetwork not found)"]; + NSMethodSignature *attributionTokenMethodSignature = [attributionClass methodSignatureForSelector:attributionTokenSelector]; + NSInvocation *tokenInvocation = [NSInvocation invocationWithMethodSignature:attributionTokenMethodSignature]; + [tokenInvocation setSelector:attributionTokenSelector]; + [tokenInvocation setTarget:attributionClass]; + __autoreleasing NSError *error; + __autoreleasing NSError **errorPointer = &error; + [tokenInvocation setArgument:&errorPointer atIndex:2]; + [tokenInvocation invoke]; + + if (error) { + [logger error:@"Error while retrieving AdServices attribution token: %@", error]; + if (errorPtr) { + *errorPtr = error; + } + return nil; + } + + NSString * __unsafe_unretained tmpToken = nil; + [tokenInvocation getReturnValue:&tmpToken]; + NSString *token = tmpToken; + return token; +} + ++ (void)checkForiAd:(ADJActivityHandler *)activityHandler queue:(dispatch_queue_t)queue { + // if no tries for iAd v3 left, stop trying + id logger = [ADJAdjustFactory logger]; + +#if ADJUST_NO_IAD || TARGET_OS_TV + [logger debug:@"ADJUST_NO_IAD or TARGET_OS_TV set"]; + return; +#else + [logger debug:@"ADJUST_NO_IAD or TARGET_OS_TV not set"]; + + // [[ADClient sharedClient] ...] + Class ADClientClass = NSClassFromString(@"ADClient"); + if (ADClientClass == nil) { + [logger warn:@"iAd framework not found in user's app (ADClientClass not found)"]; return; } - - SEL updateConversionValueSelector = NSSelectorFromString(@"updateConversionValue:"); - if ([skAdNetwork respondsToSelector:updateConversionValueSelector]) { - NSInteger intValue = [conversionValue integerValue]; - - NSMethodSignature *conversionValueMethodSignature = [skAdNetwork methodSignatureForSelector:updateConversionValueSelector]; - NSInvocation *conversionInvocation = [NSInvocation invocationWithMethodSignature:conversionValueMethodSignature]; - [conversionInvocation setSelector:updateConversionValueSelector]; - [conversionInvocation setTarget:skAdNetwork]; +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" + SEL sharedClientSelector = NSSelectorFromString(@"sharedClient"); + if (![ADClientClass respondsToSelector:sharedClientSelector]) { + [logger warn:@"iAd framework not found in user's app (sharedClient method not found)"]; + return; + } + id ADClientSharedClientInstance = [ADClientClass performSelector:sharedClientSelector]; + if (ADClientSharedClientInstance == nil) { + [logger warn:@"iAd framework not found in user's app (ADClientSharedClientInstance is nil)"]; + return; + } + [logger debug:@"iAd framework successfully found in user's app"]; + BOOL iAdInformationAvailable = [ADJUtil setiAdWithDetails:activityHandler + adClientSharedInstance:ADClientSharedClientInstance + queue:queue]; + if (!iAdInformationAvailable) { + [logger warn:@"iAd information not available"]; + return; + } +#pragma clang diagnostic pop +#endif +} - [conversionInvocation setArgument:&intValue atIndex:2]; - [conversionInvocation invoke]; - - [logger verbose:@"Call to SKAdNetwork's updateConversionValue: method made with value %d", intValue]; ++ (BOOL)setiAdWithDetails:(ADJActivityHandler *)activityHandler + adClientSharedInstance:(id)ADClientSharedClientInstance + queue:(dispatch_queue_t)queue { + SEL iAdDetailsSelector = NSSelectorFromString(@"requestAttributionDetailsWithBlock:"); + if (![ADClientSharedClientInstance respondsToSelector:iAdDetailsSelector]) { + return NO; } + + __block Class lock = [ADJActivityHandler class]; + __block BOOL completed = NO; +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" + [ADClientSharedClientInstance performSelector:iAdDetailsSelector + withObject:^(NSDictionary *attributionDetails, NSError *error) { + @synchronized (lock) { + if (completed) { + return; + } else { + completed = YES; + } + } + [activityHandler setAttributionDetails:attributionDetails + error:error]; + }]; +#pragma clang diagnostic pop + + // 5 seconds of timeout + dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(5.0 * NSEC_PER_SEC)), queue, ^{ + @synchronized (lock) { + if (completed) { + return; + } else { + completed = YES; + } + } + [activityHandler setAttributionDetails:nil + error:[NSError errorWithDomain:@"com.adjust.sdk.iAd" + code:100 + userInfo:@{@"Error reason": @"iAd request timed out"}]]; + }); + return YES; +} + ++ (void)requestTrackingAuthorizationWithCompletionHandler:(void (^)(NSUInteger status))completion { + Class appTrackingClass = [self appTrackingManager]; + if (appTrackingClass == nil) { + return; + } + NSString *requestAuthorization = [NSString adjJoin: + @"request", + @"tracking", + @"authorization", + @"with", + @"completion", + @"handler:", nil]; + SEL selRequestAuthorization = NSSelectorFromString(requestAuthorization); + if (![appTrackingClass respondsToSelector:selRequestAuthorization]) { + return; + } +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wunguarded-availability" +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" + [appTrackingClass performSelector:selRequestAuthorization withObject:completion]; +#pragma clang diagnostic pop +} + ++ (NSString *)bundleIdentifier { + return [[NSBundle mainBundle] bundleIdentifier]; +} + ++ (NSString *)buildNumber { + NSDictionary *infoDictionary = [[NSBundle mainBundle] infoDictionary]; + return [infoDictionary objectForKey:@"CFBundleVersion"]; +} + ++ (NSString *)versionNumber { + NSDictionary *infoDictionary = [[NSBundle mainBundle] infoDictionary]; + return [infoDictionary objectForKey:@"CFBundleShortVersionString"]; +} + ++ (NSString *)osVersion { + Class class = NSClassFromString([NSString adjJoin:@"U", @"I", @"device", nil]); + if (class == nil) { + return nil; + } + NSString *keyCd = [NSString adjJoin:@"current", @"device", nil]; + SEL selCd = NSSelectorFromString(keyCd); + if (![class respondsToSelector:selCd]) { + return nil; + } +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" + id dev = [class performSelector:selCd]; +#pragma clang diagnostic pop + NSString *keySv = [NSString adjJoin:@"system", @"version", nil]; + SEL selSv = NSSelectorFromString(keySv); + if (![dev respondsToSelector:selSv]) { + return nil; + } +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" + return (NSString *)[dev performSelector:selSv]; +#pragma clang diagnostic pop +} + ++ (NSString *)installedAt { + id logger = ADJAdjustFactory.logger; + NSDate *installTime = nil; + NSString *pathToCheck = nil; + NSSearchPathDirectory folderToCheck = NSDocumentDirectory; +#if TARGET_OS_TV + folderToCheck = NSCachesDirectory; +#endif + @try { + NSArray *paths = NSSearchPathForDirectoriesInDomains(folderToCheck, NSUserDomainMask, YES); + if (paths.count > 0) { + pathToCheck = [paths objectAtIndex:0]; + } else { + pathToCheck = [[NSBundle mainBundle] bundlePath]; + } + + installTime = [[NSFileManager defaultManager] attributesOfItemAtPath:pathToCheck error:nil][NSFileCreationDate]; + __autoreleasing NSError *error; + __autoreleasing NSError **errorPointer = &error; + Class class = NSClassFromString([NSString adjJoin:@"N", @"S", @"file", @"manager", nil]); + if (class != nil) { + NSString *keyDm = [NSString adjJoin:@"default", @"manager", nil]; + SEL selDm = NSSelectorFromString(keyDm); + if ([class respondsToSelector:selDm]) { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" + id man = [class performSelector:selDm]; +#pragma clang diagnostic pop + NSString *keyChk = [NSString stringWithFormat:@"%@%@", + [NSString adjJoin:@"attributes", @"of", @"item", @"at", @"path", @":", nil], + [NSString adjJoin:@"error", @":", nil]]; + SEL selChk = NSSelectorFromString(keyChk); + if ([man respondsToSelector:selChk]) { + NSInvocation *inv = [NSInvocation invocationWithMethodSignature:[man methodSignatureForSelector:selChk]]; + [inv setSelector:selChk]; + [inv setTarget:man]; + [inv setArgument:&pathToCheck atIndex:2]; + [inv setArgument:&errorPointer atIndex:3]; + [inv invoke]; + NSMutableDictionary * __unsafe_unretained tmpResult; + [inv getReturnValue:&tmpResult]; + NSMutableDictionary *result = tmpResult; + CFStringRef *indexRef = dlsym(RTLD_SELF, [[NSString adjJoin:@"N", @"S", @"file", @"creation", @"date", nil] UTF8String]); + NSString *ref = (__bridge_transfer id) *indexRef; + installTime = result[ref]; + } + } + } + } @catch (NSException *exception) { + [logger error:@"Error while trying to check install date. Exception: %@", exception]; + return nil; + } + + return [ADJUtil formatDate:installTime]; } @end diff --git a/Adjust/Adjust.h b/Adjust/Adjust.h index efe4dee1c..f57823695 100644 --- a/Adjust/Adjust.h +++ b/Adjust/Adjust.h @@ -1,10 +1,10 @@ // // Adjust.h -// Adjust +// Adjust SDK // -// V4.28.0 -// Created by Christian Wellenbrock (wellle) on 23rd July 2013. -// Copyright © 2012-2017 Adjust GmbH. All rights reserved. +// V4.29.0 +// Created by Christian Wellenbrock (@wellle) on 23rd July 2013. +// Copyright (c) 2012-2021 Adjust GmbH. All rights reserved. // #import "ADJEvent.h" @@ -12,6 +12,7 @@ #import "ADJAttribution.h" #import "ADJSubscription.h" #import "ADJThirdPartySharing.h" +#import "ADJAdRevenue.h" @interface AdjustTestOptions : NSObject @@ -34,7 +35,7 @@ @end /** - * Constants for our supported tracking environments + * Constants for our supported tracking environments. */ extern NSString * __nonnull const ADJEnvironmentSandbox; extern NSString * __nonnull const ADJEnvironmentProduction; @@ -42,32 +43,18 @@ extern NSString * __nonnull const ADJEnvironmentProduction; /** * Constants for supported ad revenue sources. */ +extern NSString * __nonnull const ADJAdRevenueSourceAppLovinMAX; extern NSString * __nonnull const ADJAdRevenueSourceMopub; -extern NSString * __nonnull const ADJAdRevenueSourceAdmob; -extern NSString * __nonnull const ADJAdRevenueSourceFbNativeAd; -extern NSString * __nonnull const ADJAdRevenueSourceFbAudienceNetwork; -extern NSString * __nonnull const ADJAdRevenueSourceIronsource; -extern NSString * __nonnull const ADJAdRevenueSourceFyber; -extern NSString * __nonnull const ADJAdRevenueSourceAerserv; -extern NSString * __nonnull const ADJAdRevenueSourceAppodeal; -extern NSString * __nonnull const ADJAdRevenueSourceAdincube; -extern NSString * __nonnull const ADJAdRevenueSourceFusePowered; -extern NSString * __nonnull const ADJAdRevenueSourceAddaptr; -extern NSString * __nonnull const ADJAdRevenueSourceMillennialMeditation; -extern NSString * __nonnull const ADJAdRevenueSourceFlurry; -extern NSString * __nonnull const ADJAdRevenueSourceAdmost; -extern NSString * __nonnull const ADJAdRevenueSourceDeltadna; -extern NSString * __nonnull const ADJAdRevenueSourceUpsight; -extern NSString * __nonnull const ADJAdRevenueSourceUnityads; -extern NSString * __nonnull const ADJAdRevenueSourceAdtoapp; -extern NSString * __nonnull const ADJAdRevenueSourceTapdaq; - -/** - * Constants for country apps url strategies. +extern NSString * __nonnull const ADJAdRevenueSourceAdMob; +extern NSString * __nonnull const ADJAdRevenueSourceIronSource; + +/** + * Constants for country app's URL strategies. */ extern NSString * __nonnull const ADJUrlStrategyIndia; extern NSString * __nonnull const ADJUrlStrategyChina; extern NSString * __nonnull const ADJDataResidencyEU; +extern NSString * __nonnull const ADJDataResidencyTR; /** * @brief The main interface to Adjust. @@ -277,10 +264,27 @@ extern NSString * __nonnull const ADJDataResidencyEU; */ + (void)disableThirdPartySharing; +/** + * @brief Track third paty sharing with possibility to allow or disallow it. + * + * @param thirdPartySharing Third party sharing choice. + */ + (void)trackThirdPartySharing:(nonnull ADJThirdPartySharing *)thirdPartySharing; +/** + * @brief Track measurement consent. + * + * @param enabled Value of the consent. + */ + (void)trackMeasurementConsent:(BOOL)enabled; +/** + * @brief Track ad revenue. + * + * @param adRevenue Ad revenue object instance containing all the relevant ad revenue tracking data. + */ ++ (void)trackAdRevenue:(nonnull ADJAdRevenue *)adRevenue; + /** * @brief Track subscription. * @@ -288,19 +292,37 @@ extern NSString * __nonnull const ADJDataResidencyEU; */ + (void)trackSubscription:(nonnull ADJSubscription *)subscription; +/** + * @brief Adjust wrapper for requestTrackingAuthorizationWithCompletionHandler: method. + * + * @param completion Block which value of tracking authorization status will be delivered to. + */ + (void)requestTrackingAuthorizationWithCompletionHandler:(void (^_Nullable)(NSUInteger status))completion; +/** + * @brief Getter for app tracking authorization status. + * + * return Value of app tracking authorization status. + */ + (int)appTrackingAuthorizationStatus; +/** + * @brief Adjust wrapper for updateConversionValue: method. + * + * @param conversionValue Conversion value you would like SDK to set for given user. + */ + (void)updateConversionValue:(NSInteger)conversionValue; +/** + * @brief Method used for internal testing only. Don't use it in production. + */ ++ (void)setTestOptions:(nullable AdjustTestOptions *)testOptions; + /** * Obtain singleton Adjust object. */ + (nullable id)getInstance; -+ (void)setTestOptions:(nullable AdjustTestOptions *)testOptions; - - (void)appDidLaunch:(nullable ADJConfig *)adjustConfig; - (void)trackEvent:(nullable ADJEvent *)event; @@ -359,4 +381,10 @@ extern NSString * __nonnull const ADJDataResidencyEU; - (void)updateConversionValue:(NSInteger)conversionValue; +- (void)trackThirdPartySharing:(nonnull ADJThirdPartySharing *)thirdPartySharing; + +- (void)trackMeasurementConsent:(BOOL)enabled; + +- (void)trackAdRevenue:(nonnull ADJAdRevenue *)adRevenue; + @end diff --git a/Adjust/Adjust.m b/Adjust/Adjust.m index 208e35343..41d2faab2 100644 --- a/Adjust/Adjust.m +++ b/Adjust/Adjust.m @@ -1,9 +1,9 @@ // // Adjust.m -// Adjust +// Adjust SDK // -// Created by Christian Wellenbrock (wellle) on 23rd July 2013. -// Copyright © 2012-2017 Adjust GmbH. All rights reserved. +// Created by Christian Wellenbrock (@wellle) on 23rd July 2013. +// Copyright (c) 2012-2021 Adjust GmbH. All rights reserved. // #import "Adjust.h" @@ -12,7 +12,6 @@ #import "ADJUserDefaults.h" #import "ADJAdjustFactory.h" #import "ADJActivityHandler.h" -#import "UIDevice+ADJAdditions.h" #if !__has_feature(objc_arc) #error Adjust requires ARC @@ -22,29 +21,16 @@ NSString * const ADJEnvironmentSandbox = @"sandbox"; NSString * const ADJEnvironmentProduction = @"production"; +NSString * const ADJAdRevenueSourceAppLovinMAX = @"applovin_max_sdk"; NSString * const ADJAdRevenueSourceMopub = @"mopub"; -NSString * const ADJAdRevenueSourceAdmob = @"admob"; -NSString * const ADJAdRevenueSourceFbNativeAd = @"facebook_native_ad"; -NSString * const ADJAdRevenueSourceFbAudienceNetwork = @"facebook_audience_network"; -NSString * const ADJAdRevenueSourceIronsource = @"ironsource"; -NSString * const ADJAdRevenueSourceFyber = @"fyber"; -NSString * const ADJAdRevenueSourceAerserv = @"aerserv"; -NSString * const ADJAdRevenueSourceAppodeal = @"appodeal"; -NSString * const ADJAdRevenueSourceAdincube = @"adincube"; -NSString * const ADJAdRevenueSourceFusePowered = @"fusepowered"; -NSString * const ADJAdRevenueSourceAddaptr = @"addapptr"; -NSString * const ADJAdRevenueSourceMillennialMeditation = @"millennial_mediation"; -NSString * const ADJAdRevenueSourceFlurry = @"flurry"; -NSString * const ADJAdRevenueSourceAdmost = @"admost"; -NSString * const ADJAdRevenueSourceDeltadna = @"deltadna"; -NSString * const ADJAdRevenueSourceUpsight = @"upsight"; -NSString * const ADJAdRevenueSourceUnityads = @"unityads"; -NSString * const ADJAdRevenueSourceAdtoapp = @"adtoapp"; -NSString * const ADJAdRevenueSourceTapdaq = @"tapdaq"; +NSString * const ADJAdRevenueSourceAdMob = @"admob_sdk"; +NSString * const ADJAdRevenueSourceIronSource = @"ironsource_sdk"; NSString * const ADJUrlStrategyIndia = @"UrlStrategyIndia"; NSString * const ADJUrlStrategyChina = @"UrlStrategyChina"; + NSString * const ADJDataResidencyEU = @"DataResidencyEU"; +NSString * const ADJDataResidencyTR = @"DataResidencyTR"; @implementation AdjustTestOptions @end @@ -70,13 +56,11 @@ + (id)getInstance { dispatch_once(&onceToken, ^{ defaultInstance = [[self alloc] init]; }); - return defaultInstance; } - (id)init { self = [super init]; - if (self == nil) { return nil; } @@ -84,7 +68,6 @@ - (id)init { self.activityHandler = nil; self.logger = [ADJAdjustFactory logger]; self.savedPreLaunch = [[ADJSavedPreLaunch alloc] init]; - return self; } @@ -269,6 +252,12 @@ + (void)updateConversionValue:(NSInteger)conversionValue { } } ++ (void)trackAdRevenue:(ADJAdRevenue *)adRevenue { + @synchronized (self) { + [[Adjust getInstance] trackAdRevenue:adRevenue]; + } +} + + (ADJAttribution *)attribution { @synchronized (self) { return [[Adjust getInstance] attribution]; @@ -302,7 +291,6 @@ - (void)appDidLaunch:(ADJConfig *)adjustConfig { [self.logger error:@"Adjust already initialized"]; return; } - self.activityHandler = [[ADJActivityHandler alloc] initWithConfig:adjustConfig savedPreLaunch:self.savedPreLaunch]; @@ -312,7 +300,6 @@ - (void)trackEvent:(ADJEvent *)event { if (![self checkActivityHandler]) { return; } - [self.activityHandler trackEvent:event]; } @@ -320,7 +307,6 @@ - (void)trackSubsessionStart { if (![self checkActivityHandler]) { return; } - [self.activityHandler applicationDidBecomeActive]; } @@ -328,7 +314,6 @@ - (void)trackSubsessionEnd { if (![self checkActivityHandler]) { return; } - [self.activityHandler applicationWillResignActive]; } @@ -346,7 +331,6 @@ - (BOOL)isEnabled { if (![self checkActivityHandler]) { return [self isInstanceEnabled]; } - return [self.activityHandler isEnabled]; } @@ -356,7 +340,6 @@ - (void)appWillOpenUrl:(NSURL *)url { [ADJUserDefaults saveDeeplinkUrl:url andClickTime:clickTime]; return; } - [self.activityHandler appWillOpenUrl:url withClickTime:clickTime]; } @@ -402,7 +385,6 @@ - (void)sendFirstPackages { if (![self checkActivityHandler]) { return; } - [self.activityHandler sendFirstPackages]; } @@ -411,11 +393,9 @@ - (void)addSessionCallbackParameter:(NSString *)key value:(NSString *)value { [self.activityHandler addSessionCallbackParameter:key value:value]; return; } - if (self.savedPreLaunch.preLaunchActionsArray == nil) { self.savedPreLaunch.preLaunchActionsArray = [[NSMutableArray alloc] init]; } - [self.savedPreLaunch.preLaunchActionsArray addObject:^(ADJActivityHandler *activityHandler) { [activityHandler addSessionCallbackParameterI:activityHandler key:key value:value]; }]; @@ -426,11 +406,9 @@ - (void)addSessionPartnerParameter:(NSString *)key value:(NSString *)value { [self.activityHandler addSessionPartnerParameter:key value:value]; return; } - if (self.savedPreLaunch.preLaunchActionsArray == nil) { self.savedPreLaunch.preLaunchActionsArray = [[NSMutableArray alloc] init]; } - [self.savedPreLaunch.preLaunchActionsArray addObject:^(ADJActivityHandler *activityHandler) { [activityHandler addSessionPartnerParameterI:activityHandler key:key value:value]; }]; @@ -441,11 +419,9 @@ - (void)removeSessionCallbackParameter:(NSString *)key { [self.activityHandler removeSessionCallbackParameter:key]; return; } - if (self.savedPreLaunch.preLaunchActionsArray == nil) { self.savedPreLaunch.preLaunchActionsArray = [[NSMutableArray alloc] init]; } - [self.savedPreLaunch.preLaunchActionsArray addObject:^(ADJActivityHandler *activityHandler) { [activityHandler removeSessionCallbackParameterI:activityHandler key:key]; }]; @@ -456,11 +432,9 @@ - (void)removeSessionPartnerParameter:(NSString *)key { [self.activityHandler removeSessionPartnerParameter:key]; return; } - if (self.savedPreLaunch.preLaunchActionsArray == nil) { self.savedPreLaunch.preLaunchActionsArray = [[NSMutableArray alloc] init]; } - [self.savedPreLaunch.preLaunchActionsArray addObject:^(ADJActivityHandler *activityHandler) { [activityHandler removeSessionPartnerParameterI:activityHandler key:key]; }]; @@ -471,11 +445,9 @@ - (void)resetSessionCallbackParameters { [self.activityHandler resetSessionCallbackParameters]; return; } - if (self.savedPreLaunch.preLaunchActionsArray == nil) { self.savedPreLaunch.preLaunchActionsArray = [[NSMutableArray alloc] init]; } - [self.savedPreLaunch.preLaunchActionsArray addObject:^(ADJActivityHandler *activityHandler) { [activityHandler resetSessionCallbackParametersI:activityHandler]; }]; @@ -486,11 +458,9 @@ - (void)resetSessionPartnerParameters { [self.activityHandler resetSessionPartnerParameters]; return; } - if (self.savedPreLaunch.preLaunchActionsArray == nil) { self.savedPreLaunch.preLaunchActionsArray = [[NSMutableArray alloc] init]; } - [self.savedPreLaunch.preLaunchActionsArray addObject:^(ADJActivityHandler *activityHandler) { [activityHandler resetSessionPartnerParametersI:activityHandler]; }]; @@ -498,7 +468,6 @@ - (void)resetSessionPartnerParameters { - (void)gdprForgetMe { [ADJUserDefaults setGdprForgetMe]; - if ([self checkActivityHandler:@"GDPR forget me"]) { if (self.activityHandler.isEnabled) { [self.activityHandler setGdprForgetMe]; @@ -510,7 +479,6 @@ - (void)trackAdRevenue:(NSString *)source payload:(NSData *)payload { if (![self checkActivityHandler]) { return; } - [self.activityHandler trackAdRevenue:source payload:payload]; } @@ -519,7 +487,6 @@ - (void)disableThirdPartySharing { [ADJUserDefaults setDisableThirdPartySharing]; return; } - [self.activityHandler disableThirdPartySharing]; } @@ -529,11 +496,9 @@ - (void)trackThirdPartySharing:(nonnull ADJThirdPartySharing *)thirdPartySharing self.savedPreLaunch.preLaunchAdjustThirdPartySharingArray = [[NSMutableArray alloc] init]; } - [self.savedPreLaunch.preLaunchAdjustThirdPartySharingArray addObject:thirdPartySharing]; return; } - [self.activityHandler trackThirdPartySharing:thirdPartySharing]; } @@ -542,7 +507,6 @@ - (void)trackMeasurementConsent:(BOOL)enabled { self.savedPreLaunch.lastMeasurementConsentTracked = [NSNumber numberWithBool:enabled]; return; } - [self.activityHandler trackMeasurementConsent:enabled]; } @@ -550,37 +514,40 @@ - (void)trackSubscription:(ADJSubscription *)subscription { if (![self checkActivityHandler]) { return; } - [self.activityHandler trackSubscription:subscription]; } - (void)requestTrackingAuthorizationWithCompletionHandler:(void (^_Nullable)(NSUInteger status))completion { - [UIDevice.currentDevice requestTrackingAuthorizationWithCompletionHandler:^(NSUInteger status) { + [ADJUtil requestTrackingAuthorizationWithCompletionHandler:^(NSUInteger status) { if (completion) { completion(status); } - if (![self checkActivityHandler:@"request Tracking Authorization"]) { return; } - [self.activityHandler updateAttStatusFromUserCallback:(int)status]; }]; } - (int)appTrackingAuthorizationStatus { - return [[UIDevice currentDevice] adjATTStatus]; + return [ADJUtil attStatus]; } - (void)updateConversionValue:(NSInteger)conversionValue { [ADJUtil updateSkAdNetworkConversionValue:[NSNumber numberWithInteger:conversionValue]]; } +- (void)trackAdRevenue:(ADJAdRevenue *)adRevenue { + if (![self checkActivityHandler]) { + return; + } + [self.activityHandler trackAdRevenue:adRevenue]; +} + - (ADJAttribution *)attribution { if (![self checkActivityHandler]) { return nil; } - return [self.activityHandler attribution]; } @@ -588,7 +555,6 @@ - (NSString *)adid { if (![self checkActivityHandler]) { return nil; } - return [self.activityHandler adid]; } @@ -601,7 +567,6 @@ - (void)teardown { [self.logger error:@"Adjust already down or not initialized"]; return; } - [self.activityHandler teardown]; self.activityHandler = nil; } @@ -639,11 +604,9 @@ - (void)setTestOptions:(AdjustTestOptions *)testOptions { [ADJAdjustFactory setSdkClickHandlerBackoffStrategy:[ADJBackoffStrategy backoffStrategyWithType:ADJNoWait]]; [ADJAdjustFactory setPackageHandlerBackoffStrategy:[ADJBackoffStrategy backoffStrategyWithType:ADJNoWait]]; } - if (testOptions.enableSigning) { [ADJAdjustFactory enableSigning]; } - if (testOptions.disableSigning) { [ADJAdjustFactory disableSigning]; } @@ -675,7 +638,6 @@ - (BOOL)checkActivityHandler:(NSString *)savedForLaunchWarningSuffixMessage { } else { [self.logger error:@"Please initialize Adjust by calling 'appDidLaunch' before"]; } - return NO; } else { return YES; diff --git a/AdjustBridge/AdjustBridgeRegister.m b/AdjustBridge/AdjustBridgeRegister.m index 6e307f38d..1c698cd60 100644 --- a/AdjustBridge/AdjustBridgeRegister.m +++ b/AdjustBridge/AdjustBridgeRegister.m @@ -246,7 +246,7 @@ + (NSString *)adjust_js { if (this.sdkPrefix) { return this.sdkPrefix; } else { - return 'web-bridge4.28.0'; + return 'web-bridge4.29.0'; } }, setTestOptions: function(testOptions) { @@ -362,6 +362,7 @@ + (NSString *)adjust_js { AdjustConfig.UrlStrategyIndia = 'UrlStrategyIndia'; AdjustConfig.UrlStrategyChina = 'UrlStrategyChina'; AdjustConfig.DataResidencyEU = 'DataResidencyEU'; + AdjustConfig.DataResidencyTR = 'DataResidencyTR'; AdjustConfig.prototype.registerCallbackHandlers = function() { var registerCallbackHandler = function(callbackName) { diff --git a/AdjustSdk/AdjustSdk.h b/AdjustSdk/AdjustSdk.h index 56daff456..4def26924 100644 --- a/AdjustSdk/AdjustSdk.h +++ b/AdjustSdk/AdjustSdk.h @@ -27,3 +27,5 @@ FOUNDATION_EXPORT const unsigned char AdjustSdkVersionString[]; #import #import #import +#import +#import diff --git a/AdjustSdkIm/AdjustSdkIm.h b/AdjustSdkIm/AdjustSdkIm.h index f45a4da9b..a2d6dadcc 100644 --- a/AdjustSdkIm/AdjustSdkIm.h +++ b/AdjustSdkIm/AdjustSdkIm.h @@ -27,3 +27,5 @@ FOUNDATION_EXPORT const unsigned char AdjustSdkImVersionString[]; #import #import #import +#import +#import diff --git a/AdjustSdkTv/AdjustSdkTv.h b/AdjustSdkTv/AdjustSdkTv.h index 9a66f0edc..ea4cee8a1 100644 --- a/AdjustSdkTv/AdjustSdkTv.h +++ b/AdjustSdkTv/AdjustSdkTv.h @@ -27,3 +27,5 @@ FOUNDATION_EXPORT const unsigned char AdjustSdkTvVersionString[]; #import #import #import +#import +#import diff --git a/AdjustSdkWebBridge/AdjustSdkWebBridge.h b/AdjustSdkWebBridge/AdjustSdkWebBridge.h index 6bca5b94d..91c39ba26 100644 --- a/AdjustSdkWebBridge/AdjustSdkWebBridge.h +++ b/AdjustSdkWebBridge/AdjustSdkWebBridge.h @@ -28,6 +28,8 @@ FOUNDATION_EXPORT const unsigned char AdjustSdkWebBridgeVersionString[]; #import #import #import +#import +#import // Exposing entire WebViewJavascriptBridge framework #import diff --git a/AdjustTests/AdjustTestApp/AdjustTestApp.xcodeproj/project.pbxproj b/AdjustTests/AdjustTestApp/AdjustTestApp.xcodeproj/project.pbxproj index 8fc617546..1d97516b6 100644 --- a/AdjustTests/AdjustTestApp/AdjustTestApp.xcodeproj/project.pbxproj +++ b/AdjustTests/AdjustTestApp/AdjustTestApp.xcodeproj/project.pbxproj @@ -23,7 +23,6 @@ 6F0842342007769F00568A31 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 6F0842332007769F00568A31 /* Assets.xcassets */; }; 6F084237200776A000568A31 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 6F084235200776A000568A31 /* LaunchScreen.storyboard */; }; 6F08423A200776A000568A31 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F084239200776A000568A31 /* main.m */; }; - 6F3A5E6E2018CE14000AACD0 /* ADJDeviceInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E2B2018CE14000AACD0 /* ADJDeviceInfo.m */; }; 6F3A5E6F2018CE14000AACD0 /* ADJTimerOnce.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E2C2018CE14000AACD0 /* ADJTimerOnce.m */; }; 6F3A5E702018CE14000AACD0 /* ADJAttributionHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E2D2018CE14000AACD0 /* ADJAttributionHandler.m */; }; 6F3A5E712018CE14000AACD0 /* ADJRequestHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E302018CE14000AACD0 /* ADJRequestHandler.m */; }; @@ -44,9 +43,7 @@ 6F3A5E812018CE14000AACD0 /* ADJActivityKind.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E502018CE14000AACD0 /* ADJActivityKind.m */; }; 6F3A5E822018CE14000AACD0 /* NSString+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E532018CE14000AACD0 /* NSString+ADJAdditions.m */; }; 6F3A5E832018CE14000AACD0 /* NSData+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E552018CE14000AACD0 /* NSData+ADJAdditions.m */; }; - 6F3A5E842018CE14000AACD0 /* UIDevice+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E572018CE14000AACD0 /* UIDevice+ADJAdditions.m */; }; 6F3A5E852018CE14000AACD0 /* ADJAttribution.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E592018CE14000AACD0 /* ADJAttribution.m */; }; - 6F3A5E862018CE14000AACD0 /* ADJSystemProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E5A2018CE14000AACD0 /* ADJSystemProfile.m */; }; 6F3A5E872018CE14000AACD0 /* ADJActivityPackage.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E5C2018CE14000AACD0 /* ADJActivityPackage.m */; }; 6F3A5E882018CE14000AACD0 /* ADJUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E5D2018CE14000AACD0 /* ADJUtil.m */; }; 6F3A5E892018CE14000AACD0 /* ADJAdjustFactory.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E602018CE14000AACD0 /* ADJAdjustFactory.m */; }; @@ -54,13 +51,13 @@ 6F3A5E8B2018CE14000AACD0 /* ADJPackageBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E652018CE14000AACD0 /* ADJPackageBuilder.m */; }; 6F3A5E8C2018CE14000AACD0 /* ADJUserDefaults.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E662018CE14000AACD0 /* ADJUserDefaults.m */; }; 6F3A5E8E2018CE14000AACD0 /* ADJActivityHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E6C2018CE14000AACD0 /* ADJActivityHandler.m */; }; - 6F3A5E8F2018CE14000AACD0 /* ADJReachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E6D2018CE14000AACD0 /* ADJReachability.m */; }; 6F3A5E9E2018CE3A000AACD0 /* ATLTestInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E912018CE3A000AACD0 /* ATLTestInfo.m */; }; 6F3A5E9F2018CE3A000AACD0 /* ATLUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E982018CE3A000AACD0 /* ATLUtil.m */; }; 6F3A5EA12018CE3A000AACD0 /* ATLUtilNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E9B2018CE3A000AACD0 /* ATLUtilNetworking.m */; }; 6F3A5EA22018CE3A000AACD0 /* ATLTestLibrary.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E9C2018CE3A000AACD0 /* ATLTestLibrary.m */; }; 6F3A5EA32018CE3A000AACD0 /* ATLBlockingQueue.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3A5E9D2018CE3A000AACD0 /* ATLBlockingQueue.m */; }; 6F84510E25B1B1110004C7C0 /* ADJThirdPartySharing.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F84510C25B1B1100004C7C0 /* ADJThirdPartySharing.m */; }; + 6FAB789F2636DD0F00773869 /* ADJLinkResolution.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FAB789E2636DD0F00773869 /* ADJLinkResolution.m */; }; 6FBEE92024E421B200FEF3F1 /* ADJUrlStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FBEE91F24E421B200FEF3F1 /* ADJUrlStrategy.m */; }; 6FFCFE5F2007978300467F01 /* ATAAdjustCommandExecutor.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FFCFE5D2007978300467F01 /* ATAAdjustCommandExecutor.m */; }; 6FFCFE6D200797D100467F01 /* ATAAdjustDelegateAttribution.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FFCFE61200797D000467F01 /* ATAAdjustDelegateAttribution.m */; }; @@ -73,9 +70,11 @@ 9D1D8EA0219246EA0088E3CF /* AdSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D1D8E9F219246EA0088E3CF /* AdSupport.framework */; }; 9D1D8EA2219246EF0088E3CF /* CoreTelephony.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D1D8EA1219246EF0088E3CF /* CoreTelephony.framework */; }; 9D2F24082447DDCB00B7CA90 /* ADJSubscription.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D2F24072447DDCA00B7CA90 /* ADJSubscription.m */; }; + 9D3A2AC226263AFC00BD6E44 /* ADJAdRevenue.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D3A2AC026263AFB00BD6E44 /* ADJAdRevenue.m */; }; 9D75AFDB210217FF0079A36C /* ATAAdjustDelegateDeferredDeeplink.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D75AFDA210217FF0079A36C /* ATAAdjustDelegateDeferredDeeplink.m */; }; 9DAA5C6A25B0F81200C718DD /* AdServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9DAA5C6925B0F81100C718DD /* AdServices.framework */; }; 9DF38229260E9BA90033F5A1 /* NSNumber+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38227260E9BA90033F5A1 /* NSNumber+ADJAdditions.m */; }; + 9DF92D932630ED95000FC3FC /* ADJPackageParams.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92D912630ED95000FC3FC /* ADJPackageParams.m */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ @@ -113,13 +112,11 @@ 6F084238200776A000568A31 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 6F084239200776A000568A31 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 6F3A5E2A2018CE14000AACD0 /* ADJConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJConfig.h; sourceTree = ""; }; - 6F3A5E2B2018CE14000AACD0 /* ADJDeviceInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJDeviceInfo.m; sourceTree = ""; }; 6F3A5E2C2018CE14000AACD0 /* ADJTimerOnce.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerOnce.m; sourceTree = ""; }; 6F3A5E2D2018CE14000AACD0 /* ADJAttributionHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAttributionHandler.m; sourceTree = ""; }; 6F3A5E2E2018CE14000AACD0 /* Adjust.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Adjust.h; sourceTree = ""; }; 6F3A5E2F2018CE14000AACD0 /* ADJActivityPackage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityPackage.h; sourceTree = ""; }; 6F3A5E302018CE14000AACD0 /* ADJRequestHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJRequestHandler.m; sourceTree = ""; }; - 6F3A5E312018CE14000AACD0 /* ADJSystemProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSystemProfile.h; sourceTree = ""; }; 6F3A5E322018CE14000AACD0 /* ADJAttribution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttribution.h; sourceTree = ""; }; 6F3A5E342018CE14000AACD0 /* ADJSdkClickHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSdkClickHandler.m; sourceTree = ""; }; 6F3A5E352018CE14000AACD0 /* ADJActivityKind.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityKind.h; sourceTree = ""; }; @@ -134,7 +131,6 @@ 6F3A5E3E2018CE14000AACD0 /* ADJActivityState.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityState.m; sourceTree = ""; }; 6F3A5E3F2018CE14000AACD0 /* ADJSessionFailure.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionFailure.m; sourceTree = ""; }; 6F3A5E402018CE14000AACD0 /* ADJUtil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUtil.h; sourceTree = ""; }; - 6F3A5E412018CE14000AACD0 /* ADJReachability.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJReachability.h; sourceTree = ""; }; 6F3A5E422018CE14000AACD0 /* ADJActivityHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityHandler.h; sourceTree = ""; }; 6F3A5E432018CE14000AACD0 /* ADJTimerCycle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerCycle.m; sourceTree = ""; }; 6F3A5E442018CE14000AACD0 /* ADJSessionParameters.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionParameters.m; sourceTree = ""; }; @@ -144,20 +140,16 @@ 6F3A5E482018CE14000AACD0 /* Adjust.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Adjust.m; sourceTree = ""; }; 6F3A5E492018CE14000AACD0 /* ADJAttributionHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttributionHandler.h; sourceTree = ""; }; 6F3A5E4A2018CE14000AACD0 /* ADJTimerOnce.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerOnce.h; sourceTree = ""; }; - 6F3A5E4B2018CE14000AACD0 /* ADJDeviceInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJDeviceInfo.h; sourceTree = ""; }; 6F3A5E4C2018CE14000AACD0 /* ADJConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJConfig.m; sourceTree = ""; }; 6F3A5E4D2018CE14000AACD0 /* ADJPackageHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageHandler.m; sourceTree = ""; }; 6F3A5E4E2018CE14000AACD0 /* ADJEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEvent.h; sourceTree = ""; }; 6F3A5E4F2018CE14000AACD0 /* ADJSdkClickHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSdkClickHandler.h; sourceTree = ""; }; 6F3A5E502018CE14000AACD0 /* ADJActivityKind.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityKind.m; sourceTree = ""; }; 6F3A5E532018CE14000AACD0 /* NSString+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+ADJAdditions.m"; sourceTree = ""; }; - 6F3A5E542018CE14000AACD0 /* UIDevice+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIDevice+ADJAdditions.h"; sourceTree = ""; }; 6F3A5E552018CE14000AACD0 /* NSData+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+ADJAdditions.m"; sourceTree = ""; }; 6F3A5E562018CE14000AACD0 /* NSData+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData+ADJAdditions.h"; sourceTree = ""; }; - 6F3A5E572018CE14000AACD0 /* UIDevice+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIDevice+ADJAdditions.m"; sourceTree = ""; }; 6F3A5E582018CE14000AACD0 /* NSString+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+ADJAdditions.h"; sourceTree = ""; }; 6F3A5E592018CE14000AACD0 /* ADJAttribution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAttribution.m; sourceTree = ""; }; - 6F3A5E5A2018CE14000AACD0 /* ADJSystemProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSystemProfile.m; sourceTree = ""; }; 6F3A5E5B2018CE14000AACD0 /* ADJRequestHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJRequestHandler.h; sourceTree = ""; }; 6F3A5E5C2018CE14000AACD0 /* ADJActivityPackage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityPackage.m; sourceTree = ""; }; 6F3A5E5D2018CE14000AACD0 /* ADJUtil.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUtil.m; sourceTree = ""; }; @@ -176,7 +168,6 @@ 6F3A5E6A2018CE14000AACD0 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 6F3A5E6B2018CE14000AACD0 /* ADJTimerCycle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerCycle.h; sourceTree = ""; }; 6F3A5E6C2018CE14000AACD0 /* ADJActivityHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityHandler.m; sourceTree = ""; }; - 6F3A5E6D2018CE14000AACD0 /* ADJReachability.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJReachability.m; sourceTree = ""; }; 6F3A5E912018CE3A000AACD0 /* ATLTestInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ATLTestInfo.m; sourceTree = ""; }; 6F3A5E922018CE3A000AACD0 /* ATLUtil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ATLUtil.h; sourceTree = ""; }; 6F3A5E942018CE3A000AACD0 /* ATLConstants.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ATLConstants.h; sourceTree = ""; }; @@ -190,6 +181,8 @@ 6F3A5E9D2018CE3A000AACD0 /* ATLBlockingQueue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ATLBlockingQueue.m; sourceTree = ""; }; 6F84510C25B1B1100004C7C0 /* ADJThirdPartySharing.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJThirdPartySharing.m; sourceTree = ""; }; 6F84510D25B1B1110004C7C0 /* ADJThirdPartySharing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJThirdPartySharing.h; sourceTree = ""; }; + 6FAB789D2636DD0F00773869 /* ADJLinkResolution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJLinkResolution.h; sourceTree = ""; }; + 6FAB789E2636DD0F00773869 /* ADJLinkResolution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJLinkResolution.m; sourceTree = ""; }; 6FBEE91E24E421B200FEF3F1 /* ADJUrlStrategy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUrlStrategy.h; sourceTree = ""; }; 6FBEE91F24E421B200FEF3F1 /* ADJUrlStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUrlStrategy.m; sourceTree = ""; }; 6FFCFE5D2007978300467F01 /* ATAAdjustCommandExecutor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ATAAdjustCommandExecutor.m; sourceTree = ""; }; @@ -211,11 +204,15 @@ 9D1D8EA1219246EF0088E3CF /* CoreTelephony.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreTelephony.framework; path = System/Library/Frameworks/CoreTelephony.framework; sourceTree = SDKROOT; }; 9D2F24062447DDCA00B7CA90 /* ADJSubscription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSubscription.h; sourceTree = ""; }; 9D2F24072447DDCA00B7CA90 /* ADJSubscription.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSubscription.m; sourceTree = ""; }; + 9D3A2AC026263AFB00BD6E44 /* ADJAdRevenue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdRevenue.m; sourceTree = ""; }; + 9D3A2AC126263AFB00BD6E44 /* ADJAdRevenue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdRevenue.h; sourceTree = ""; }; 9D75AFD9210217FF0079A36C /* ATAAdjustDelegateDeferredDeeplink.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ATAAdjustDelegateDeferredDeeplink.h; sourceTree = ""; }; 9D75AFDA210217FF0079A36C /* ATAAdjustDelegateDeferredDeeplink.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ATAAdjustDelegateDeferredDeeplink.m; sourceTree = ""; }; 9DAA5C6925B0F81100C718DD /* AdServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AdServices.framework; path = System/Library/Frameworks/AdServices.framework; sourceTree = SDKROOT; }; 9DF38227260E9BA90033F5A1 /* NSNumber+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSNumber+ADJAdditions.m"; sourceTree = ""; }; 9DF38228260E9BA90033F5A1 /* NSNumber+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNumber+ADJAdditions.h"; sourceTree = ""; }; + 9DF92D912630ED95000FC3FC /* ADJPackageParams.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageParams.m; sourceTree = ""; }; + 9DF92D922630ED95000FC3FC /* ADJPackageParams.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJPackageParams.h; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -274,14 +271,14 @@ 6F3A5E292018CE14000AACD0 /* Adjust */ = { isa = PBXGroup; children = ( + 9D3A2AC126263AFB00BD6E44 /* ADJAdRevenue.h */, + 9D3A2AC026263AFB00BD6E44 /* ADJAdRevenue.m */, 6F3A5E2A2018CE14000AACD0 /* ADJConfig.h */, - 6F3A5E2B2018CE14000AACD0 /* ADJDeviceInfo.m */, 6F3A5E2C2018CE14000AACD0 /* ADJTimerOnce.m */, 6F3A5E2D2018CE14000AACD0 /* ADJAttributionHandler.m */, 6F3A5E2E2018CE14000AACD0 /* Adjust.h */, 6F3A5E2F2018CE14000AACD0 /* ADJActivityPackage.h */, 6F3A5E302018CE14000AACD0 /* ADJRequestHandler.m */, - 6F3A5E312018CE14000AACD0 /* ADJSystemProfile.h */, 6F3A5E322018CE14000AACD0 /* ADJAttribution.h */, 6F3A5E342018CE14000AACD0 /* ADJSdkClickHandler.m */, 6F3A5E352018CE14000AACD0 /* ADJActivityKind.h */, @@ -296,7 +293,6 @@ 6F3A5E3E2018CE14000AACD0 /* ADJActivityState.m */, 6F3A5E3F2018CE14000AACD0 /* ADJSessionFailure.m */, 6F3A5E402018CE14000AACD0 /* ADJUtil.h */, - 6F3A5E412018CE14000AACD0 /* ADJReachability.h */, 6F3A5E422018CE14000AACD0 /* ADJActivityHandler.h */, 6F3A5E432018CE14000AACD0 /* ADJTimerCycle.m */, 6F3A5E442018CE14000AACD0 /* ADJSessionParameters.m */, @@ -306,7 +302,6 @@ 6F3A5E482018CE14000AACD0 /* Adjust.m */, 6F3A5E492018CE14000AACD0 /* ADJAttributionHandler.h */, 6F3A5E4A2018CE14000AACD0 /* ADJTimerOnce.h */, - 6F3A5E4B2018CE14000AACD0 /* ADJDeviceInfo.h */, 6F3A5E4C2018CE14000AACD0 /* ADJConfig.m */, 6F3A5E4D2018CE14000AACD0 /* ADJPackageHandler.m */, 6F3A5E4E2018CE14000AACD0 /* ADJEvent.h */, @@ -314,7 +309,6 @@ 6F3A5E502018CE14000AACD0 /* ADJActivityKind.m */, 6F3A5E522018CE14000AACD0 /* ADJAdditions */, 6F3A5E592018CE14000AACD0 /* ADJAttribution.m */, - 6F3A5E5A2018CE14000AACD0 /* ADJSystemProfile.m */, 6F3A5E5B2018CE14000AACD0 /* ADJRequestHandler.h */, 6F3A5E5C2018CE14000AACD0 /* ADJActivityPackage.m */, 6F3A5E5D2018CE14000AACD0 /* ADJUtil.m */, @@ -333,13 +327,16 @@ 6F3A5E6A2018CE14000AACD0 /* Info.plist */, 6F3A5E6B2018CE14000AACD0 /* ADJTimerCycle.h */, 6F3A5E6C2018CE14000AACD0 /* ADJActivityHandler.m */, - 6F3A5E6D2018CE14000AACD0 /* ADJReachability.m */, 9D2F24062447DDCA00B7CA90 /* ADJSubscription.h */, 9D2F24072447DDCA00B7CA90 /* ADJSubscription.m */, 6FBEE91E24E421B200FEF3F1 /* ADJUrlStrategy.h */, 6FBEE91F24E421B200FEF3F1 /* ADJUrlStrategy.m */, 6F84510D25B1B1110004C7C0 /* ADJThirdPartySharing.h */, 6F84510C25B1B1100004C7C0 /* ADJThirdPartySharing.m */, + 9DF92D922630ED95000FC3FC /* ADJPackageParams.h */, + 9DF92D912630ED95000FC3FC /* ADJPackageParams.m */, + 6FAB789D2636DD0F00773869 /* ADJLinkResolution.h */, + 6FAB789E2636DD0F00773869 /* ADJLinkResolution.m */, ); name = Adjust; path = ../../../Adjust; @@ -351,10 +348,8 @@ 9DF38228260E9BA90033F5A1 /* NSNumber+ADJAdditions.h */, 9DF38227260E9BA90033F5A1 /* NSNumber+ADJAdditions.m */, 6F3A5E532018CE14000AACD0 /* NSString+ADJAdditions.m */, - 6F3A5E542018CE14000AACD0 /* UIDevice+ADJAdditions.h */, 6F3A5E552018CE14000AACD0 /* NSData+ADJAdditions.m */, 6F3A5E562018CE14000AACD0 /* NSData+ADJAdditions.h */, - 6F3A5E572018CE14000AACD0 /* UIDevice+ADJAdditions.m */, 6F3A5E582018CE14000AACD0 /* NSString+ADJAdditions.h */, ); path = ADJAdditions; @@ -508,16 +503,17 @@ 6F3A5E702018CE14000AACD0 /* ADJAttributionHandler.m in Sources */, 6F3A5E7A2018CE14000AACD0 /* ADJTimerCycle.m in Sources */, 6FFCFE6E200797D100467F01 /* ATAAdjustDelegateEventFailure.m in Sources */, + 9DF92D932630ED95000FC3FC /* ADJPackageParams.m in Sources */, 6F3A5E832018CE14000AACD0 /* NSData+ADJAdditions.m in Sources */, 524BACBB221D5B1200624F6C /* ATLControlSignal.m in Sources */, 6F3A5EA32018CE3A000AACD0 /* ATLBlockingQueue.m in Sources */, 6F3A5E712018CE14000AACD0 /* ADJRequestHandler.m in Sources */, 6F3A5E732018CE14000AACD0 /* ADJSdkClickHandler.m in Sources */, 6F3A5E892018CE14000AACD0 /* ADJAdjustFactory.m in Sources */, - 6F3A5E862018CE14000AACD0 /* ADJSystemProfile.m in Sources */, 6F3A5E9F2018CE3A000AACD0 /* ATLUtil.m in Sources */, 524BACA7221C4EE800624F6C /* PSWebSocketInflater.m in Sources */, 6F3A5E852018CE14000AACD0 /* ADJAttribution.m in Sources */, + 6FAB789F2636DD0F00773869 /* ADJLinkResolution.m in Sources */, 6FFCFE72200797D100467F01 /* ATAAdjustDelegateSessionSuccess.m in Sources */, 6F3A5E7E2018CE14000AACD0 /* Adjust.m in Sources */, 6FFCFE6D200797D100467F01 /* ATAAdjustDelegateAttribution.m in Sources */, @@ -527,6 +523,7 @@ 6F3A5E812018CE14000AACD0 /* ADJActivityKind.m in Sources */, 6F3A5E8B2018CE14000AACD0 /* ADJPackageBuilder.m in Sources */, 6F3A5E8C2018CE14000AACD0 /* ADJUserDefaults.m in Sources */, + 9D3A2AC226263AFC00BD6E44 /* ADJAdRevenue.m in Sources */, 6F3A5E7C2018CE14000AACD0 /* ADJLogger.m in Sources */, 524BACA6221C4EE800624F6C /* PSWebSocketServer.m in Sources */, 6F3A5E742018CE14000AACD0 /* ADJEvent.m in Sources */, @@ -537,7 +534,6 @@ 6FFCFE70200797D100467F01 /* ATAAdjustDelegate.m in Sources */, 524BACA4221C4EE800624F6C /* PSWebSocketDriver.m in Sources */, 6F3A5E772018CE14000AACD0 /* ADJEventSuccess.m in Sources */, - 6F3A5E6E2018CE14000AACD0 /* ADJDeviceInfo.m in Sources */, 6FFCFE5F2007978300467F01 /* ATAAdjustCommandExecutor.m in Sources */, 6F08422F2007769F00568A31 /* ViewController.m in Sources */, 9D75AFDB210217FF0079A36C /* ATAAdjustDelegateDeferredDeeplink.m in Sources */, @@ -549,7 +545,6 @@ 524BACA8221C4EE800624F6C /* PSWebSocketBuffer.m in Sources */, 6F3A5E792018CE14000AACD0 /* ADJSessionFailure.m in Sources */, 6F3A5EA22018CE3A000AACD0 /* ATLTestLibrary.m in Sources */, - 6F3A5E842018CE14000AACD0 /* UIDevice+ADJAdditions.m in Sources */, 6F3A5EA12018CE3A000AACD0 /* ATLUtilNetworking.m in Sources */, 6F3A5E782018CE14000AACD0 /* ADJActivityState.m in Sources */, 9DF38229260E9BA90033F5A1 /* NSNumber+ADJAdditions.m in Sources */, @@ -566,7 +561,6 @@ 9D2F24082447DDCB00B7CA90 /* ADJSubscription.m in Sources */, 6FFCFE6F200797D100467F01 /* ATAAdjustDelegateSessionFailure.m in Sources */, 6F3A5E7D2018CE14000AACD0 /* ADJBackoffStrategy.m in Sources */, - 6F3A5E8F2018CE14000AACD0 /* ADJReachability.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/AdjustTests/AdjustTestApp/AdjustTestApp/ATAAdjustCommandExecutor.m b/AdjustTests/AdjustTestApp/AdjustTestApp/ATAAdjustCommandExecutor.m index 94584236f..469e7ba76 100644 --- a/AdjustTests/AdjustTestApp/AdjustTestApp/ATAAdjustCommandExecutor.m +++ b/AdjustTests/AdjustTestApp/AdjustTestApp/ATAAdjustCommandExecutor.m @@ -96,8 +96,10 @@ - (void)executeCommand:(NSString *)className } else if ([methodName isEqualToString:@"measurementConsent"]) { [self measurementConsent:parameters]; } else if ([methodName isEqualToString:@"trackSubscription"]) { - [self trackSubscription:parameters]; - } + [self trackSubscription:parameters]; + } else if ([methodName isEqualToString:@"trackAdRevenueV2"]) { + [self trackAdRevenueV2:parameters]; + } } - (void)testOptions:(NSDictionary *)parameters { @@ -654,4 +656,61 @@ - (void)trackSubscription:(NSDictionary *)parameters { [Adjust trackSubscription:subscription]; } +- (void)trackAdRevenueV2:(NSDictionary *)parameters { + NSString *source = nil; + if ([parameters objectForKey:@"adRevenueSource"]) { + if ([[parameters objectForKey:@"adRevenueSource"] count] > 0) { + source = [parameters objectForKey:@"adRevenueSource"][0]; + } + } + ADJAdRevenue *adRevenue = [[ADJAdRevenue alloc] initWithSource:source]; + + if ([parameters objectForKey:@"revenue"]) { + NSArray *currencyAndRevenue = [parameters objectForKey:@"revenue"]; + NSString *currency = currencyAndRevenue[0]; + double revenue = [currencyAndRevenue[1] doubleValue]; + [adRevenue setRevenue:revenue currency:currency]; + } + + if ([parameters objectForKey:@"adImpressionsCount"]) { + int adImpressionsCount = [[parameters objectForKey:@"adImpressionsCount"][0] intValue]; + [adRevenue setAdImpressionsCount:adImpressionsCount]; + } + + if ([parameters objectForKey:@"adRevenueUnit"]) { + NSString *adRevenueUnit = [parameters objectForKey:@"adRevenueUnit"][0]; + [adRevenue setAdRevenueUnit:adRevenueUnit]; + } + + if ([parameters objectForKey:@"adRevenuePlacement"]) { + NSString *adRevenuePlacement = [parameters objectForKey:@"adRevenuePlacement"][0]; + [adRevenue setAdRevenuePlacement:adRevenuePlacement]; + } + + if ([parameters objectForKey:@"adRevenueNetwork"]) { + NSString *adRevenueNetwork = [parameters objectForKey:@"adRevenueNetwork"][0]; + [adRevenue setAdRevenueNetwork:adRevenueNetwork]; + } + + if ([parameters objectForKey:@"callbackParams"]) { + NSArray *callbackParams = [parameters objectForKey:@"callbackParams"]; + for (int i = 0; i < callbackParams.count; i = i + 2) { + NSString *key = callbackParams[i]; + NSString *value = callbackParams[i + 1]; + [adRevenue addCallbackParameter:key value:value]; + } + } + + if ([parameters objectForKey:@"partnerParams"]) { + NSArray *partnerParams = [parameters objectForKey:@"partnerParams"]; + for (int i = 0; i < partnerParams.count; i = i + 2) { + NSString *key = partnerParams[i]; + NSString *value = partnerParams[i + 1]; + [adRevenue addPartnerParameter:key value:value]; + } + } + + [Adjust trackAdRevenue:adRevenue]; +} + @end diff --git a/AdjustTests/AdjustUnitTests/ADJPackageFields.h b/AdjustTests/AdjustUnitTests/ADJPackageFields.h index e04eba607..06cc1d86e 100644 --- a/AdjustTests/AdjustUnitTests/ADJPackageFields.h +++ b/AdjustTests/AdjustUnitTests/ADJPackageFields.h @@ -25,7 +25,7 @@ @property (nonatomic, copy) NSString *sdkPrefix; @property (nonatomic, copy) NSString *defaultTracker; @property (nonatomic, assign) BOOL eventBufferingEnabled; -// ADJDeviceInfo +// ADJPackageParams @property (nonatomic, copy) NSString *clientSdk; @property (nonatomic, copy) NSString *pushToken; // ADJEvent diff --git a/AdjustTests/AdjustUnitTests/ADJPackageFields.m b/AdjustTests/AdjustUnitTests/ADJPackageFields.m index 20f6a42cb..76f0f3d53 100644 --- a/AdjustTests/AdjustUnitTests/ADJPackageFields.m +++ b/AdjustTests/AdjustUnitTests/ADJPackageFields.m @@ -16,7 +16,7 @@ - (id) init { // default values self.appToken = @"qwerty123456"; - self.clientSdk = @"ios4.28.0"; + self.clientSdk = @"ios4.29.0"; self.suffix = @""; self.environment = @"sandbox"; diff --git a/AdjustTests/AdjustWebBridgeTestApp/AdjustWebBridgeTestApp.xcodeproj/project.pbxproj b/AdjustTests/AdjustWebBridgeTestApp/AdjustWebBridgeTestApp.xcodeproj/project.pbxproj index 53f100340..52b7bb9e1 100644 --- a/AdjustTests/AdjustWebBridgeTestApp/AdjustWebBridgeTestApp.xcodeproj/project.pbxproj +++ b/AdjustTests/AdjustWebBridgeTestApp/AdjustWebBridgeTestApp.xcodeproj/project.pbxproj @@ -32,7 +32,6 @@ 6F7AF633211878BC00F730B2 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 6F7AF632211878BC00F730B2 /* Assets.xcassets */; }; 6F7AF636211878BC00F730B2 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 6F7AF634211878BC00F730B2 /* LaunchScreen.storyboard */; }; 6F7AF639211878BC00F730B2 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F7AF638211878BC00F730B2 /* main.m */; }; - 6F7AF73121187CFF00F730B2 /* ADJDeviceInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F7AF6EE21187CFE00F730B2 /* ADJDeviceInfo.m */; }; 6F7AF73221187CFF00F730B2 /* ADJTimerOnce.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F7AF6EF21187CFE00F730B2 /* ADJTimerOnce.m */; }; 6F7AF73321187CFF00F730B2 /* ADJAttributionHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F7AF6F021187CFE00F730B2 /* ADJAttributionHandler.m */; }; 6F7AF73421187CFF00F730B2 /* ADJRequestHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F7AF6F321187CFE00F730B2 /* ADJRequestHandler.m */; }; @@ -53,9 +52,7 @@ 6F7AF74421187CFF00F730B2 /* ADJActivityKind.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F7AF71321187CFE00F730B2 /* ADJActivityKind.m */; }; 6F7AF74521187CFF00F730B2 /* NSString+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F7AF71621187CFE00F730B2 /* NSString+ADJAdditions.m */; }; 6F7AF74621187CFF00F730B2 /* NSData+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F7AF71821187CFE00F730B2 /* NSData+ADJAdditions.m */; }; - 6F7AF74721187CFF00F730B2 /* UIDevice+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F7AF71A21187CFE00F730B2 /* UIDevice+ADJAdditions.m */; }; 6F7AF74821187CFF00F730B2 /* ADJAttribution.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F7AF71C21187CFE00F730B2 /* ADJAttribution.m */; }; - 6F7AF74921187CFF00F730B2 /* ADJSystemProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F7AF71D21187CFE00F730B2 /* ADJSystemProfile.m */; }; 6F7AF74A21187CFF00F730B2 /* ADJActivityPackage.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F7AF71F21187CFE00F730B2 /* ADJActivityPackage.m */; }; 6F7AF74B21187CFF00F730B2 /* ADJUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F7AF72021187CFE00F730B2 /* ADJUtil.m */; }; 6F7AF74C21187CFF00F730B2 /* ADJAdjustFactory.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F7AF72321187CFE00F730B2 /* ADJAdjustFactory.m */; }; @@ -63,20 +60,22 @@ 6F7AF74E21187CFF00F730B2 /* ADJPackageBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F7AF72821187CFE00F730B2 /* ADJPackageBuilder.m */; }; 6F7AF74F21187CFF00F730B2 /* ADJUserDefaults.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F7AF72921187CFE00F730B2 /* ADJUserDefaults.m */; }; 6F7AF75121187CFF00F730B2 /* ADJActivityHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F7AF72F21187CFF00F730B2 /* ADJActivityHandler.m */; }; - 6F7AF75221187CFF00F730B2 /* ADJReachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F7AF73021187CFF00F730B2 /* ADJReachability.m */; }; 6F7AF78B21187EC500F730B2 /* WKWebViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F7AF78A21187EC500F730B2 /* WKWebViewController.m */; }; 6F7AF78D2118808400F730B2 /* AdjustTestApp-WebView.html in Resources */ = {isa = PBXBuildFile; fileRef = 6F7AF78C2118808300F730B2 /* AdjustTestApp-WebView.html */; }; 6F7AF790211888B500F730B2 /* TestLibraryBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F7AF78F211888B500F730B2 /* TestLibraryBridge.m */; }; 6F7AF7B02118949C00F730B2 /* TestLibraryBridge.js in Resources */ = {isa = PBXBuildFile; fileRef = 6F7AF7AF2118949C00F730B2 /* TestLibraryBridge.js */; }; 6F7AF7BB2118992200F730B2 /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6F7AF7BA2118992200F730B2 /* WebKit.framework */; }; 6F84513125B1B14E0004C7C0 /* ADJThirdPartySharing.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F84513025B1B14E0004C7C0 /* ADJThirdPartySharing.m */; }; + 6FAB78A32636DD2A00773869 /* ADJLinkResolution.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FAB78A12636DD2A00773869 /* ADJLinkResolution.m */; }; 6FBEE92324E421C800FEF3F1 /* ADJUrlStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FBEE92224E421C800FEF3F1 /* ADJUrlStrategy.m */; }; 6FD0412C211C71D1008D42D0 /* iAd.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6FD0412B211C71D1008D42D0 /* iAd.framework */; }; 6FD0412E211C71D9008D42D0 /* AdSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6FD0412D211C71D9008D42D0 /* AdSupport.framework */; }; 6FD04130211C71E8008D42D0 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6FD0412F211C71E8008D42D0 /* Foundation.framework */; }; 6FD04132211C71EF008D42D0 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6FD04131211C71EE008D42D0 /* UIKit.framework */; }; + 9D3A2AD52626510200BD6E44 /* ADJAdRevenue.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D3A2AD42626510200BD6E44 /* ADJAdRevenue.m */; }; 9DAA5C6C25B0F81F00C718DD /* AdServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9DAA5C6B25B0F81F00C718DD /* AdServices.framework */; }; 9DF3822D260E9BC90033F5A1 /* NSNumber+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3822C260E9BC90033F5A1 /* NSNumber+ADJAdditions.m */; }; + 9DF92D962630EDB0000FC3FC /* ADJPackageParams.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92D952630EDB0000FC3FC /* ADJPackageParams.m */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ @@ -133,13 +132,11 @@ 6F7AF637211878BC00F730B2 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 6F7AF638211878BC00F730B2 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 6F7AF6ED21187CFE00F730B2 /* ADJConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJConfig.h; sourceTree = ""; }; - 6F7AF6EE21187CFE00F730B2 /* ADJDeviceInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJDeviceInfo.m; sourceTree = ""; }; 6F7AF6EF21187CFE00F730B2 /* ADJTimerOnce.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerOnce.m; sourceTree = ""; }; 6F7AF6F021187CFE00F730B2 /* ADJAttributionHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAttributionHandler.m; sourceTree = ""; }; 6F7AF6F121187CFE00F730B2 /* Adjust.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Adjust.h; sourceTree = ""; }; 6F7AF6F221187CFE00F730B2 /* ADJActivityPackage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityPackage.h; sourceTree = ""; }; 6F7AF6F321187CFE00F730B2 /* ADJRequestHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJRequestHandler.m; sourceTree = ""; }; - 6F7AF6F421187CFE00F730B2 /* ADJSystemProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSystemProfile.h; sourceTree = ""; }; 6F7AF6F521187CFE00F730B2 /* ADJAttribution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttribution.h; sourceTree = ""; }; 6F7AF6F721187CFE00F730B2 /* ADJSdkClickHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSdkClickHandler.m; sourceTree = ""; }; 6F7AF6F821187CFE00F730B2 /* ADJActivityKind.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityKind.h; sourceTree = ""; }; @@ -154,7 +151,6 @@ 6F7AF70121187CFE00F730B2 /* ADJActivityState.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityState.m; sourceTree = ""; }; 6F7AF70221187CFE00F730B2 /* ADJSessionFailure.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionFailure.m; sourceTree = ""; }; 6F7AF70321187CFE00F730B2 /* ADJUtil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUtil.h; sourceTree = ""; }; - 6F7AF70421187CFE00F730B2 /* ADJReachability.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJReachability.h; sourceTree = ""; }; 6F7AF70521187CFE00F730B2 /* ADJActivityHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityHandler.h; sourceTree = ""; }; 6F7AF70621187CFE00F730B2 /* ADJTimerCycle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerCycle.m; sourceTree = ""; }; 6F7AF70721187CFE00F730B2 /* ADJSessionParameters.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionParameters.m; sourceTree = ""; }; @@ -164,20 +160,16 @@ 6F7AF70B21187CFE00F730B2 /* Adjust.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Adjust.m; sourceTree = ""; }; 6F7AF70C21187CFE00F730B2 /* ADJAttributionHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttributionHandler.h; sourceTree = ""; }; 6F7AF70D21187CFE00F730B2 /* ADJTimerOnce.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerOnce.h; sourceTree = ""; }; - 6F7AF70E21187CFE00F730B2 /* ADJDeviceInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJDeviceInfo.h; sourceTree = ""; }; 6F7AF70F21187CFE00F730B2 /* ADJConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJConfig.m; sourceTree = ""; }; 6F7AF71021187CFE00F730B2 /* ADJPackageHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageHandler.m; sourceTree = ""; }; 6F7AF71121187CFE00F730B2 /* ADJEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEvent.h; sourceTree = ""; }; 6F7AF71221187CFE00F730B2 /* ADJSdkClickHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSdkClickHandler.h; sourceTree = ""; }; 6F7AF71321187CFE00F730B2 /* ADJActivityKind.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityKind.m; sourceTree = ""; }; 6F7AF71621187CFE00F730B2 /* NSString+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+ADJAdditions.m"; sourceTree = ""; }; - 6F7AF71721187CFE00F730B2 /* UIDevice+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIDevice+ADJAdditions.h"; sourceTree = ""; }; 6F7AF71821187CFE00F730B2 /* NSData+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+ADJAdditions.m"; sourceTree = ""; }; 6F7AF71921187CFE00F730B2 /* NSData+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData+ADJAdditions.h"; sourceTree = ""; }; - 6F7AF71A21187CFE00F730B2 /* UIDevice+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIDevice+ADJAdditions.m"; sourceTree = ""; }; 6F7AF71B21187CFE00F730B2 /* NSString+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+ADJAdditions.h"; sourceTree = ""; }; 6F7AF71C21187CFE00F730B2 /* ADJAttribution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAttribution.m; sourceTree = ""; }; - 6F7AF71D21187CFE00F730B2 /* ADJSystemProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSystemProfile.m; sourceTree = ""; }; 6F7AF71E21187CFE00F730B2 /* ADJRequestHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJRequestHandler.h; sourceTree = ""; }; 6F7AF71F21187CFE00F730B2 /* ADJActivityPackage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityPackage.m; sourceTree = ""; }; 6F7AF72021187CFE00F730B2 /* ADJUtil.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUtil.m; sourceTree = ""; }; @@ -195,7 +187,6 @@ 6F7AF72C21187CFF00F730B2 /* ADJSessionParameters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSessionParameters.h; sourceTree = ""; }; 6F7AF72E21187CFF00F730B2 /* ADJTimerCycle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerCycle.h; sourceTree = ""; }; 6F7AF72F21187CFF00F730B2 /* ADJActivityHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityHandler.m; sourceTree = ""; }; - 6F7AF73021187CFF00F730B2 /* ADJReachability.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJReachability.m; sourceTree = ""; }; 6F7AF78921187EC500F730B2 /* WKWebViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WKWebViewController.h; sourceTree = ""; }; 6F7AF78A21187EC500F730B2 /* WKWebViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = WKWebViewController.m; sourceTree = ""; }; 6F7AF78C2118808300F730B2 /* AdjustTestApp-WebView.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "AdjustTestApp-WebView.html"; sourceTree = ""; }; @@ -205,15 +196,21 @@ 6F7AF7BA2118992200F730B2 /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; 6F84512F25B1B14E0004C7C0 /* ADJThirdPartySharing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJThirdPartySharing.h; sourceTree = ""; }; 6F84513025B1B14E0004C7C0 /* ADJThirdPartySharing.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJThirdPartySharing.m; sourceTree = ""; }; + 6FAB78A12636DD2A00773869 /* ADJLinkResolution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJLinkResolution.m; sourceTree = ""; }; + 6FAB78A22636DD2A00773869 /* ADJLinkResolution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJLinkResolution.h; sourceTree = ""; }; 6FBEE92124E421C800FEF3F1 /* ADJUrlStrategy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUrlStrategy.h; sourceTree = ""; }; 6FBEE92224E421C800FEF3F1 /* ADJUrlStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUrlStrategy.m; sourceTree = ""; }; 6FD0412B211C71D1008D42D0 /* iAd.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = iAd.framework; path = System/Library/Frameworks/iAd.framework; sourceTree = SDKROOT; }; 6FD0412D211C71D9008D42D0 /* AdSupport.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AdSupport.framework; path = System/Library/Frameworks/AdSupport.framework; sourceTree = SDKROOT; }; 6FD0412F211C71E8008D42D0 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; 6FD04131211C71EE008D42D0 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; + 9D3A2AD32626510200BD6E44 /* ADJAdRevenue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdRevenue.h; sourceTree = ""; }; + 9D3A2AD42626510200BD6E44 /* ADJAdRevenue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdRevenue.m; sourceTree = ""; }; 9DAA5C6B25B0F81F00C718DD /* AdServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AdServices.framework; path = System/Library/Frameworks/AdServices.framework; sourceTree = SDKROOT; }; 9DF3822B260E9BC90033F5A1 /* NSNumber+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNumber+ADJAdditions.h"; sourceTree = ""; }; 9DF3822C260E9BC90033F5A1 /* NSNumber+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSNumber+ADJAdditions.m"; sourceTree = ""; }; + 9DF92D942630EDB0000FC3FC /* ADJPackageParams.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJPackageParams.h; sourceTree = ""; }; + 9DF92D952630EDB0000FC3FC /* ADJPackageParams.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageParams.m; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -353,13 +350,11 @@ isa = PBXGroup; children = ( 6F7AF6ED21187CFE00F730B2 /* ADJConfig.h */, - 6F7AF6EE21187CFE00F730B2 /* ADJDeviceInfo.m */, 6F7AF6EF21187CFE00F730B2 /* ADJTimerOnce.m */, 6F7AF6F021187CFE00F730B2 /* ADJAttributionHandler.m */, 6F7AF6F121187CFE00F730B2 /* Adjust.h */, 6F7AF6F221187CFE00F730B2 /* ADJActivityPackage.h */, 6F7AF6F321187CFE00F730B2 /* ADJRequestHandler.m */, - 6F7AF6F421187CFE00F730B2 /* ADJSystemProfile.h */, 6F7AF6F521187CFE00F730B2 /* ADJAttribution.h */, 6F7AF6F721187CFE00F730B2 /* ADJSdkClickHandler.m */, 6F7AF6F821187CFE00F730B2 /* ADJActivityKind.h */, @@ -374,7 +369,6 @@ 6F7AF70121187CFE00F730B2 /* ADJActivityState.m */, 6F7AF70221187CFE00F730B2 /* ADJSessionFailure.m */, 6F7AF70321187CFE00F730B2 /* ADJUtil.h */, - 6F7AF70421187CFE00F730B2 /* ADJReachability.h */, 6F7AF70521187CFE00F730B2 /* ADJActivityHandler.h */, 6F7AF70621187CFE00F730B2 /* ADJTimerCycle.m */, 6F7AF70721187CFE00F730B2 /* ADJSessionParameters.m */, @@ -384,7 +378,6 @@ 6F7AF70B21187CFE00F730B2 /* Adjust.m */, 6F7AF70C21187CFE00F730B2 /* ADJAttributionHandler.h */, 6F7AF70D21187CFE00F730B2 /* ADJTimerOnce.h */, - 6F7AF70E21187CFE00F730B2 /* ADJDeviceInfo.h */, 6F7AF70F21187CFE00F730B2 /* ADJConfig.m */, 6F7AF71021187CFE00F730B2 /* ADJPackageHandler.m */, 6F7AF71121187CFE00F730B2 /* ADJEvent.h */, @@ -392,7 +385,6 @@ 6F7AF71321187CFE00F730B2 /* ADJActivityKind.m */, 6F7AF71521187CFE00F730B2 /* ADJAdditions */, 6F7AF71C21187CFE00F730B2 /* ADJAttribution.m */, - 6F7AF71D21187CFE00F730B2 /* ADJSystemProfile.m */, 6F7AF71E21187CFE00F730B2 /* ADJRequestHandler.h */, 6F7AF71F21187CFE00F730B2 /* ADJActivityPackage.m */, 6F7AF72021187CFE00F730B2 /* ADJUtil.m */, @@ -410,11 +402,16 @@ 6F7AF72C21187CFF00F730B2 /* ADJSessionParameters.h */, 6F7AF72E21187CFF00F730B2 /* ADJTimerCycle.h */, 6F7AF72F21187CFF00F730B2 /* ADJActivityHandler.m */, - 6F7AF73021187CFF00F730B2 /* ADJReachability.m */, 6FBEE92124E421C800FEF3F1 /* ADJUrlStrategy.h */, 6FBEE92224E421C800FEF3F1 /* ADJUrlStrategy.m */, 6F84512F25B1B14E0004C7C0 /* ADJThirdPartySharing.h */, 6F84513025B1B14E0004C7C0 /* ADJThirdPartySharing.m */, + 9D3A2AD32626510200BD6E44 /* ADJAdRevenue.h */, + 9D3A2AD42626510200BD6E44 /* ADJAdRevenue.m */, + 9DF92D942630EDB0000FC3FC /* ADJPackageParams.h */, + 9DF92D952630EDB0000FC3FC /* ADJPackageParams.m */, + 6FAB78A22636DD2A00773869 /* ADJLinkResolution.h */, + 6FAB78A12636DD2A00773869 /* ADJLinkResolution.m */, ); name = Adjust; path = ../../../Adjust; @@ -426,10 +423,8 @@ 9DF3822B260E9BC90033F5A1 /* NSNumber+ADJAdditions.h */, 9DF3822C260E9BC90033F5A1 /* NSNumber+ADJAdditions.m */, 6F7AF71621187CFE00F730B2 /* NSString+ADJAdditions.m */, - 6F7AF71721187CFE00F730B2 /* UIDevice+ADJAdditions.h */, 6F7AF71821187CFE00F730B2 /* NSData+ADJAdditions.m */, 6F7AF71921187CFE00F730B2 /* NSData+ADJAdditions.h */, - 6F7AF71A21187CFE00F730B2 /* UIDevice+ADJAdditions.m */, 6F7AF71B21187CFE00F730B2 /* NSString+ADJAdditions.h */, ); path = ADJAdditions; @@ -524,9 +519,9 @@ 6F7AF74C21187CFF00F730B2 /* ADJAdjustFactory.m in Sources */, 6F6F75CC2327C08B00F47E64 /* ATLControlWebSocketClient.m in Sources */, 6F6F75A623279D4D00F47E64 /* AdjustBridgeRegister.m in Sources */, - 6F7AF74721187CFF00F730B2 /* UIDevice+ADJAdditions.m in Sources */, 6F7AF790211888B500F730B2 /* TestLibraryBridge.m in Sources */, 6F7AF74D21187CFF00F730B2 /* ADJResponseData.m in Sources */, + 9D3A2AD52626510200BD6E44 /* ADJAdRevenue.m in Sources */, 6F7AF73221187CFF00F730B2 /* ADJTimerOnce.m in Sources */, 6F7AF74521187CFF00F730B2 /* NSString+ADJAdditions.m in Sources */, 6F6F75CD2327C08B00F47E64 /* ATLUtil.m in Sources */, @@ -541,20 +536,19 @@ 6F7AF74621187CFF00F730B2 /* NSData+ADJAdditions.m in Sources */, 6F6F75D82327C08B00F47E64 /* ATLTestLibrary.m in Sources */, 6F6F75D42327C08B00F47E64 /* PSWebSocketNetworkThread.m in Sources */, + 9DF92D962630EDB0000FC3FC /* ADJPackageParams.m in Sources */, 9DF3822D260E9BC90033F5A1 /* NSNumber+ADJAdditions.m in Sources */, 6F7AF74321187CFF00F730B2 /* ADJPackageHandler.m in Sources */, 6F6F75D02327C08B00F47E64 /* PSWebSocketDeflater.m in Sources */, 6F6F75A323279D4D00F47E64 /* WebViewJavascriptBridgeBase.m in Sources */, 6F7AF73A21187CFF00F730B2 /* ADJEventSuccess.m in Sources */, 6F7AF74A21187CFF00F730B2 /* ADJActivityPackage.m in Sources */, - 6F7AF75221187CFF00F730B2 /* ADJReachability.m in Sources */, 6F7AF74421187CFF00F730B2 /* ADJActivityKind.m in Sources */, - 6F7AF74921187CFF00F730B2 /* ADJSystemProfile.m in Sources */, + 6FAB78A32636DD2A00773869 /* ADJLinkResolution.m in Sources */, 6F6F75D62327C08B00F47E64 /* PSWebSocketServer.m in Sources */, 6F7AF73B21187CFF00F730B2 /* ADJActivityState.m in Sources */, 6F7AF73F21187CFF00F730B2 /* ADJLogger.m in Sources */, 6F7AF78B21187EC500F730B2 /* WKWebViewController.m in Sources */, - 6F7AF73121187CFF00F730B2 /* ADJDeviceInfo.m in Sources */, 6F7AF73D21187CFF00F730B2 /* ADJTimerCycle.m in Sources */, 6F6F75CF2327C08B00F47E64 /* PSWebSocketInflater.m in Sources */, 6F6F75A523279D4D00F47E64 /* WebViewJavascriptBridge_JS.m in Sources */, diff --git a/CHANGELOG.md b/CHANGELOG.md index b883eb4ab..f5637494f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,15 @@ +### Version 4.29.0 (27th April 2021) +#### Added +- Added `adjustConversionValueUpdated:` callback which can be used to get information when Adjust SDK updates conversion value for the user. +- [beta] Added data residency support for Turkey region. You can choose this setting by calling `setUrlStrategy:` method of `ADJConfig` instance with `AdjustConfig.ADJDataResidencyTR` parameter. +- Added `trackAdRevenue:` method to `Adjust` interface to allow tracking of ad revenue by passing `ADJAdRevenue` object as parameter. +- Added support for `AppLovin MAX` ad revenue tracking. + +#### Changed +- Removed unused ad revenue constants. + +--- + ### Version 4.28.0 (1th April 2021) #### Changed - Removed legacy code. diff --git a/README.md b/README.md index 19455c996..15a6b82c9 100644 --- a/README.md +++ b/README.md @@ -23,6 +23,7 @@ Read this in other languages: [English][en-readme], [中文][zh-readme], [日本 * [Get current authorisation status](#ata-getter) * [SKAdNetwork framework](#skadn-framework) * [Update SKAdNetwork conversion value](#skadn-update-conversion-value) + * [Conversion value updated callback](#skadn-cv-updated-callback) * [Event tracking](#event-tracking) * [Revenue tracking](#revenue-tracking) * [Revenue deduplication](#revenue-deduplication) @@ -60,7 +61,7 @@ Read this in other languages: [English][en-readme], [中文][zh-readme], [日本 * [Deep linking on iOS 9 and later](#deeplinking-setup-new) * [Deferred deep linking scenario](#deeplinking-deferred) * [Reattribution via deep links](#deeplinking-reattribution) - * [Data residency](#data-residency) + * [[beta] Data residency](#data-residency) * [Troubleshooting](#troubleshooting) * [Issues with delayed SDK initialisation](#ts-delayed-init) * [I'm seeing "Adjust requires ARC" error](#ts-arc) @@ -84,13 +85,13 @@ We will describe the steps to integrate the Adjust SDK into your iOS project. We If you're using [CocoaPods][cocoapods], you can add the following line to your `Podfile` and continue from [this step](#sdk-integrate): ```ruby -pod 'Adjust', '~> 4.28.0' +pod 'Adjust', '~> 4.29.0' ``` or: ```ruby -pod 'Adjust', :git => 'https://github.com/adjust/ios_sdk.git', :tag => 'v4.28.0' +pod 'Adjust', :git => 'https://github.com/adjust/ios_sdk.git', :tag => 'v4.29.0' ``` --- @@ -373,6 +374,17 @@ As of iOS SDK v4.26.0 you can use Adjust SDK wrapper method `updateConversionVal [Adjust updateConversionValue:6]; ``` +### Conversion value updated callback + +You can register callback to get notified each time when Adjust SDK updates conversion value for the user. You need to implement `AdjustDelegate` protocol, implement optional `adjustConversionValueUpdated:` method: + +```objc +- (void)adjustConversionValueUpdated:(NSNumber *)conversionValue { + NSLog(@"Conversion value updated callback called!"); + NSLog(@"Conversion value: %@", conversionValue); +} +``` + ### Event tracking You can use adjust to track events. Lets say you want to track every tap on a particular button. You would create a new event token in your [dashboard], which has an associated event token - looking something like `abc123`. In your button's `buttonDown` method you would then add the following lines to track the tap: @@ -603,20 +615,36 @@ Note: The cost data - `costType`, `costAmount` & `costCurrency` are only availab ### Ad revenue tracking -You can track ad revenue information with Adjust SDK by invoking following method: +**Note**: This ad revenue tracking API is available only in the native SDK v4.29.0 and above. + +You can track ad revenue information with Adjust SDK by invoking the following method: ```objc +// initilise ADJAdRevenue instance with appropriate ad revenue source +ADJAdRevenue *adRevenue = [[ADJAdRevenue alloc] initWithSource:source]; +// pass revenue and currency values +[adRevenue setRevenue:1.6 currency:@"USD"]; +// pass optional parameters +[adRevenue setAdImpressionsCount:adImpressionsCount]; +[adRevenue setAdRevenueUnit:adRevenueUnit]; +[adRevenue setAdRevenuePlacement:adRevenuePlacement]; +[adRevenue setAdRevenueNetwork:adRevenueNetwork]; +// attach callback and/or partner parameter if needed +[adRevenue addCallbackParameter:key value:value]; +[adRevenue addPartnerParameter:key value:value]; + +// track ad revenue [Adjust trackAdRevenue:source payload:payload]; ``` -Parameters of the method which you need to pass are: - -- `source` - `NSString` object which indicates the source of ad revenue info. -- `payload` - `NSData` object which contains ad revenue JSON. - Currently we support the below `source` parameter values: -- `ADJAdRevenueSourceMopub` - representing MoPub mediation platform (for more information, check [integration guide][sdk2sdk-mopub]) +- `ADJAdRevenueSourceAppLovinMAX` - representing AppLovin MAX platform. +- `ADJAdRevenueSourceMopub` - representing MoPub platform. +- `ADJAdRevenueSourceAdMob` - representing AdMob platform. +- `ADJAdRevenueSourceIronSource` - representing IronSource platform. + +**Note**: Additional documentation which explains detailed integration with every of the supported sources will be provided outside of this README. Also, in order to use this feature, additional setup is needed for your app in Adjust dashboard, so make sure to get in touch with our support team to make sure that everything is set up correctly before you start to use this feature. ### Subscription tracking @@ -1039,11 +1067,16 @@ The call to `appWillOpenUrl` should be done like this to support deep linking re } ``` -### Data residency +### [beta] Data residency In order to enable data residency feature, make sure to make a call to `setUrlStrategy:` method of the `ADJConfig` instance with one of the following constants: -- `ADJDataResidencyEU` for EU data residency region. +```objc +[adjustConfig setUrlStrategy:ADJDataResidencyEU]; // for EU data residency region +[adjustConfig setUrlStrategy:ADJDataResidencyTR]; // for Turkey data residency region +``` + +**Note:** This feature is currently in beta testing phase. If you are interested in getting access to it, please contact your dedicated account manager or write an email to support@adjust.com. Please, do not turn this setting on before making sure with the support team that this feature is enabled for your app because otherwise SDK traffic will get dropped. ## Troubleshooting diff --git a/VERSION b/VERSION index ad94be36d..e052d5603 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -4.28.0 +4.29.0 diff --git a/doc/chinese/README.md b/doc/chinese/README.md index 70e57e07a..cbd25c1b1 100644 --- a/doc/chinese/README.md +++ b/doc/chinese/README.md @@ -76,13 +76,13 @@ Read this in other languages: [English][en-readme], [中文][zh-readme], [日本 如果您正在使用[CocoaPods][cocoapods],您可以将以下代码行添加至 `Podfile`,然后继续进行[此步骤](#sdk-integrate): ```ruby -pod 'Adjust', '~> 4.28.0' +pod 'Adjust', '~> 4.29.0' ``` 或: ```ruby -pod 'Adjust', :git => 'https://github.com/adjust/ios_sdk.git', :tag => 'v4.28.0' +pod 'Adjust', :git => 'https://github.com/adjust/ios_sdk.git', :tag => 'v4.29.0' ``` --- diff --git a/doc/english/migrate.md b/doc/english/migrate.md index 5c1382668..34c31c080 100644 --- a/doc/english/migrate.md +++ b/doc/english/migrate.md @@ -1,4 +1,4 @@ -## Migrate your Adjust SDK for iOS to v4.28.0 from v3.4.0 +## Migrate your Adjust SDK for iOS to v4.29.0 from v3.4.0 ### Initial setup diff --git a/doc/english/web_views.md b/doc/english/web_views.md index 49663d6c9..d29c448a5 100644 --- a/doc/english/web_views.md +++ b/doc/english/web_views.md @@ -64,7 +64,7 @@ We will describe the steps to integrate the Adjust SDK into your iOS project. We If you're using [CocoaPods][cocoapods], you can add the following line to your `Podfile` and continue from [this step](#sdk-integrate): ```ruby -pod 'Adjust/WebBridge', '~> 4.28.0' +pod 'Adjust/WebBridge', '~> 4.29.0' ``` --- diff --git a/doc/japanese/README.md b/doc/japanese/README.md index 806d54254..04cb300fd 100644 --- a/doc/japanese/README.md +++ b/doc/japanese/README.md @@ -25,13 +25,13 @@ adjust SDKをiOSプロジェクトに連携する手順を説明します。 [こちらの手順](#sdk-integrate)に進んでください。 ```ruby -pod 'Adjust', '~> 4.28.0' +pod 'Adjust', '~> 4.29.0' ``` または ```ruby -pod 'Adjust', :git => 'https://github.com/adjust/ios_sdk.git', :tag => 'v4.28.0' +pod 'Adjust', :git => 'https://github.com/adjust/ios_sdk.git', :tag => 'v4.29.0' ``` --- diff --git a/doc/korean/README.md b/doc/korean/README.md index 80c4cf3dd..8e89cc186 100644 --- a/doc/korean/README.md +++ b/doc/korean/README.md @@ -77,13 +77,13 @@ iOS 개발용 Xcode를 사용한다는 가정하에 iOS 프로젝트에 Adjust S [CocoaPods][cocoapods]를 사용하는 경우, 다음 내용을 `Podfile`에 추가한 후 [해당 단계](#sdk-integrate)를 완료하세요. ```ruby -pod 'Adjust', '~> 4.28.0' +pod 'Adjust', '~> 4.29.0' ``` 또는: ```ruby -pod 'Adjust', :git => 'https://github.com/adjust/ios_sdk.git', :tag => 'v4.28.0' +pod 'Adjust', :git => 'https://github.com/adjust/ios_sdk.git', :tag => 'v4.29.0' ``` --- diff --git a/doc/korean/web_views.md b/doc/korean/web_views.md index 1283d6788..6f0a04bb0 100644 --- a/doc/korean/web_views.md +++ b/doc/korean/web_views.md @@ -64,7 +64,7 @@ iOS 개발용 Xcode를 사용한다는 가정하에 iOS 프로젝트에 Adjust S [CocoaPods][cocoapods]를 사용하는 경우, 다음 내용을 'Podfile'에 추가한 후 [해당 단계](#sdk-integrate)를 완료하세요. ```ruby -pod 'Adjust/WebBridge', '~> 4.28.0' +pod 'Adjust/WebBridge', '~> 4.29.0' ``` --- diff --git a/doc/migrate.md b/doc/migrate.md index 5c1382668..34c31c080 100644 --- a/doc/migrate.md +++ b/doc/migrate.md @@ -1,4 +1,4 @@ -## Migrate your Adjust SDK for iOS to v4.28.0 from v3.4.0 +## Migrate your Adjust SDK for iOS to v4.29.0 from v3.4.0 ### Initial setup diff --git a/examples/AdjustExample-FbPixel/AdjustExample-FbPixel.xcodeproj/project.pbxproj b/examples/AdjustExample-FbPixel/AdjustExample-FbPixel.xcodeproj/project.pbxproj index 866cf8417..0416f98dd 100644 --- a/examples/AdjustExample-FbPixel/AdjustExample-FbPixel.xcodeproj/project.pbxproj +++ b/examples/AdjustExample-FbPixel/AdjustExample-FbPixel.xcodeproj/project.pbxproj @@ -7,8 +7,8 @@ objects = { /* Begin PBXBuildFile section */ + 6FAB78C12636DDC400773869 /* ADJLinkResolution.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FAB78BF2636DDC400773869 /* ADJLinkResolution.m */; }; 9D9D1533212EB3920081445E /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D9D1532212EB3920081445E /* AppDelegate.m */; }; - 9D9D1539212EB3920081445E /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 9D9D1537212EB3920081445E /* Main.storyboard */; }; 9D9D153B212EB3940081445E /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 9D9D153A212EB3940081445E /* Assets.xcassets */; }; 9D9D153E212EB3940081445E /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 9D9D153C212EB3940081445E /* LaunchScreen.storyboard */; }; 9D9D1541212EB3940081445E /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D9D1540212EB3940081445E /* main.m */; }; @@ -16,89 +16,51 @@ 9D9D1563212EB40D0081445E /* AdSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D9D1562212EB40D0081445E /* AdSupport.framework */; }; 9D9D1565212EB4130081445E /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D9D1564212EB4130081445E /* WebKit.framework */; }; 9D9D15E3212EB47C0081445E /* AdjustExample-FbPixel.html in Resources */ = {isa = PBXBuildFile; fileRef = 9D9D15E2212EB47C0081445E /* AdjustExample-FbPixel.html */; }; - 9D9D15E8212EB5230081445E /* UIWebViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D9D15E4212EB5230081445E /* UIWebViewController.m */; }; 9D9D15E9212EB5230081445E /* WKWebViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D9D15E6212EB5230081445E /* WKWebViewController.m */; }; - 9DF382A3260E9E660033F5A1 /* ADJDeviceInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3824B260E9E650033F5A1 /* ADJDeviceInfo.m */; }; - 9DF382A4260E9E660033F5A1 /* ADJTimerOnce.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3824C260E9E650033F5A1 /* ADJTimerOnce.m */; }; - 9DF382A5260E9E660033F5A1 /* ADJAttributionHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3824D260E9E650033F5A1 /* ADJAttributionHandler.m */; }; - 9DF382A6260E9E660033F5A1 /* ADJRequestHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38250260E9E650033F5A1 /* ADJRequestHandler.m */; }; - 9DF382A8260E9E660033F5A1 /* ADJSdkClickHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38255260E9E660033F5A1 /* ADJSdkClickHandler.m */; }; - 9DF382A9260E9E660033F5A1 /* ADJEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38257260E9E660033F5A1 /* ADJEvent.m */; }; - 9DF382AA260E9E660033F5A1 /* ADJSessionSuccess.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3825C260E9E660033F5A1 /* ADJSessionSuccess.m */; }; - 9DF382AB260E9E660033F5A1 /* ADJEventFailure.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3825D260E9E660033F5A1 /* ADJEventFailure.m */; }; - 9DF382AC260E9E660033F5A1 /* ADJEventSuccess.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3826B260E9E660033F5A1 /* ADJEventSuccess.m */; }; - 9DF382AD260E9E660033F5A1 /* ADJActivityState.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3826C260E9E660033F5A1 /* ADJActivityState.m */; }; - 9DF382AE260E9E660033F5A1 /* ADJSessionFailure.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3826E260E9E660033F5A1 /* ADJSessionFailure.m */; }; - 9DF382AF260E9E660033F5A1 /* ADJTimerCycle.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38272260E9E660033F5A1 /* ADJTimerCycle.m */; }; - 9DF382B0260E9E660033F5A1 /* ADJSessionParameters.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38273260E9E660033F5A1 /* ADJSessionParameters.m */; }; - 9DF382B1260E9E660033F5A1 /* ADJLogger.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38274260E9E660033F5A1 /* ADJLogger.m */; }; - 9DF382B2260E9E660033F5A1 /* ADJBackoffStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38275260E9E660033F5A1 /* ADJBackoffStrategy.m */; }; - 9DF382B3260E9E660033F5A1 /* Adjust.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38277260E9E660033F5A1 /* Adjust.m */; }; - 9DF382B4260E9E660033F5A1 /* ADJConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3827B260E9E660033F5A1 /* ADJConfig.m */; }; - 9DF382B5260E9E660033F5A1 /* ADJPackageHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3827C260E9E660033F5A1 /* ADJPackageHandler.m */; }; - 9DF382B6260E9E660033F5A1 /* ADJActivityKind.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3827F260E9E660033F5A1 /* ADJActivityKind.m */; }; - 9DF382B7260E9E660033F5A1 /* NSString+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38283260E9E660033F5A1 /* NSString+ADJAdditions.m */; }; - 9DF382B8260E9E660033F5A1 /* NSData+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38285260E9E660033F5A1 /* NSData+ADJAdditions.m */; }; - 9DF382B9260E9E660033F5A1 /* NSNumber+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38286260E9E660033F5A1 /* NSNumber+ADJAdditions.m */; }; - 9DF382BA260E9E660033F5A1 /* UIDevice+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38288260E9E660033F5A1 /* UIDevice+ADJAdditions.m */; }; - 9DF382BB260E9E660033F5A1 /* ADJAttribution.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3828A260E9E660033F5A1 /* ADJAttribution.m */; }; - 9DF382BC260E9E660033F5A1 /* ADJThirdPartySharing.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3828B260E9E660033F5A1 /* ADJThirdPartySharing.m */; }; - 9DF382BD260E9E660033F5A1 /* ADJSystemProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3828C260E9E660033F5A1 /* ADJSystemProfile.m */; }; - 9DF382BE260E9E660033F5A1 /* ADJActivityPackage.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3828E260E9E660033F5A1 /* ADJActivityPackage.m */; }; - 9DF382BF260E9E660033F5A1 /* ADJUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3828F260E9E660033F5A1 /* ADJUtil.m */; }; - 9DF382C0260E9E660033F5A1 /* ADJUrlStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38290260E9E660033F5A1 /* ADJUrlStrategy.m */; }; - 9DF382C1260E9E660033F5A1 /* ADJAdjustFactory.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38293260E9E660033F5A1 /* ADJAdjustFactory.m */; }; - 9DF382C2260E9E660033F5A1 /* ADJResponseData.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38297260E9E660033F5A1 /* ADJResponseData.m */; }; - 9DF382C3260E9E660033F5A1 /* ADJPackageBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38299260E9E660033F5A1 /* ADJPackageBuilder.m */; }; - 9DF382C4260E9E660033F5A1 /* ADJSubscription.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3829A260E9E660033F5A1 /* ADJSubscription.m */; }; - 9DF382C5260E9E660033F5A1 /* ADJUserDefaults.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3829B260E9E660033F5A1 /* ADJUserDefaults.m */; }; - 9DF382C7260E9E660033F5A1 /* ADJActivityHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF382A1260E9E660033F5A1 /* ADJActivityHandler.m */; }; - 9DF382C8260E9E660033F5A1 /* ADJReachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF382A2260E9E660033F5A1 /* ADJReachability.m */; }; - 9DF38335260E9EB50033F5A1 /* AdjustBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF382CC260E9EB40033F5A1 /* AdjustBridge.m */; }; - 9DF38336260E9EB50033F5A1 /* ADJDeviceInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF382CF260E9EB40033F5A1 /* ADJDeviceInfo.m */; }; - 9DF38337260E9EB50033F5A1 /* ADJTimerOnce.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF382D0260E9EB40033F5A1 /* ADJTimerOnce.m */; }; - 9DF38338260E9EB50033F5A1 /* ADJAttributionHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF382D1260E9EB40033F5A1 /* ADJAttributionHandler.m */; }; - 9DF38339260E9EB50033F5A1 /* ADJRequestHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF382D4260E9EB40033F5A1 /* ADJRequestHandler.m */; }; - 9DF3833B260E9EB50033F5A1 /* ADJSdkClickHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF382D9260E9EB40033F5A1 /* ADJSdkClickHandler.m */; }; - 9DF3833C260E9EB50033F5A1 /* ADJEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF382DB260E9EB40033F5A1 /* ADJEvent.m */; }; - 9DF3833D260E9EB50033F5A1 /* ADJSessionSuccess.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF382E0260E9EB40033F5A1 /* ADJSessionSuccess.m */; }; - 9DF3833E260E9EB50033F5A1 /* ADJEventFailure.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF382E1260E9EB40033F5A1 /* ADJEventFailure.m */; }; - 9DF3833F260E9EB50033F5A1 /* ADJEventSuccess.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF382EF260E9EB40033F5A1 /* ADJEventSuccess.m */; }; - 9DF38340260E9EB50033F5A1 /* ADJActivityState.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF382F0260E9EB40033F5A1 /* ADJActivityState.m */; }; - 9DF38341260E9EB50033F5A1 /* ADJSessionFailure.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF382F2260E9EB40033F5A1 /* ADJSessionFailure.m */; }; - 9DF38342260E9EB50033F5A1 /* ADJTimerCycle.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF382F6260E9EB40033F5A1 /* ADJTimerCycle.m */; }; - 9DF38343260E9EB50033F5A1 /* ADJSessionParameters.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF382F7260E9EB40033F5A1 /* ADJSessionParameters.m */; }; - 9DF38344260E9EB50033F5A1 /* ADJLogger.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF382F8260E9EB40033F5A1 /* ADJLogger.m */; }; - 9DF38345260E9EB50033F5A1 /* ADJBackoffStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF382F9260E9EB40033F5A1 /* ADJBackoffStrategy.m */; }; - 9DF38346260E9EB50033F5A1 /* Adjust.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF382FB260E9EB40033F5A1 /* Adjust.m */; }; - 9DF38347260E9EB50033F5A1 /* ADJConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF382FF260E9EB40033F5A1 /* ADJConfig.m */; }; - 9DF38348260E9EB50033F5A1 /* ADJPackageHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38300260E9EB40033F5A1 /* ADJPackageHandler.m */; }; - 9DF38349260E9EB50033F5A1 /* ADJActivityKind.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38303260E9EB40033F5A1 /* ADJActivityKind.m */; }; - 9DF3834A260E9EB50033F5A1 /* NSString+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38307260E9EB40033F5A1 /* NSString+ADJAdditions.m */; }; - 9DF3834B260E9EB50033F5A1 /* NSData+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38309260E9EB40033F5A1 /* NSData+ADJAdditions.m */; }; - 9DF3834C260E9EB50033F5A1 /* NSNumber+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3830A260E9EB40033F5A1 /* NSNumber+ADJAdditions.m */; }; - 9DF3834D260E9EB50033F5A1 /* UIDevice+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3830C260E9EB40033F5A1 /* UIDevice+ADJAdditions.m */; }; - 9DF3834E260E9EB50033F5A1 /* ADJAttribution.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3830E260E9EB40033F5A1 /* ADJAttribution.m */; }; - 9DF3834F260E9EB50033F5A1 /* ADJThirdPartySharing.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3830F260E9EB40033F5A1 /* ADJThirdPartySharing.m */; }; - 9DF38350260E9EB50033F5A1 /* ADJSystemProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38310260E9EB40033F5A1 /* ADJSystemProfile.m */; }; - 9DF38351260E9EB50033F5A1 /* ADJActivityPackage.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38312260E9EB40033F5A1 /* ADJActivityPackage.m */; }; - 9DF38352260E9EB50033F5A1 /* ADJUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38313260E9EB40033F5A1 /* ADJUtil.m */; }; - 9DF38353260E9EB50033F5A1 /* ADJUrlStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38314260E9EB40033F5A1 /* ADJUrlStrategy.m */; }; - 9DF38354260E9EB50033F5A1 /* ADJAdjustFactory.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38317260E9EB40033F5A1 /* ADJAdjustFactory.m */; }; - 9DF38355260E9EB50033F5A1 /* ADJResponseData.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3831A260E9EB40033F5A1 /* ADJResponseData.m */; }; - 9DF38356260E9EB50033F5A1 /* ADJPackageBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3831C260E9EB40033F5A1 /* ADJPackageBuilder.m */; }; - 9DF38357260E9EB50033F5A1 /* ADJSubscription.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3831D260E9EB40033F5A1 /* ADJSubscription.m */; }; - 9DF38358260E9EB50033F5A1 /* ADJUserDefaults.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3831E260E9EB40033F5A1 /* ADJUserDefaults.m */; }; - 9DF38359260E9EB50033F5A1 /* Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 9DF38322260E9EB40033F5A1 /* Info.plist */; }; - 9DF3835A260E9EB50033F5A1 /* ADJActivityHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38324260E9EB50033F5A1 /* ADJActivityHandler.m */; }; - 9DF3835B260E9EB50033F5A1 /* ADJReachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38325260E9EB50033F5A1 /* ADJReachability.m */; }; - 9DF3835C260E9EB50033F5A1 /* WebViewJavascriptBridgeBase.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38328260E9EB50033F5A1 /* WebViewJavascriptBridgeBase.m */; }; - 9DF3835D260E9EB50033F5A1 /* WKWebViewJavascriptBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38329260E9EB50033F5A1 /* WKWebViewJavascriptBridge.m */; }; - 9DF3835E260E9EB50033F5A1 /* WebViewJavascriptBridge_JS.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3832C260E9EB50033F5A1 /* WebViewJavascriptBridge_JS.m */; }; - 9DF3835F260E9EB50033F5A1 /* AdjustBridgeRegister.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38334260E9EB50033F5A1 /* AdjustBridgeRegister.m */; }; + 9DF92F042630F377000FC3FC /* ADJAdRevenue.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EB22630F377000FC3FC /* ADJAdRevenue.m */; }; + 9DF92F052630F377000FC3FC /* ADJTimerOnce.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EB32630F377000FC3FC /* ADJTimerOnce.m */; }; + 9DF92F062630F377000FC3FC /* ADJAttributionHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EB42630F377000FC3FC /* ADJAttributionHandler.m */; }; + 9DF92F072630F377000FC3FC /* ADJRequestHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EB72630F377000FC3FC /* ADJRequestHandler.m */; }; + 9DF92F082630F377000FC3FC /* ADJSdkClickHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EBA2630F377000FC3FC /* ADJSdkClickHandler.m */; }; + 9DF92F092630F377000FC3FC /* ADJEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EBC2630F377000FC3FC /* ADJEvent.m */; }; + 9DF92F0A2630F377000FC3FC /* ADJSessionSuccess.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EC12630F377000FC3FC /* ADJSessionSuccess.m */; }; + 9DF92F0B2630F377000FC3FC /* ADJEventFailure.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EC22630F377000FC3FC /* ADJEventFailure.m */; }; + 9DF92F0C2630F377000FC3FC /* ADJEventSuccess.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92ED02630F377000FC3FC /* ADJEventSuccess.m */; }; + 9DF92F0D2630F377000FC3FC /* ADJActivityState.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92ED12630F377000FC3FC /* ADJActivityState.m */; }; + 9DF92F0E2630F377000FC3FC /* ADJSessionFailure.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92ED32630F377000FC3FC /* ADJSessionFailure.m */; }; + 9DF92F0F2630F377000FC3FC /* ADJTimerCycle.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92ED72630F377000FC3FC /* ADJTimerCycle.m */; }; + 9DF92F102630F377000FC3FC /* ADJSessionParameters.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92ED82630F377000FC3FC /* ADJSessionParameters.m */; }; + 9DF92F112630F377000FC3FC /* ADJLogger.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92ED92630F377000FC3FC /* ADJLogger.m */; }; + 9DF92F122630F377000FC3FC /* ADJBackoffStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EDA2630F377000FC3FC /* ADJBackoffStrategy.m */; }; + 9DF92F132630F377000FC3FC /* Adjust.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EDC2630F377000FC3FC /* Adjust.m */; }; + 9DF92F142630F377000FC3FC /* ADJConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EE02630F377000FC3FC /* ADJConfig.m */; }; + 9DF92F152630F377000FC3FC /* ADJPackageHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EE12630F377000FC3FC /* ADJPackageHandler.m */; }; + 9DF92F162630F377000FC3FC /* ADJActivityKind.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EE42630F377000FC3FC /* ADJActivityKind.m */; }; + 9DF92F172630F377000FC3FC /* NSString+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EE72630F377000FC3FC /* NSString+ADJAdditions.m */; }; + 9DF92F182630F377000FC3FC /* NSData+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EE82630F377000FC3FC /* NSData+ADJAdditions.m */; }; + 9DF92F192630F377000FC3FC /* NSNumber+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EE92630F377000FC3FC /* NSNumber+ADJAdditions.m */; }; + 9DF92F1A2630F377000FC3FC /* ADJAttribution.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EEC2630F377000FC3FC /* ADJAttribution.m */; }; + 9DF92F1B2630F377000FC3FC /* ADJThirdPartySharing.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EED2630F377000FC3FC /* ADJThirdPartySharing.m */; }; + 9DF92F1C2630F377000FC3FC /* ADJActivityPackage.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EEF2630F377000FC3FC /* ADJActivityPackage.m */; }; + 9DF92F1D2630F377000FC3FC /* ADJUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EF02630F377000FC3FC /* ADJUtil.m */; }; + 9DF92F1E2630F377000FC3FC /* ADJUrlStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EF12630F377000FC3FC /* ADJUrlStrategy.m */; }; + 9DF92F1F2630F377000FC3FC /* ADJAdjustFactory.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EF42630F377000FC3FC /* ADJAdjustFactory.m */; }; + 9DF92F202630F377000FC3FC /* ADJResponseData.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EF82630F377000FC3FC /* ADJResponseData.m */; }; + 9DF92F212630F377000FC3FC /* ADJPackageBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EFA2630F377000FC3FC /* ADJPackageBuilder.m */; }; + 9DF92F222630F377000FC3FC /* ADJSubscription.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EFB2630F377000FC3FC /* ADJSubscription.m */; }; + 9DF92F232630F377000FC3FC /* ADJUserDefaults.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92EFC2630F377000FC3FC /* ADJUserDefaults.m */; }; + 9DF92F252630F377000FC3FC /* ADJActivityHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92F022630F377000FC3FC /* ADJActivityHandler.m */; }; + 9DF92F262630F377000FC3FC /* ADJPackageParams.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92F032630F377000FC3FC /* ADJPackageParams.m */; }; + 9DF92F8B2630F3A1000FC3FC /* AdjustBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92F282630F3A0000FC3FC /* AdjustBridge.m */; }; + 9DF92FAF2630F3A1000FC3FC /* WebViewJavascriptBridgeBase.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92F7E2630F3A1000FC3FC /* WebViewJavascriptBridgeBase.m */; }; + 9DF92FB02630F3A1000FC3FC /* WKWebViewJavascriptBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92F7F2630F3A1000FC3FC /* WKWebViewJavascriptBridge.m */; }; + 9DF92FB12630F3A1000FC3FC /* WebViewJavascriptBridge_JS.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92F822630F3A1000FC3FC /* WebViewJavascriptBridge_JS.m */; }; + 9DF92FB22630F3A1000FC3FC /* AdjustBridgeRegister.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92F8A2630F3A1000FC3FC /* AdjustBridgeRegister.m */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ + 6FAB78BF2636DDC400773869 /* ADJLinkResolution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJLinkResolution.m; sourceTree = ""; }; + 6FAB78C02636DDC400773869 /* ADJLinkResolution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJLinkResolution.h; sourceTree = ""; }; 9D9D152E212EB3920081445E /* AdjustExample-FbPixel.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "AdjustExample-FbPixel.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 9D9D1531212EB3920081445E /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; 9D9D1532212EB3920081445E /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; @@ -111,180 +73,87 @@ 9D9D1562212EB40D0081445E /* AdSupport.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AdSupport.framework; path = System/Library/Frameworks/AdSupport.framework; sourceTree = SDKROOT; }; 9D9D1564212EB4130081445E /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; 9D9D15E2212EB47C0081445E /* AdjustExample-FbPixel.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "AdjustExample-FbPixel.html"; sourceTree = ""; }; - 9D9D15E4212EB5230081445E /* UIWebViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UIWebViewController.m; sourceTree = ""; }; - 9D9D15E5212EB5230081445E /* UIWebViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UIWebViewController.h; sourceTree = ""; }; 9D9D15E6212EB5230081445E /* WKWebViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WKWebViewController.m; sourceTree = ""; }; 9D9D15E7212EB5230081445E /* WKWebViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKWebViewController.h; sourceTree = ""; }; - 9DF3824A260E9E650033F5A1 /* ADJConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJConfig.h; sourceTree = ""; }; - 9DF3824B260E9E650033F5A1 /* ADJDeviceInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJDeviceInfo.m; sourceTree = ""; }; - 9DF3824C260E9E650033F5A1 /* ADJTimerOnce.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerOnce.m; sourceTree = ""; }; - 9DF3824D260E9E650033F5A1 /* ADJAttributionHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAttributionHandler.m; sourceTree = ""; }; - 9DF3824E260E9E650033F5A1 /* Adjust.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Adjust.h; sourceTree = ""; }; - 9DF3824F260E9E650033F5A1 /* ADJActivityPackage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityPackage.h; sourceTree = ""; }; - 9DF38250260E9E650033F5A1 /* ADJRequestHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJRequestHandler.m; sourceTree = ""; }; - 9DF38251260E9E650033F5A1 /* ADJSystemProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSystemProfile.h; sourceTree = ""; }; - 9DF38252260E9E650033F5A1 /* ADJThirdPartySharing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJThirdPartySharing.h; sourceTree = ""; }; - 9DF38253260E9E660033F5A1 /* ADJAttribution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttribution.h; sourceTree = ""; }; - 9DF38255260E9E660033F5A1 /* ADJSdkClickHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSdkClickHandler.m; sourceTree = ""; }; - 9DF38256260E9E660033F5A1 /* ADJActivityKind.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityKind.h; sourceTree = ""; }; - 9DF38257260E9E660033F5A1 /* ADJEvent.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJEvent.m; sourceTree = ""; }; - 9DF38258260E9E660033F5A1 /* ADJPackageHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJPackageHandler.h; sourceTree = ""; }; - 9DF38259260E9E660033F5A1 /* ADJSubscription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSubscription.h; sourceTree = ""; }; - 9DF3825A260E9E660033F5A1 /* ADJPackageBuilder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJPackageBuilder.h; sourceTree = ""; }; - 9DF3825B260E9E660033F5A1 /* ADJResponseData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJResponseData.h; sourceTree = ""; }; - 9DF3825C260E9E660033F5A1 /* ADJSessionSuccess.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionSuccess.m; sourceTree = ""; }; - 9DF3825D260E9E660033F5A1 /* ADJEventFailure.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJEventFailure.m; sourceTree = ""; }; - 9DF3825E260E9E660033F5A1 /* ADJAdjustFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdjustFactory.h; sourceTree = ""; }; - 9DF3826B260E9E660033F5A1 /* ADJEventSuccess.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJEventSuccess.m; sourceTree = ""; }; - 9DF3826C260E9E660033F5A1 /* ADJActivityState.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityState.m; sourceTree = ""; }; - 9DF3826D260E9E660033F5A1 /* ADJUrlStrategy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUrlStrategy.h; sourceTree = ""; }; - 9DF3826E260E9E660033F5A1 /* ADJSessionFailure.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionFailure.m; sourceTree = ""; }; - 9DF3826F260E9E660033F5A1 /* ADJUtil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUtil.h; sourceTree = ""; }; - 9DF38270260E9E660033F5A1 /* ADJReachability.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJReachability.h; sourceTree = ""; }; - 9DF38271260E9E660033F5A1 /* ADJActivityHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityHandler.h; sourceTree = ""; }; - 9DF38272260E9E660033F5A1 /* ADJTimerCycle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerCycle.m; sourceTree = ""; }; - 9DF38273260E9E660033F5A1 /* ADJSessionParameters.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionParameters.m; sourceTree = ""; }; - 9DF38274260E9E660033F5A1 /* ADJLogger.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJLogger.m; sourceTree = ""; }; - 9DF38275260E9E660033F5A1 /* ADJBackoffStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJBackoffStrategy.m; sourceTree = ""; }; - 9DF38276260E9E660033F5A1 /* ADJUserDefaults.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUserDefaults.h; sourceTree = ""; }; - 9DF38277260E9E660033F5A1 /* Adjust.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Adjust.m; sourceTree = ""; }; - 9DF38278260E9E660033F5A1 /* ADJAttributionHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttributionHandler.h; sourceTree = ""; }; - 9DF38279260E9E660033F5A1 /* ADJTimerOnce.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerOnce.h; sourceTree = ""; }; - 9DF3827A260E9E660033F5A1 /* ADJDeviceInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJDeviceInfo.h; sourceTree = ""; }; - 9DF3827B260E9E660033F5A1 /* ADJConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJConfig.m; sourceTree = ""; }; - 9DF3827C260E9E660033F5A1 /* ADJPackageHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageHandler.m; sourceTree = ""; }; - 9DF3827D260E9E660033F5A1 /* ADJEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEvent.h; sourceTree = ""; }; - 9DF3827E260E9E660033F5A1 /* ADJSdkClickHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSdkClickHandler.h; sourceTree = ""; }; - 9DF3827F260E9E660033F5A1 /* ADJActivityKind.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityKind.m; sourceTree = ""; }; - 9DF38282260E9E660033F5A1 /* NSNumber+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNumber+ADJAdditions.h"; sourceTree = ""; }; - 9DF38283260E9E660033F5A1 /* NSString+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+ADJAdditions.m"; sourceTree = ""; }; - 9DF38284260E9E660033F5A1 /* UIDevice+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIDevice+ADJAdditions.h"; sourceTree = ""; }; - 9DF38285260E9E660033F5A1 /* NSData+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+ADJAdditions.m"; sourceTree = ""; }; - 9DF38286260E9E660033F5A1 /* NSNumber+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSNumber+ADJAdditions.m"; sourceTree = ""; }; - 9DF38287260E9E660033F5A1 /* NSData+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData+ADJAdditions.h"; sourceTree = ""; }; - 9DF38288260E9E660033F5A1 /* UIDevice+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIDevice+ADJAdditions.m"; sourceTree = ""; }; - 9DF38289260E9E660033F5A1 /* NSString+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+ADJAdditions.h"; sourceTree = ""; }; - 9DF3828A260E9E660033F5A1 /* ADJAttribution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAttribution.m; sourceTree = ""; }; - 9DF3828B260E9E660033F5A1 /* ADJThirdPartySharing.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJThirdPartySharing.m; sourceTree = ""; }; - 9DF3828C260E9E660033F5A1 /* ADJSystemProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSystemProfile.m; sourceTree = ""; }; - 9DF3828D260E9E660033F5A1 /* ADJRequestHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJRequestHandler.h; sourceTree = ""; }; - 9DF3828E260E9E660033F5A1 /* ADJActivityPackage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityPackage.m; sourceTree = ""; }; - 9DF3828F260E9E660033F5A1 /* ADJUtil.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUtil.m; sourceTree = ""; }; - 9DF38290260E9E660033F5A1 /* ADJUrlStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUrlStrategy.m; sourceTree = ""; }; - 9DF38291260E9E660033F5A1 /* ADJSessionFailure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSessionFailure.h; sourceTree = ""; }; - 9DF38292260E9E660033F5A1 /* ADJActivityState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityState.h; sourceTree = ""; }; - 9DF38293260E9E660033F5A1 /* ADJAdjustFactory.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdjustFactory.m; sourceTree = ""; }; - 9DF38294260E9E660033F5A1 /* ADJEventSuccess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEventSuccess.h; sourceTree = ""; }; - 9DF38295260E9E660033F5A1 /* ADJEventFailure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEventFailure.h; sourceTree = ""; }; - 9DF38297260E9E660033F5A1 /* ADJResponseData.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJResponseData.m; sourceTree = ""; }; - 9DF38298260E9E660033F5A1 /* ADJSessionSuccess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSessionSuccess.h; sourceTree = ""; }; - 9DF38299260E9E660033F5A1 /* ADJPackageBuilder.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageBuilder.m; sourceTree = ""; }; - 9DF3829A260E9E660033F5A1 /* ADJSubscription.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSubscription.m; sourceTree = ""; }; - 9DF3829B260E9E660033F5A1 /* ADJUserDefaults.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUserDefaults.m; sourceTree = ""; }; - 9DF3829C260E9E660033F5A1 /* ADJBackoffStrategy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJBackoffStrategy.h; sourceTree = ""; }; - 9DF3829D260E9E660033F5A1 /* ADJLogger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJLogger.h; sourceTree = ""; }; - 9DF3829E260E9E660033F5A1 /* ADJSessionParameters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSessionParameters.h; sourceTree = ""; }; - 9DF382A0260E9E660033F5A1 /* ADJTimerCycle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerCycle.h; sourceTree = ""; }; - 9DF382A1260E9E660033F5A1 /* ADJActivityHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityHandler.m; sourceTree = ""; }; - 9DF382A2260E9E660033F5A1 /* ADJReachability.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJReachability.m; sourceTree = ""; }; - 9DF382CC260E9EB40033F5A1 /* AdjustBridge.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AdjustBridge.m; sourceTree = ""; }; - 9DF382CE260E9EB40033F5A1 /* ADJConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJConfig.h; sourceTree = ""; }; - 9DF382CF260E9EB40033F5A1 /* ADJDeviceInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJDeviceInfo.m; sourceTree = ""; }; - 9DF382D0260E9EB40033F5A1 /* ADJTimerOnce.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerOnce.m; sourceTree = ""; }; - 9DF382D1260E9EB40033F5A1 /* ADJAttributionHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAttributionHandler.m; sourceTree = ""; }; - 9DF382D2260E9EB40033F5A1 /* Adjust.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Adjust.h; sourceTree = ""; }; - 9DF382D3260E9EB40033F5A1 /* ADJActivityPackage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityPackage.h; sourceTree = ""; }; - 9DF382D4260E9EB40033F5A1 /* ADJRequestHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJRequestHandler.m; sourceTree = ""; }; - 9DF382D5260E9EB40033F5A1 /* ADJSystemProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSystemProfile.h; sourceTree = ""; }; - 9DF382D6260E9EB40033F5A1 /* ADJThirdPartySharing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJThirdPartySharing.h; sourceTree = ""; }; - 9DF382D7260E9EB40033F5A1 /* ADJAttribution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttribution.h; sourceTree = ""; }; - 9DF382D9260E9EB40033F5A1 /* ADJSdkClickHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSdkClickHandler.m; sourceTree = ""; }; - 9DF382DA260E9EB40033F5A1 /* ADJActivityKind.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityKind.h; sourceTree = ""; }; - 9DF382DB260E9EB40033F5A1 /* ADJEvent.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJEvent.m; sourceTree = ""; }; - 9DF382DC260E9EB40033F5A1 /* ADJPackageHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJPackageHandler.h; sourceTree = ""; }; - 9DF382DD260E9EB40033F5A1 /* ADJSubscription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSubscription.h; sourceTree = ""; }; - 9DF382DE260E9EB40033F5A1 /* ADJPackageBuilder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJPackageBuilder.h; sourceTree = ""; }; - 9DF382DF260E9EB40033F5A1 /* ADJResponseData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJResponseData.h; sourceTree = ""; }; - 9DF382E0260E9EB40033F5A1 /* ADJSessionSuccess.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionSuccess.m; sourceTree = ""; }; - 9DF382E1260E9EB40033F5A1 /* ADJEventFailure.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJEventFailure.m; sourceTree = ""; }; - 9DF382E2260E9EB40033F5A1 /* ADJAdjustFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdjustFactory.h; sourceTree = ""; }; - 9DF382E4260E9EB40033F5A1 /* ADJConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJConfig.h; sourceTree = ""; }; - 9DF382E5260E9EB40033F5A1 /* Adjust.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Adjust.h; sourceTree = ""; }; - 9DF382E6260E9EB40033F5A1 /* ADJThirdPartySharing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJThirdPartySharing.h; sourceTree = ""; }; - 9DF382E7260E9EB40033F5A1 /* ADJAttribution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttribution.h; sourceTree = ""; }; - 9DF382E8260E9EB40033F5A1 /* ADJSubscription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSubscription.h; sourceTree = ""; }; - 9DF382E9260E9EB40033F5A1 /* ADJEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEvent.h; sourceTree = ""; }; - 9DF382EA260E9EB40033F5A1 /* ADJSessionFailure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSessionFailure.h; sourceTree = ""; }; - 9DF382EB260E9EB40033F5A1 /* ADJEventSuccess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEventSuccess.h; sourceTree = ""; }; - 9DF382EC260E9EB40033F5A1 /* ADJEventFailure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEventFailure.h; sourceTree = ""; }; - 9DF382ED260E9EB40033F5A1 /* ADJSessionSuccess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSessionSuccess.h; sourceTree = ""; }; - 9DF382EE260E9EB40033F5A1 /* ADJLogger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJLogger.h; sourceTree = ""; }; - 9DF382EF260E9EB40033F5A1 /* ADJEventSuccess.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJEventSuccess.m; sourceTree = ""; }; - 9DF382F0260E9EB40033F5A1 /* ADJActivityState.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityState.m; sourceTree = ""; }; - 9DF382F1260E9EB40033F5A1 /* ADJUrlStrategy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUrlStrategy.h; sourceTree = ""; }; - 9DF382F2260E9EB40033F5A1 /* ADJSessionFailure.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionFailure.m; sourceTree = ""; }; - 9DF382F3260E9EB40033F5A1 /* ADJUtil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUtil.h; sourceTree = ""; }; - 9DF382F4260E9EB40033F5A1 /* ADJReachability.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJReachability.h; sourceTree = ""; }; - 9DF382F5260E9EB40033F5A1 /* ADJActivityHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityHandler.h; sourceTree = ""; }; - 9DF382F6260E9EB40033F5A1 /* ADJTimerCycle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerCycle.m; sourceTree = ""; }; - 9DF382F7260E9EB40033F5A1 /* ADJSessionParameters.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionParameters.m; sourceTree = ""; }; - 9DF382F8260E9EB40033F5A1 /* ADJLogger.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJLogger.m; sourceTree = ""; }; - 9DF382F9260E9EB40033F5A1 /* ADJBackoffStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJBackoffStrategy.m; sourceTree = ""; }; - 9DF382FA260E9EB40033F5A1 /* ADJUserDefaults.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUserDefaults.h; sourceTree = ""; }; - 9DF382FB260E9EB40033F5A1 /* Adjust.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Adjust.m; sourceTree = ""; }; - 9DF382FC260E9EB40033F5A1 /* ADJAttributionHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttributionHandler.h; sourceTree = ""; }; - 9DF382FD260E9EB40033F5A1 /* ADJTimerOnce.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerOnce.h; sourceTree = ""; }; - 9DF382FE260E9EB40033F5A1 /* ADJDeviceInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJDeviceInfo.h; sourceTree = ""; }; - 9DF382FF260E9EB40033F5A1 /* ADJConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJConfig.m; sourceTree = ""; }; - 9DF38300260E9EB40033F5A1 /* ADJPackageHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageHandler.m; sourceTree = ""; }; - 9DF38301260E9EB40033F5A1 /* ADJEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEvent.h; sourceTree = ""; }; - 9DF38302260E9EB40033F5A1 /* ADJSdkClickHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSdkClickHandler.h; sourceTree = ""; }; - 9DF38303260E9EB40033F5A1 /* ADJActivityKind.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityKind.m; sourceTree = ""; }; - 9DF38306260E9EB40033F5A1 /* NSNumber+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNumber+ADJAdditions.h"; sourceTree = ""; }; - 9DF38307260E9EB40033F5A1 /* NSString+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+ADJAdditions.m"; sourceTree = ""; }; - 9DF38308260E9EB40033F5A1 /* UIDevice+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIDevice+ADJAdditions.h"; sourceTree = ""; }; - 9DF38309260E9EB40033F5A1 /* NSData+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+ADJAdditions.m"; sourceTree = ""; }; - 9DF3830A260E9EB40033F5A1 /* NSNumber+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSNumber+ADJAdditions.m"; sourceTree = ""; }; - 9DF3830B260E9EB40033F5A1 /* NSData+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData+ADJAdditions.h"; sourceTree = ""; }; - 9DF3830C260E9EB40033F5A1 /* UIDevice+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIDevice+ADJAdditions.m"; sourceTree = ""; }; - 9DF3830D260E9EB40033F5A1 /* NSString+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+ADJAdditions.h"; sourceTree = ""; }; - 9DF3830E260E9EB40033F5A1 /* ADJAttribution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAttribution.m; sourceTree = ""; }; - 9DF3830F260E9EB40033F5A1 /* ADJThirdPartySharing.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJThirdPartySharing.m; sourceTree = ""; }; - 9DF38310260E9EB40033F5A1 /* ADJSystemProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSystemProfile.m; sourceTree = ""; }; - 9DF38311260E9EB40033F5A1 /* ADJRequestHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJRequestHandler.h; sourceTree = ""; }; - 9DF38312260E9EB40033F5A1 /* ADJActivityPackage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityPackage.m; sourceTree = ""; }; - 9DF38313260E9EB40033F5A1 /* ADJUtil.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUtil.m; sourceTree = ""; }; - 9DF38314260E9EB40033F5A1 /* ADJUrlStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUrlStrategy.m; sourceTree = ""; }; - 9DF38315260E9EB40033F5A1 /* ADJSessionFailure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSessionFailure.h; sourceTree = ""; }; - 9DF38316260E9EB40033F5A1 /* ADJActivityState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityState.h; sourceTree = ""; }; - 9DF38317260E9EB40033F5A1 /* ADJAdjustFactory.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdjustFactory.m; sourceTree = ""; }; - 9DF38318260E9EB40033F5A1 /* ADJEventSuccess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEventSuccess.h; sourceTree = ""; }; - 9DF38319260E9EB40033F5A1 /* ADJEventFailure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEventFailure.h; sourceTree = ""; }; - 9DF3831A260E9EB40033F5A1 /* ADJResponseData.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJResponseData.m; sourceTree = ""; }; - 9DF3831B260E9EB40033F5A1 /* ADJSessionSuccess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSessionSuccess.h; sourceTree = ""; }; - 9DF3831C260E9EB40033F5A1 /* ADJPackageBuilder.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageBuilder.m; sourceTree = ""; }; - 9DF3831D260E9EB40033F5A1 /* ADJSubscription.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSubscription.m; sourceTree = ""; }; - 9DF3831E260E9EB40033F5A1 /* ADJUserDefaults.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUserDefaults.m; sourceTree = ""; }; - 9DF3831F260E9EB40033F5A1 /* ADJBackoffStrategy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJBackoffStrategy.h; sourceTree = ""; }; - 9DF38320260E9EB40033F5A1 /* ADJLogger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJLogger.h; sourceTree = ""; }; - 9DF38321260E9EB40033F5A1 /* ADJSessionParameters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSessionParameters.h; sourceTree = ""; }; - 9DF38322260E9EB40033F5A1 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 9DF38323260E9EB50033F5A1 /* ADJTimerCycle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerCycle.h; sourceTree = ""; }; - 9DF38324260E9EB50033F5A1 /* ADJActivityHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityHandler.m; sourceTree = ""; }; - 9DF38325260E9EB50033F5A1 /* ADJReachability.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJReachability.m; sourceTree = ""; }; - 9DF38326260E9EB50033F5A1 /* AdjustBridgeRegister.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AdjustBridgeRegister.h; sourceTree = ""; }; - 9DF38328260E9EB50033F5A1 /* WebViewJavascriptBridgeBase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WebViewJavascriptBridgeBase.m; sourceTree = ""; }; - 9DF38329260E9EB50033F5A1 /* WKWebViewJavascriptBridge.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WKWebViewJavascriptBridge.m; sourceTree = ""; }; - 9DF3832A260E9EB50033F5A1 /* WebViewJavascriptBridge_JS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebViewJavascriptBridge_JS.h; sourceTree = ""; }; - 9DF3832B260E9EB50033F5A1 /* WebViewJavascriptBridgeBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebViewJavascriptBridgeBase.h; sourceTree = ""; }; - 9DF3832C260E9EB50033F5A1 /* WebViewJavascriptBridge_JS.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WebViewJavascriptBridge_JS.m; sourceTree = ""; }; - 9DF3832D260E9EB50033F5A1 /* WKWebViewJavascriptBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKWebViewJavascriptBridge.h; sourceTree = ""; }; - 9DF3832F260E9EB50033F5A1 /* AdjustBridgeRegister.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AdjustBridgeRegister.h; sourceTree = ""; }; - 9DF38330260E9EB50033F5A1 /* WebViewJavascriptBridgeBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebViewJavascriptBridgeBase.h; sourceTree = ""; }; - 9DF38331260E9EB50033F5A1 /* AdjustBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AdjustBridge.h; sourceTree = ""; }; - 9DF38332260E9EB50033F5A1 /* WKWebViewJavascriptBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKWebViewJavascriptBridge.h; sourceTree = ""; }; - 9DF38333260E9EB50033F5A1 /* AdjustBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AdjustBridge.h; sourceTree = ""; }; - 9DF38334260E9EB50033F5A1 /* AdjustBridgeRegister.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AdjustBridgeRegister.m; sourceTree = ""; }; + 9DF92EB12630F377000FC3FC /* ADJConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJConfig.h; sourceTree = ""; }; + 9DF92EB22630F377000FC3FC /* ADJAdRevenue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdRevenue.m; sourceTree = ""; }; + 9DF92EB32630F377000FC3FC /* ADJTimerOnce.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerOnce.m; sourceTree = ""; }; + 9DF92EB42630F377000FC3FC /* ADJAttributionHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAttributionHandler.m; sourceTree = ""; }; + 9DF92EB52630F377000FC3FC /* Adjust.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Adjust.h; sourceTree = ""; }; + 9DF92EB62630F377000FC3FC /* ADJActivityPackage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityPackage.h; sourceTree = ""; }; + 9DF92EB72630F377000FC3FC /* ADJRequestHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJRequestHandler.m; sourceTree = ""; }; + 9DF92EB82630F377000FC3FC /* ADJThirdPartySharing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJThirdPartySharing.h; sourceTree = ""; }; + 9DF92EB92630F377000FC3FC /* ADJAttribution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttribution.h; sourceTree = ""; }; + 9DF92EBA2630F377000FC3FC /* ADJSdkClickHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSdkClickHandler.m; sourceTree = ""; }; + 9DF92EBB2630F377000FC3FC /* ADJActivityKind.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityKind.h; sourceTree = ""; }; + 9DF92EBC2630F377000FC3FC /* ADJEvent.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJEvent.m; sourceTree = ""; }; + 9DF92EBD2630F377000FC3FC /* ADJPackageHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJPackageHandler.h; sourceTree = ""; }; + 9DF92EBE2630F377000FC3FC /* ADJSubscription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSubscription.h; sourceTree = ""; }; + 9DF92EBF2630F377000FC3FC /* ADJPackageBuilder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJPackageBuilder.h; sourceTree = ""; }; + 9DF92EC02630F377000FC3FC /* ADJResponseData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJResponseData.h; sourceTree = ""; }; + 9DF92EC12630F377000FC3FC /* ADJSessionSuccess.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionSuccess.m; sourceTree = ""; }; + 9DF92EC22630F377000FC3FC /* ADJEventFailure.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJEventFailure.m; sourceTree = ""; }; + 9DF92EC32630F377000FC3FC /* ADJAdjustFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdjustFactory.h; sourceTree = ""; }; + 9DF92ED02630F377000FC3FC /* ADJEventSuccess.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJEventSuccess.m; sourceTree = ""; }; + 9DF92ED12630F377000FC3FC /* ADJActivityState.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityState.m; sourceTree = ""; }; + 9DF92ED22630F377000FC3FC /* ADJUrlStrategy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUrlStrategy.h; sourceTree = ""; }; + 9DF92ED32630F377000FC3FC /* ADJSessionFailure.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionFailure.m; sourceTree = ""; }; + 9DF92ED42630F377000FC3FC /* ADJUtil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUtil.h; sourceTree = ""; }; + 9DF92ED52630F377000FC3FC /* ADJPackageParams.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJPackageParams.h; sourceTree = ""; }; + 9DF92ED62630F377000FC3FC /* ADJActivityHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityHandler.h; sourceTree = ""; }; + 9DF92ED72630F377000FC3FC /* ADJTimerCycle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerCycle.m; sourceTree = ""; }; + 9DF92ED82630F377000FC3FC /* ADJSessionParameters.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionParameters.m; sourceTree = ""; }; + 9DF92ED92630F377000FC3FC /* ADJLogger.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJLogger.m; sourceTree = ""; }; + 9DF92EDA2630F377000FC3FC /* ADJBackoffStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJBackoffStrategy.m; sourceTree = ""; }; + 9DF92EDB2630F377000FC3FC /* ADJUserDefaults.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUserDefaults.h; sourceTree = ""; }; + 9DF92EDC2630F377000FC3FC /* Adjust.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Adjust.m; sourceTree = ""; }; + 9DF92EDD2630F377000FC3FC /* ADJAttributionHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttributionHandler.h; sourceTree = ""; }; + 9DF92EDE2630F377000FC3FC /* ADJTimerOnce.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerOnce.h; sourceTree = ""; }; + 9DF92EDF2630F377000FC3FC /* ADJAdRevenue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdRevenue.h; sourceTree = ""; }; + 9DF92EE02630F377000FC3FC /* ADJConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJConfig.m; sourceTree = ""; }; + 9DF92EE12630F377000FC3FC /* ADJPackageHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageHandler.m; sourceTree = ""; }; + 9DF92EE22630F377000FC3FC /* ADJEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEvent.h; sourceTree = ""; }; + 9DF92EE32630F377000FC3FC /* ADJSdkClickHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSdkClickHandler.h; sourceTree = ""; }; + 9DF92EE42630F377000FC3FC /* ADJActivityKind.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityKind.m; sourceTree = ""; }; + 9DF92EE62630F377000FC3FC /* NSNumber+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNumber+ADJAdditions.h"; sourceTree = ""; }; + 9DF92EE72630F377000FC3FC /* NSString+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+ADJAdditions.m"; sourceTree = ""; }; + 9DF92EE82630F377000FC3FC /* NSData+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+ADJAdditions.m"; sourceTree = ""; }; + 9DF92EE92630F377000FC3FC /* NSNumber+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSNumber+ADJAdditions.m"; sourceTree = ""; }; + 9DF92EEA2630F377000FC3FC /* NSData+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData+ADJAdditions.h"; sourceTree = ""; }; + 9DF92EEB2630F377000FC3FC /* NSString+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+ADJAdditions.h"; sourceTree = ""; }; + 9DF92EEC2630F377000FC3FC /* ADJAttribution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAttribution.m; sourceTree = ""; }; + 9DF92EED2630F377000FC3FC /* ADJThirdPartySharing.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJThirdPartySharing.m; sourceTree = ""; }; + 9DF92EEE2630F377000FC3FC /* ADJRequestHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJRequestHandler.h; sourceTree = ""; }; + 9DF92EEF2630F377000FC3FC /* ADJActivityPackage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityPackage.m; sourceTree = ""; }; + 9DF92EF02630F377000FC3FC /* ADJUtil.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUtil.m; sourceTree = ""; }; + 9DF92EF12630F377000FC3FC /* ADJUrlStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUrlStrategy.m; sourceTree = ""; }; + 9DF92EF22630F377000FC3FC /* ADJSessionFailure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSessionFailure.h; sourceTree = ""; }; + 9DF92EF32630F377000FC3FC /* ADJActivityState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityState.h; sourceTree = ""; }; + 9DF92EF42630F377000FC3FC /* ADJAdjustFactory.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdjustFactory.m; sourceTree = ""; }; + 9DF92EF52630F377000FC3FC /* ADJEventSuccess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEventSuccess.h; sourceTree = ""; }; + 9DF92EF62630F377000FC3FC /* ADJEventFailure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEventFailure.h; sourceTree = ""; }; + 9DF92EF82630F377000FC3FC /* ADJResponseData.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJResponseData.m; sourceTree = ""; }; + 9DF92EF92630F377000FC3FC /* ADJSessionSuccess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSessionSuccess.h; sourceTree = ""; }; + 9DF92EFA2630F377000FC3FC /* ADJPackageBuilder.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageBuilder.m; sourceTree = ""; }; + 9DF92EFB2630F377000FC3FC /* ADJSubscription.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSubscription.m; sourceTree = ""; }; + 9DF92EFC2630F377000FC3FC /* ADJUserDefaults.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUserDefaults.m; sourceTree = ""; }; + 9DF92EFD2630F377000FC3FC /* ADJBackoffStrategy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJBackoffStrategy.h; sourceTree = ""; }; + 9DF92EFE2630F377000FC3FC /* ADJLogger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJLogger.h; sourceTree = ""; }; + 9DF92EFF2630F377000FC3FC /* ADJSessionParameters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSessionParameters.h; sourceTree = ""; }; + 9DF92F002630F377000FC3FC /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 9DF92F012630F377000FC3FC /* ADJTimerCycle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerCycle.h; sourceTree = ""; }; + 9DF92F022630F377000FC3FC /* ADJActivityHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityHandler.m; sourceTree = ""; }; + 9DF92F032630F377000FC3FC /* ADJPackageParams.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageParams.m; sourceTree = ""; }; + 9DF92F282630F3A0000FC3FC /* AdjustBridge.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AdjustBridge.m; sourceTree = ""; }; + 9DF92F7C2630F3A1000FC3FC /* AdjustBridgeRegister.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AdjustBridgeRegister.h; sourceTree = ""; }; + 9DF92F7E2630F3A1000FC3FC /* WebViewJavascriptBridgeBase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WebViewJavascriptBridgeBase.m; sourceTree = ""; }; + 9DF92F7F2630F3A1000FC3FC /* WKWebViewJavascriptBridge.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WKWebViewJavascriptBridge.m; sourceTree = ""; }; + 9DF92F802630F3A1000FC3FC /* WebViewJavascriptBridge_JS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebViewJavascriptBridge_JS.h; sourceTree = ""; }; + 9DF92F812630F3A1000FC3FC /* WebViewJavascriptBridgeBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebViewJavascriptBridgeBase.h; sourceTree = ""; }; + 9DF92F822630F3A1000FC3FC /* WebViewJavascriptBridge_JS.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WebViewJavascriptBridge_JS.m; sourceTree = ""; }; + 9DF92F832630F3A1000FC3FC /* WKWebViewJavascriptBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKWebViewJavascriptBridge.h; sourceTree = ""; }; + 9DF92F892630F3A1000FC3FC /* AdjustBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AdjustBridge.h; sourceTree = ""; }; + 9DF92F8A2630F3A1000FC3FC /* AdjustBridgeRegister.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AdjustBridgeRegister.m; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -301,15 +170,6 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 9D0F16522193F94C00F5140E /* Supporting Files */ = { - isa = PBXGroup; - children = ( - 9DF382CB260E9EB40033F5A1 /* AdjustBridge */, - 9DF38249260E9E650033F5A1 /* Adjust */, - ); - path = "Supporting Files"; - sourceTree = ""; - }; 9D9D1525212EB3920081445E = { isa = PBXGroup; children = ( @@ -332,8 +192,6 @@ children = ( 9D9D1531212EB3920081445E /* AppDelegate.h */, 9D9D1532212EB3920081445E /* AppDelegate.m */, - 9D9D15E5212EB5230081445E /* UIWebViewController.h */, - 9D9D15E4212EB5230081445E /* UIWebViewController.m */, 9D9D15E7212EB5230081445E /* WKWebViewController.h */, 9D9D15E6212EB5230081445E /* WKWebViewController.m */, 9D9D1537212EB3920081445E /* Main.storyboard */, @@ -342,7 +200,8 @@ 9D9D153F212EB3940081445E /* Info.plist */, 9D9D1540212EB3940081445E /* main.m */, 9D9D15E2212EB47C0081445E /* AdjustExample-FbPixel.html */, - 9D0F16522193F94C00F5140E /* Supporting Files */, + 9DF92EB02630F377000FC3FC /* Adjust */, + 9DF92F272630F3A0000FC3FC /* AdjustBridge */, ); path = "AdjustExample-FbPixel"; sourceTree = ""; @@ -357,240 +216,119 @@ name = Frameworks; sourceTree = ""; }; - 9DF38249260E9E650033F5A1 /* Adjust */ = { + 9DF92EB02630F377000FC3FC /* Adjust */ = { isa = PBXGroup; children = ( - 9DF3824A260E9E650033F5A1 /* ADJConfig.h */, - 9DF3824B260E9E650033F5A1 /* ADJDeviceInfo.m */, - 9DF3824C260E9E650033F5A1 /* ADJTimerOnce.m */, - 9DF3824D260E9E650033F5A1 /* ADJAttributionHandler.m */, - 9DF3824E260E9E650033F5A1 /* Adjust.h */, - 9DF3824F260E9E650033F5A1 /* ADJActivityPackage.h */, - 9DF38250260E9E650033F5A1 /* ADJRequestHandler.m */, - 9DF38251260E9E650033F5A1 /* ADJSystemProfile.h */, - 9DF38252260E9E650033F5A1 /* ADJThirdPartySharing.h */, - 9DF38253260E9E660033F5A1 /* ADJAttribution.h */, - 9DF38255260E9E660033F5A1 /* ADJSdkClickHandler.m */, - 9DF38256260E9E660033F5A1 /* ADJActivityKind.h */, - 9DF38257260E9E660033F5A1 /* ADJEvent.m */, - 9DF38258260E9E660033F5A1 /* ADJPackageHandler.h */, - 9DF38259260E9E660033F5A1 /* ADJSubscription.h */, - 9DF3825A260E9E660033F5A1 /* ADJPackageBuilder.h */, - 9DF3825B260E9E660033F5A1 /* ADJResponseData.h */, - 9DF3825C260E9E660033F5A1 /* ADJSessionSuccess.m */, - 9DF3825D260E9E660033F5A1 /* ADJEventFailure.m */, - 9DF3825E260E9E660033F5A1 /* ADJAdjustFactory.h */, - 9DF3826B260E9E660033F5A1 /* ADJEventSuccess.m */, - 9DF3826C260E9E660033F5A1 /* ADJActivityState.m */, - 9DF3826D260E9E660033F5A1 /* ADJUrlStrategy.h */, - 9DF3826E260E9E660033F5A1 /* ADJSessionFailure.m */, - 9DF3826F260E9E660033F5A1 /* ADJUtil.h */, - 9DF38270260E9E660033F5A1 /* ADJReachability.h */, - 9DF38271260E9E660033F5A1 /* ADJActivityHandler.h */, - 9DF38272260E9E660033F5A1 /* ADJTimerCycle.m */, - 9DF38273260E9E660033F5A1 /* ADJSessionParameters.m */, - 9DF38274260E9E660033F5A1 /* ADJLogger.m */, - 9DF38275260E9E660033F5A1 /* ADJBackoffStrategy.m */, - 9DF38276260E9E660033F5A1 /* ADJUserDefaults.h */, - 9DF38277260E9E660033F5A1 /* Adjust.m */, - 9DF38278260E9E660033F5A1 /* ADJAttributionHandler.h */, - 9DF38279260E9E660033F5A1 /* ADJTimerOnce.h */, - 9DF3827A260E9E660033F5A1 /* ADJDeviceInfo.h */, - 9DF3827B260E9E660033F5A1 /* ADJConfig.m */, - 9DF3827C260E9E660033F5A1 /* ADJPackageHandler.m */, - 9DF3827D260E9E660033F5A1 /* ADJEvent.h */, - 9DF3827E260E9E660033F5A1 /* ADJSdkClickHandler.h */, - 9DF3827F260E9E660033F5A1 /* ADJActivityKind.m */, - 9DF38281260E9E660033F5A1 /* ADJAdditions */, - 9DF3828A260E9E660033F5A1 /* ADJAttribution.m */, - 9DF3828B260E9E660033F5A1 /* ADJThirdPartySharing.m */, - 9DF3828C260E9E660033F5A1 /* ADJSystemProfile.m */, - 9DF3828D260E9E660033F5A1 /* ADJRequestHandler.h */, - 9DF3828E260E9E660033F5A1 /* ADJActivityPackage.m */, - 9DF3828F260E9E660033F5A1 /* ADJUtil.m */, - 9DF38290260E9E660033F5A1 /* ADJUrlStrategy.m */, - 9DF38291260E9E660033F5A1 /* ADJSessionFailure.h */, - 9DF38292260E9E660033F5A1 /* ADJActivityState.h */, - 9DF38293260E9E660033F5A1 /* ADJAdjustFactory.m */, - 9DF38294260E9E660033F5A1 /* ADJEventSuccess.h */, - 9DF38295260E9E660033F5A1 /* ADJEventFailure.h */, - 9DF38297260E9E660033F5A1 /* ADJResponseData.m */, - 9DF38298260E9E660033F5A1 /* ADJSessionSuccess.h */, - 9DF38299260E9E660033F5A1 /* ADJPackageBuilder.m */, - 9DF3829A260E9E660033F5A1 /* ADJSubscription.m */, - 9DF3829B260E9E660033F5A1 /* ADJUserDefaults.m */, - 9DF3829C260E9E660033F5A1 /* ADJBackoffStrategy.h */, - 9DF3829D260E9E660033F5A1 /* ADJLogger.h */, - 9DF3829E260E9E660033F5A1 /* ADJSessionParameters.h */, - 9DF382A0260E9E660033F5A1 /* ADJTimerCycle.h */, - 9DF382A1260E9E660033F5A1 /* ADJActivityHandler.m */, - 9DF382A2260E9E660033F5A1 /* ADJReachability.m */, + 9DF92EB12630F377000FC3FC /* ADJConfig.h */, + 9DF92EB22630F377000FC3FC /* ADJAdRevenue.m */, + 9DF92EB32630F377000FC3FC /* ADJTimerOnce.m */, + 9DF92EB42630F377000FC3FC /* ADJAttributionHandler.m */, + 9DF92EB52630F377000FC3FC /* Adjust.h */, + 9DF92EB62630F377000FC3FC /* ADJActivityPackage.h */, + 9DF92EB72630F377000FC3FC /* ADJRequestHandler.m */, + 9DF92EB82630F377000FC3FC /* ADJThirdPartySharing.h */, + 9DF92EB92630F377000FC3FC /* ADJAttribution.h */, + 9DF92EBA2630F377000FC3FC /* ADJSdkClickHandler.m */, + 9DF92EBB2630F377000FC3FC /* ADJActivityKind.h */, + 9DF92EBC2630F377000FC3FC /* ADJEvent.m */, + 9DF92EBD2630F377000FC3FC /* ADJPackageHandler.h */, + 9DF92EBE2630F377000FC3FC /* ADJSubscription.h */, + 9DF92EBF2630F377000FC3FC /* ADJPackageBuilder.h */, + 9DF92EC02630F377000FC3FC /* ADJResponseData.h */, + 9DF92EC12630F377000FC3FC /* ADJSessionSuccess.m */, + 9DF92EC22630F377000FC3FC /* ADJEventFailure.m */, + 9DF92EC32630F377000FC3FC /* ADJAdjustFactory.h */, + 9DF92ED02630F377000FC3FC /* ADJEventSuccess.m */, + 9DF92ED12630F377000FC3FC /* ADJActivityState.m */, + 9DF92ED22630F377000FC3FC /* ADJUrlStrategy.h */, + 9DF92ED32630F377000FC3FC /* ADJSessionFailure.m */, + 9DF92ED42630F377000FC3FC /* ADJUtil.h */, + 9DF92ED52630F377000FC3FC /* ADJPackageParams.h */, + 9DF92ED62630F377000FC3FC /* ADJActivityHandler.h */, + 9DF92ED72630F377000FC3FC /* ADJTimerCycle.m */, + 9DF92ED82630F377000FC3FC /* ADJSessionParameters.m */, + 9DF92ED92630F377000FC3FC /* ADJLogger.m */, + 9DF92EDA2630F377000FC3FC /* ADJBackoffStrategy.m */, + 9DF92EDB2630F377000FC3FC /* ADJUserDefaults.h */, + 9DF92EDC2630F377000FC3FC /* Adjust.m */, + 9DF92EDD2630F377000FC3FC /* ADJAttributionHandler.h */, + 9DF92EDE2630F377000FC3FC /* ADJTimerOnce.h */, + 9DF92EDF2630F377000FC3FC /* ADJAdRevenue.h */, + 9DF92EE02630F377000FC3FC /* ADJConfig.m */, + 9DF92EE12630F377000FC3FC /* ADJPackageHandler.m */, + 9DF92EE22630F377000FC3FC /* ADJEvent.h */, + 9DF92EE32630F377000FC3FC /* ADJSdkClickHandler.h */, + 9DF92EE42630F377000FC3FC /* ADJActivityKind.m */, + 9DF92EE52630F377000FC3FC /* ADJAdditions */, + 9DF92EEC2630F377000FC3FC /* ADJAttribution.m */, + 9DF92EED2630F377000FC3FC /* ADJThirdPartySharing.m */, + 9DF92EEE2630F377000FC3FC /* ADJRequestHandler.h */, + 9DF92EEF2630F377000FC3FC /* ADJActivityPackage.m */, + 9DF92EF02630F377000FC3FC /* ADJUtil.m */, + 9DF92EF12630F377000FC3FC /* ADJUrlStrategy.m */, + 9DF92EF22630F377000FC3FC /* ADJSessionFailure.h */, + 9DF92EF32630F377000FC3FC /* ADJActivityState.h */, + 9DF92EF42630F377000FC3FC /* ADJAdjustFactory.m */, + 9DF92EF52630F377000FC3FC /* ADJEventSuccess.h */, + 9DF92EF62630F377000FC3FC /* ADJEventFailure.h */, + 9DF92EF82630F377000FC3FC /* ADJResponseData.m */, + 9DF92EF92630F377000FC3FC /* ADJSessionSuccess.h */, + 9DF92EFA2630F377000FC3FC /* ADJPackageBuilder.m */, + 9DF92EFB2630F377000FC3FC /* ADJSubscription.m */, + 9DF92EFC2630F377000FC3FC /* ADJUserDefaults.m */, + 9DF92EFD2630F377000FC3FC /* ADJBackoffStrategy.h */, + 9DF92EFE2630F377000FC3FC /* ADJLogger.h */, + 9DF92EFF2630F377000FC3FC /* ADJSessionParameters.h */, + 9DF92F002630F377000FC3FC /* Info.plist */, + 9DF92F012630F377000FC3FC /* ADJTimerCycle.h */, + 9DF92F022630F377000FC3FC /* ADJActivityHandler.m */, + 9DF92F032630F377000FC3FC /* ADJPackageParams.m */, + 6FAB78C02636DDC400773869 /* ADJLinkResolution.h */, + 6FAB78BF2636DDC400773869 /* ADJLinkResolution.m */, ); name = Adjust; - path = ../../../../Adjust; + path = ../../../Adjust; sourceTree = ""; }; - 9DF38281260E9E660033F5A1 /* ADJAdditions */ = { + 9DF92EE52630F377000FC3FC /* ADJAdditions */ = { isa = PBXGroup; children = ( - 9DF38282260E9E660033F5A1 /* NSNumber+ADJAdditions.h */, - 9DF38283260E9E660033F5A1 /* NSString+ADJAdditions.m */, - 9DF38284260E9E660033F5A1 /* UIDevice+ADJAdditions.h */, - 9DF38285260E9E660033F5A1 /* NSData+ADJAdditions.m */, - 9DF38286260E9E660033F5A1 /* NSNumber+ADJAdditions.m */, - 9DF38287260E9E660033F5A1 /* NSData+ADJAdditions.h */, - 9DF38288260E9E660033F5A1 /* UIDevice+ADJAdditions.m */, - 9DF38289260E9E660033F5A1 /* NSString+ADJAdditions.h */, + 9DF92EE62630F377000FC3FC /* NSNumber+ADJAdditions.h */, + 9DF92EE72630F377000FC3FC /* NSString+ADJAdditions.m */, + 9DF92EE82630F377000FC3FC /* NSData+ADJAdditions.m */, + 9DF92EE92630F377000FC3FC /* NSNumber+ADJAdditions.m */, + 9DF92EEA2630F377000FC3FC /* NSData+ADJAdditions.h */, + 9DF92EEB2630F377000FC3FC /* NSString+ADJAdditions.h */, ); path = ADJAdditions; sourceTree = ""; }; - 9DF382CB260E9EB40033F5A1 /* AdjustBridge */ = { + 9DF92F272630F3A0000FC3FC /* AdjustBridge */ = { isa = PBXGroup; children = ( - 9DF382CC260E9EB40033F5A1 /* AdjustBridge.m */, - 9DF382CD260E9EB40033F5A1 /* Adjust */, - 9DF38326260E9EB50033F5A1 /* AdjustBridgeRegister.h */, - 9DF38327260E9EB50033F5A1 /* WebViewJavascriptBridge */, - 9DF3832E260E9EB50033F5A1 /* include */, - 9DF38333260E9EB50033F5A1 /* AdjustBridge.h */, - 9DF38334260E9EB50033F5A1 /* AdjustBridgeRegister.m */, + 9DF92F892630F3A1000FC3FC /* AdjustBridge.h */, + 9DF92F282630F3A0000FC3FC /* AdjustBridge.m */, + 9DF92F7C2630F3A1000FC3FC /* AdjustBridgeRegister.h */, + 9DF92F8A2630F3A1000FC3FC /* AdjustBridgeRegister.m */, + 9DF92F7D2630F3A1000FC3FC /* WebViewJavascriptBridge */, ); name = AdjustBridge; - path = ../../../../AdjustBridge; - sourceTree = ""; - }; - 9DF382CD260E9EB40033F5A1 /* Adjust */ = { - isa = PBXGroup; - children = ( - 9DF382CE260E9EB40033F5A1 /* ADJConfig.h */, - 9DF382CF260E9EB40033F5A1 /* ADJDeviceInfo.m */, - 9DF382D0260E9EB40033F5A1 /* ADJTimerOnce.m */, - 9DF382D1260E9EB40033F5A1 /* ADJAttributionHandler.m */, - 9DF382D2260E9EB40033F5A1 /* Adjust.h */, - 9DF382D3260E9EB40033F5A1 /* ADJActivityPackage.h */, - 9DF382D4260E9EB40033F5A1 /* ADJRequestHandler.m */, - 9DF382D5260E9EB40033F5A1 /* ADJSystemProfile.h */, - 9DF382D6260E9EB40033F5A1 /* ADJThirdPartySharing.h */, - 9DF382D7260E9EB40033F5A1 /* ADJAttribution.h */, - 9DF382D9260E9EB40033F5A1 /* ADJSdkClickHandler.m */, - 9DF382DA260E9EB40033F5A1 /* ADJActivityKind.h */, - 9DF382DB260E9EB40033F5A1 /* ADJEvent.m */, - 9DF382DC260E9EB40033F5A1 /* ADJPackageHandler.h */, - 9DF382DD260E9EB40033F5A1 /* ADJSubscription.h */, - 9DF382DE260E9EB40033F5A1 /* ADJPackageBuilder.h */, - 9DF382DF260E9EB40033F5A1 /* ADJResponseData.h */, - 9DF382E0260E9EB40033F5A1 /* ADJSessionSuccess.m */, - 9DF382E1260E9EB40033F5A1 /* ADJEventFailure.m */, - 9DF382E2260E9EB40033F5A1 /* ADJAdjustFactory.h */, - 9DF382E3260E9EB40033F5A1 /* include */, - 9DF382EF260E9EB40033F5A1 /* ADJEventSuccess.m */, - 9DF382F0260E9EB40033F5A1 /* ADJActivityState.m */, - 9DF382F1260E9EB40033F5A1 /* ADJUrlStrategy.h */, - 9DF382F2260E9EB40033F5A1 /* ADJSessionFailure.m */, - 9DF382F3260E9EB40033F5A1 /* ADJUtil.h */, - 9DF382F4260E9EB40033F5A1 /* ADJReachability.h */, - 9DF382F5260E9EB40033F5A1 /* ADJActivityHandler.h */, - 9DF382F6260E9EB40033F5A1 /* ADJTimerCycle.m */, - 9DF382F7260E9EB40033F5A1 /* ADJSessionParameters.m */, - 9DF382F8260E9EB40033F5A1 /* ADJLogger.m */, - 9DF382F9260E9EB40033F5A1 /* ADJBackoffStrategy.m */, - 9DF382FA260E9EB40033F5A1 /* ADJUserDefaults.h */, - 9DF382FB260E9EB40033F5A1 /* Adjust.m */, - 9DF382FC260E9EB40033F5A1 /* ADJAttributionHandler.h */, - 9DF382FD260E9EB40033F5A1 /* ADJTimerOnce.h */, - 9DF382FE260E9EB40033F5A1 /* ADJDeviceInfo.h */, - 9DF382FF260E9EB40033F5A1 /* ADJConfig.m */, - 9DF38300260E9EB40033F5A1 /* ADJPackageHandler.m */, - 9DF38301260E9EB40033F5A1 /* ADJEvent.h */, - 9DF38302260E9EB40033F5A1 /* ADJSdkClickHandler.h */, - 9DF38303260E9EB40033F5A1 /* ADJActivityKind.m */, - 9DF38305260E9EB40033F5A1 /* ADJAdditions */, - 9DF3830E260E9EB40033F5A1 /* ADJAttribution.m */, - 9DF3830F260E9EB40033F5A1 /* ADJThirdPartySharing.m */, - 9DF38310260E9EB40033F5A1 /* ADJSystemProfile.m */, - 9DF38311260E9EB40033F5A1 /* ADJRequestHandler.h */, - 9DF38312260E9EB40033F5A1 /* ADJActivityPackage.m */, - 9DF38313260E9EB40033F5A1 /* ADJUtil.m */, - 9DF38314260E9EB40033F5A1 /* ADJUrlStrategy.m */, - 9DF38315260E9EB40033F5A1 /* ADJSessionFailure.h */, - 9DF38316260E9EB40033F5A1 /* ADJActivityState.h */, - 9DF38317260E9EB40033F5A1 /* ADJAdjustFactory.m */, - 9DF38318260E9EB40033F5A1 /* ADJEventSuccess.h */, - 9DF38319260E9EB40033F5A1 /* ADJEventFailure.h */, - 9DF3831A260E9EB40033F5A1 /* ADJResponseData.m */, - 9DF3831B260E9EB40033F5A1 /* ADJSessionSuccess.h */, - 9DF3831C260E9EB40033F5A1 /* ADJPackageBuilder.m */, - 9DF3831D260E9EB40033F5A1 /* ADJSubscription.m */, - 9DF3831E260E9EB40033F5A1 /* ADJUserDefaults.m */, - 9DF3831F260E9EB40033F5A1 /* ADJBackoffStrategy.h */, - 9DF38320260E9EB40033F5A1 /* ADJLogger.h */, - 9DF38321260E9EB40033F5A1 /* ADJSessionParameters.h */, - 9DF38322260E9EB40033F5A1 /* Info.plist */, - 9DF38323260E9EB50033F5A1 /* ADJTimerCycle.h */, - 9DF38324260E9EB50033F5A1 /* ADJActivityHandler.m */, - 9DF38325260E9EB50033F5A1 /* ADJReachability.m */, - ); - path = Adjust; - sourceTree = ""; - }; - 9DF382E3260E9EB40033F5A1 /* include */ = { - isa = PBXGroup; - children = ( - 9DF382E4260E9EB40033F5A1 /* ADJConfig.h */, - 9DF382E5260E9EB40033F5A1 /* Adjust.h */, - 9DF382E6260E9EB40033F5A1 /* ADJThirdPartySharing.h */, - 9DF382E7260E9EB40033F5A1 /* ADJAttribution.h */, - 9DF382E8260E9EB40033F5A1 /* ADJSubscription.h */, - 9DF382E9260E9EB40033F5A1 /* ADJEvent.h */, - 9DF382EA260E9EB40033F5A1 /* ADJSessionFailure.h */, - 9DF382EB260E9EB40033F5A1 /* ADJEventSuccess.h */, - 9DF382EC260E9EB40033F5A1 /* ADJEventFailure.h */, - 9DF382ED260E9EB40033F5A1 /* ADJSessionSuccess.h */, - 9DF382EE260E9EB40033F5A1 /* ADJLogger.h */, - ); - path = include; + path = ../../../AdjustBridge; sourceTree = ""; }; - 9DF38305260E9EB40033F5A1 /* ADJAdditions */ = { + 9DF92F7D2630F3A1000FC3FC /* WebViewJavascriptBridge */ = { isa = PBXGroup; children = ( - 9DF38306260E9EB40033F5A1 /* NSNumber+ADJAdditions.h */, - 9DF38307260E9EB40033F5A1 /* NSString+ADJAdditions.m */, - 9DF38308260E9EB40033F5A1 /* UIDevice+ADJAdditions.h */, - 9DF38309260E9EB40033F5A1 /* NSData+ADJAdditions.m */, - 9DF3830A260E9EB40033F5A1 /* NSNumber+ADJAdditions.m */, - 9DF3830B260E9EB40033F5A1 /* NSData+ADJAdditions.h */, - 9DF3830C260E9EB40033F5A1 /* UIDevice+ADJAdditions.m */, - 9DF3830D260E9EB40033F5A1 /* NSString+ADJAdditions.h */, - ); - path = ADJAdditions; - sourceTree = ""; - }; - 9DF38327260E9EB50033F5A1 /* WebViewJavascriptBridge */ = { - isa = PBXGroup; - children = ( - 9DF38328260E9EB50033F5A1 /* WebViewJavascriptBridgeBase.m */, - 9DF38329260E9EB50033F5A1 /* WKWebViewJavascriptBridge.m */, - 9DF3832A260E9EB50033F5A1 /* WebViewJavascriptBridge_JS.h */, - 9DF3832B260E9EB50033F5A1 /* WebViewJavascriptBridgeBase.h */, - 9DF3832C260E9EB50033F5A1 /* WebViewJavascriptBridge_JS.m */, - 9DF3832D260E9EB50033F5A1 /* WKWebViewJavascriptBridge.h */, + 9DF92F7E2630F3A1000FC3FC /* WebViewJavascriptBridgeBase.m */, + 9DF92F7F2630F3A1000FC3FC /* WKWebViewJavascriptBridge.m */, + 9DF92F802630F3A1000FC3FC /* WebViewJavascriptBridge_JS.h */, + 9DF92F812630F3A1000FC3FC /* WebViewJavascriptBridgeBase.h */, + 9DF92F822630F3A1000FC3FC /* WebViewJavascriptBridge_JS.m */, + 9DF92F832630F3A1000FC3FC /* WKWebViewJavascriptBridge.h */, ); path = WebViewJavascriptBridge; sourceTree = ""; }; - 9DF3832E260E9EB50033F5A1 /* include */ = { - isa = PBXGroup; - children = ( - 9DF3832F260E9EB50033F5A1 /* AdjustBridgeRegister.h */, - 9DF38330260E9EB50033F5A1 /* WebViewJavascriptBridgeBase.h */, - 9DF38331260E9EB50033F5A1 /* AdjustBridge.h */, - 9DF38332260E9EB50033F5A1 /* WKWebViewJavascriptBridge.h */, - ); - path = include; - sourceTree = ""; - }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ @@ -651,8 +389,6 @@ 9D9D15E3212EB47C0081445E /* AdjustExample-FbPixel.html in Resources */, 9D9D153E212EB3940081445E /* LaunchScreen.storyboard in Resources */, 9D9D153B212EB3940081445E /* Assets.xcassets in Resources */, - 9DF38359260E9EB50033F5A1 /* Info.plist in Resources */, - 9D9D1539212EB3920081445E /* Main.storyboard in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -663,87 +399,49 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 9DF382AD260E9E660033F5A1 /* ADJActivityState.m in Sources */, - 9DF382B3260E9E660033F5A1 /* Adjust.m in Sources */, - 9DF382A9260E9E660033F5A1 /* ADJEvent.m in Sources */, - 9DF382A3260E9E660033F5A1 /* ADJDeviceInfo.m in Sources */, - 9DF382C2260E9E660033F5A1 /* ADJResponseData.m in Sources */, - 9DF382B5260E9E660033F5A1 /* ADJPackageHandler.m in Sources */, - 9DF3833F260E9EB50033F5A1 /* ADJEventSuccess.m in Sources */, - 9DF382C4260E9E660033F5A1 /* ADJSubscription.m in Sources */, - 9DF382BD260E9E660033F5A1 /* ADJSystemProfile.m in Sources */, - 9DF3833D260E9EB50033F5A1 /* ADJSessionSuccess.m in Sources */, - 9DF3833E260E9EB50033F5A1 /* ADJEventFailure.m in Sources */, - 9DF382B7260E9E660033F5A1 /* NSString+ADJAdditions.m in Sources */, - 9DF382AA260E9E660033F5A1 /* ADJSessionSuccess.m in Sources */, - 9DF38345260E9EB50033F5A1 /* ADJBackoffStrategy.m in Sources */, - 9DF38355260E9EB50033F5A1 /* ADJResponseData.m in Sources */, - 9DF38349260E9EB50033F5A1 /* ADJActivityKind.m in Sources */, - 9DF382AF260E9E660033F5A1 /* ADJTimerCycle.m in Sources */, - 9DF38353260E9EB50033F5A1 /* ADJUrlStrategy.m in Sources */, - 9DF382C8260E9E660033F5A1 /* ADJReachability.m in Sources */, - 9DF38351260E9EB50033F5A1 /* ADJActivityPackage.m in Sources */, - 9DF38344260E9EB50033F5A1 /* ADJLogger.m in Sources */, - 9DF38358260E9EB50033F5A1 /* ADJUserDefaults.m in Sources */, - 9DF3834E260E9EB50033F5A1 /* ADJAttribution.m in Sources */, - 9DF382C5260E9E660033F5A1 /* ADJUserDefaults.m in Sources */, - 9DF382B2260E9E660033F5A1 /* ADJBackoffStrategy.m in Sources */, - 9DF38347260E9EB50033F5A1 /* ADJConfig.m in Sources */, - 9D9D15E8212EB5230081445E /* UIWebViewController.m in Sources */, - 9DF38336260E9EB50033F5A1 /* ADJDeviceInfo.m in Sources */, - 9DF382A8260E9E660033F5A1 /* ADJSdkClickHandler.m in Sources */, + 9DF92FAF2630F3A1000FC3FC /* WebViewJavascriptBridgeBase.m in Sources */, 9D9D15E9212EB5230081445E /* WKWebViewController.m in Sources */, - 9DF3834C260E9EB50033F5A1 /* NSNumber+ADJAdditions.m in Sources */, - 9DF382B0260E9E660033F5A1 /* ADJSessionParameters.m in Sources */, - 9DF382B4260E9E660033F5A1 /* ADJConfig.m in Sources */, - 9DF38339260E9EB50033F5A1 /* ADJRequestHandler.m in Sources */, - 9DF382A5260E9E660033F5A1 /* ADJAttributionHandler.m in Sources */, - 9DF38350260E9EB50033F5A1 /* ADJSystemProfile.m in Sources */, - 9DF382A6260E9E660033F5A1 /* ADJRequestHandler.m in Sources */, - 9DF38340260E9EB50033F5A1 /* ADJActivityState.m in Sources */, - 9DF3835A260E9EB50033F5A1 /* ADJActivityHandler.m in Sources */, - 9DF382AE260E9E660033F5A1 /* ADJSessionFailure.m in Sources */, - 9DF38341260E9EB50033F5A1 /* ADJSessionFailure.m in Sources */, - 9DF382BC260E9E660033F5A1 /* ADJThirdPartySharing.m in Sources */, - 9DF382BA260E9E660033F5A1 /* UIDevice+ADJAdditions.m in Sources */, - 9DF3835E260E9EB50033F5A1 /* WebViewJavascriptBridge_JS.m in Sources */, - 9DF3834B260E9EB50033F5A1 /* NSData+ADJAdditions.m in Sources */, - 9DF38343260E9EB50033F5A1 /* ADJSessionParameters.m in Sources */, - 9DF38357260E9EB50033F5A1 /* ADJSubscription.m in Sources */, - 9DF38338260E9EB50033F5A1 /* ADJAttributionHandler.m in Sources */, - 9DF38346260E9EB50033F5A1 /* Adjust.m in Sources */, - 9DF382C1260E9E660033F5A1 /* ADJAdjustFactory.m in Sources */, - 9DF38337260E9EB50033F5A1 /* ADJTimerOnce.m in Sources */, + 9DF92F1F2630F377000FC3FC /* ADJAdjustFactory.m in Sources */, + 9DF92F0B2630F377000FC3FC /* ADJEventFailure.m in Sources */, + 9DF92F152630F377000FC3FC /* ADJPackageHandler.m in Sources */, + 9DF92F202630F377000FC3FC /* ADJResponseData.m in Sources */, + 9DF92F1C2630F377000FC3FC /* ADJActivityPackage.m in Sources */, + 9DF92F0C2630F377000FC3FC /* ADJEventSuccess.m in Sources */, + 9DF92FB02630F3A1000FC3FC /* WKWebViewJavascriptBridge.m in Sources */, + 9DF92F232630F377000FC3FC /* ADJUserDefaults.m in Sources */, + 9DF92F182630F377000FC3FC /* NSData+ADJAdditions.m in Sources */, + 9DF92F212630F377000FC3FC /* ADJPackageBuilder.m in Sources */, + 9DF92F132630F377000FC3FC /* Adjust.m in Sources */, + 9DF92F172630F377000FC3FC /* NSString+ADJAdditions.m in Sources */, + 9DF92F052630F377000FC3FC /* ADJTimerOnce.m in Sources */, + 9DF92F072630F377000FC3FC /* ADJRequestHandler.m in Sources */, + 9DF92F122630F377000FC3FC /* ADJBackoffStrategy.m in Sources */, + 9DF92F222630F377000FC3FC /* ADJSubscription.m in Sources */, + 9DF92F112630F377000FC3FC /* ADJLogger.m in Sources */, + 9DF92FB22630F3A1000FC3FC /* AdjustBridgeRegister.m in Sources */, + 9DF92F192630F377000FC3FC /* NSNumber+ADJAdditions.m in Sources */, + 9DF92F262630F377000FC3FC /* ADJPackageParams.m in Sources */, 9D9D1541212EB3940081445E /* main.m in Sources */, - 9DF3835F260E9EB50033F5A1 /* AdjustBridgeRegister.m in Sources */, - 9DF3834A260E9EB50033F5A1 /* NSString+ADJAdditions.m in Sources */, - 9DF382B8260E9E660033F5A1 /* NSData+ADJAdditions.m in Sources */, - 9DF3833C260E9EB50033F5A1 /* ADJEvent.m in Sources */, - 9DF382BE260E9E660033F5A1 /* ADJActivityPackage.m in Sources */, - 9DF382AC260E9E660033F5A1 /* ADJEventSuccess.m in Sources */, - 9DF382BB260E9E660033F5A1 /* ADJAttribution.m in Sources */, - 9DF3835D260E9EB50033F5A1 /* WKWebViewJavascriptBridge.m in Sources */, - 9DF3833B260E9EB50033F5A1 /* ADJSdkClickHandler.m in Sources */, - 9DF382C0260E9E660033F5A1 /* ADJUrlStrategy.m in Sources */, - 9DF38342260E9EB50033F5A1 /* ADJTimerCycle.m in Sources */, - 9DF382B9260E9E660033F5A1 /* NSNumber+ADJAdditions.m in Sources */, - 9DF382B1260E9E660033F5A1 /* ADJLogger.m in Sources */, - 9DF3835C260E9EB50033F5A1 /* WebViewJavascriptBridgeBase.m in Sources */, - 9DF382C7260E9E660033F5A1 /* ADJActivityHandler.m in Sources */, - 9DF3834D260E9EB50033F5A1 /* UIDevice+ADJAdditions.m in Sources */, - 9DF382C3260E9E660033F5A1 /* ADJPackageBuilder.m in Sources */, - 9DF38348260E9EB50033F5A1 /* ADJPackageHandler.m in Sources */, - 9DF382BF260E9E660033F5A1 /* ADJUtil.m in Sources */, - 9DF38335260E9EB50033F5A1 /* AdjustBridge.m in Sources */, - 9DF3834F260E9EB50033F5A1 /* ADJThirdPartySharing.m in Sources */, - 9DF38352260E9EB50033F5A1 /* ADJUtil.m in Sources */, - 9DF382A4260E9E660033F5A1 /* ADJTimerOnce.m in Sources */, - 9DF3835B260E9EB50033F5A1 /* ADJReachability.m in Sources */, + 9DF92F082630F377000FC3FC /* ADJSdkClickHandler.m in Sources */, + 9DF92F8B2630F3A1000FC3FC /* AdjustBridge.m in Sources */, 9D9D1533212EB3920081445E /* AppDelegate.m in Sources */, - 9DF38356260E9EB50033F5A1 /* ADJPackageBuilder.m in Sources */, - 9DF382B6260E9E660033F5A1 /* ADJActivityKind.m in Sources */, - 9DF382AB260E9E660033F5A1 /* ADJEventFailure.m in Sources */, - 9DF38354260E9EB50033F5A1 /* ADJAdjustFactory.m in Sources */, + 9DF92F252630F377000FC3FC /* ADJActivityHandler.m in Sources */, + 9DF92F1D2630F377000FC3FC /* ADJUtil.m in Sources */, + 9DF92F102630F377000FC3FC /* ADJSessionParameters.m in Sources */, + 9DF92F062630F377000FC3FC /* ADJAttributionHandler.m in Sources */, + 9DF92F1A2630F377000FC3FC /* ADJAttribution.m in Sources */, + 9DF92F0F2630F377000FC3FC /* ADJTimerCycle.m in Sources */, + 9DF92FB12630F3A1000FC3FC /* WebViewJavascriptBridge_JS.m in Sources */, + 9DF92F0E2630F377000FC3FC /* ADJSessionFailure.m in Sources */, + 9DF92F1E2630F377000FC3FC /* ADJUrlStrategy.m in Sources */, + 6FAB78C12636DDC400773869 /* ADJLinkResolution.m in Sources */, + 9DF92F1B2630F377000FC3FC /* ADJThirdPartySharing.m in Sources */, + 9DF92F162630F377000FC3FC /* ADJActivityKind.m in Sources */, + 9DF92F092630F377000FC3FC /* ADJEvent.m in Sources */, + 9DF92F0D2630F377000FC3FC /* ADJActivityState.m in Sources */, + 9DF92F0A2630F377000FC3FC /* ADJSessionSuccess.m in Sources */, + 9DF92F042630F377000FC3FC /* ADJAdRevenue.m in Sources */, + 9DF92F142630F377000FC3FC /* ADJConfig.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/examples/AdjustExample-FbPixel/AdjustExample-FbPixel/AppDelegate.m b/examples/AdjustExample-FbPixel/AdjustExample-FbPixel/AppDelegate.m index d8c329d1a..bf39399ac 100644 --- a/examples/AdjustExample-FbPixel/AdjustExample-FbPixel/AppDelegate.m +++ b/examples/AdjustExample-FbPixel/AdjustExample-FbPixel/AppDelegate.m @@ -8,12 +8,10 @@ #import "Adjust.h" #import "AppDelegate.h" -#import "UIWebViewController.h" #import "WKWebViewController.h" @interface AppDelegate () -@property UIWebViewController *uiWebViewExampleController; @property WKWebViewController *wkWebViewExampleController; @end @@ -22,23 +20,11 @@ @implementation AppDelegate - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { - // 1. Create the UIWebView example - self.uiWebViewExampleController = [[UIWebViewController alloc] init]; - self.uiWebViewExampleController.tabBarItem.title = @"UIWebView"; - - // 2. Create the tab footer and add the UIWebView example - UITabBarController *tabBarController = [[UITabBarController alloc] init]; - [tabBarController addChildViewController:self.uiWebViewExampleController]; - - // 3. Create the WKWebView example for devices >= iOS 8 - if ([WKWebView class]) { - self.wkWebViewExampleController = [[WKWebViewController alloc] init]; - self.wkWebViewExampleController.tabBarItem.title = @"WKWebView"; - [tabBarController addChildViewController:self.wkWebViewExampleController]; - } + self.wkWebViewExampleController = [[WKWebViewController alloc] init]; + self.wkWebViewExampleController.tabBarItem.title = @"WKWebView"; self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; - self.window.rootViewController = tabBarController; + self.window.rootViewController = self.wkWebViewExampleController; [self.window makeKeyAndVisible]; return YES; diff --git a/examples/AdjustExample-FbPixel/AdjustExample-FbPixel/UIWebViewController.h b/examples/AdjustExample-FbPixel/AdjustExample-FbPixel/UIWebViewController.h deleted file mode 100644 index b0e1b37fa..000000000 --- a/examples/AdjustExample-FbPixel/AdjustExample-FbPixel/UIWebViewController.h +++ /dev/null @@ -1,20 +0,0 @@ -// -// ViewController.h -// AdjustExample-WebView -// -// Created by Uglješa Erceg on 31/05/16. -// Copyright © 2016 adjust GmbH. All rights reserved. -// - -#import -#import - -#import "AdjustBridge.h" - -@interface UIWebViewController : UINavigationController - -@property AdjustBridge *adjustBridge; -@property JSContext *jsContext; - -@end - diff --git a/examples/AdjustExample-FbPixel/AdjustExample-FbPixel/UIWebViewController.m b/examples/AdjustExample-FbPixel/AdjustExample-FbPixel/UIWebViewController.m deleted file mode 100644 index 92863189d..000000000 --- a/examples/AdjustExample-FbPixel/AdjustExample-FbPixel/UIWebViewController.m +++ /dev/null @@ -1,53 +0,0 @@ -// -// ViewController.m -// AdjustExample-WebView -// -// Created by Uglješa Erceg on 31/05/16. -// Copyright © 2016 adjust GmbH. All rights reserved. -// - -#import "UIWebViewController.h" - -@interface UIWebViewController () - -@end - -@implementation UIWebViewController - -- (void)viewDidLoad { - [super viewDidLoad]; -} - -- (void)viewWillAppear:(BOOL)animated { - [self loadUIWebView]; -} - -- (void)didReceiveMemoryWarning { - [super didReceiveMemoryWarning]; -} - -- (void)loadUIWebView { - UIWebView *uiWebView = [[UIWebView alloc] initWithFrame:self.view.bounds]; - [self.view addSubview:uiWebView]; - - _adjustBridge = [[AdjustBridge alloc] init]; - [_adjustBridge loadUIWebViewBridge:uiWebView webViewDelegate:self]; - [_adjustBridge augmentHybridWebView]; - - _jsContext = [uiWebView valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"]; - _jsContext[@"console"][@"log"] = ^(JSValue * msg) { - NSLog(@"JavaScript %@ log message: %@", [JSContext currentContext], msg); - }; - - NSString *htmlPath = [[NSBundle mainBundle] pathForResource:@"AdjustExample-FbPixel" ofType:@"html"]; - NSString *appHtml = [NSString stringWithContentsOfFile:htmlPath encoding:NSUTF8StringEncoding error:nil]; - NSURL *baseURL = [NSURL fileURLWithPath:htmlPath]; - [uiWebView loadHTMLString:appHtml baseURL:baseURL]; -} - -- (void)callUiHandler:(id)sender { - -} - -@end - diff --git a/examples/AdjustExample-FbPixel/AdjustExample-FbPixel/WKWebViewController.h b/examples/AdjustExample-FbPixel/AdjustExample-FbPixel/WKWebViewController.h index 5ac43082b..d84be63ef 100644 --- a/examples/AdjustExample-FbPixel/AdjustExample-FbPixel/WKWebViewController.h +++ b/examples/AdjustExample-FbPixel/AdjustExample-FbPixel/WKWebViewController.h @@ -8,11 +8,13 @@ #import #import +#import #import "AdjustBridge.h" @interface WKWebViewController : UINavigationController @property AdjustBridge *adjustBridge; +@property JSContext *jsContext; @end diff --git a/examples/AdjustExample-FbPixel/AdjustExample-FbPixel/WKWebViewController.m b/examples/AdjustExample-FbPixel/AdjustExample-FbPixel/WKWebViewController.m index 37e1ffa41..b890d86a8 100644 --- a/examples/AdjustExample-FbPixel/AdjustExample-FbPixel/WKWebViewController.m +++ b/examples/AdjustExample-FbPixel/AdjustExample-FbPixel/WKWebViewController.m @@ -27,18 +27,23 @@ - (void)didReceiveMemoryWarning { } - (void)loadWKWebView { - WKWebView *webView = [[NSClassFromString(@"WKWebView") alloc] initWithFrame:self.view.bounds]; - webView.navigationDelegate = self; - [self.view addSubview:webView]; + WKWebView *wkWebView = [[NSClassFromString(@"WKWebView") alloc] initWithFrame:self.view.bounds]; + wkWebView.navigationDelegate = self; + [self.view addSubview:wkWebView]; _adjustBridge = [[AdjustBridge alloc] init]; - [_adjustBridge loadWKWebViewBridge:webView wkWebViewDelegate:self]; + [_adjustBridge loadWKWebViewBridge:wkWebView wkWebViewDelegate:self]; [_adjustBridge augmentHybridWebView]; + + _jsContext = [wkWebView valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"]; + _jsContext[@"console"][@"log"] = ^(JSValue * msg) { + NSLog(@"JavaScript %@ log message: %@", [JSContext currentContext], msg); + }; NSString *htmlPath = [[NSBundle mainBundle] pathForResource:@"AdjustExample-FbPixel" ofType:@"html"]; NSString *appHtml = [NSString stringWithContentsOfFile:htmlPath encoding:NSUTF8StringEncoding error:nil]; NSURL *baseURL = [NSURL fileURLWithPath:htmlPath]; - [webView loadHTMLString:appHtml baseURL:baseURL]; + [wkWebView loadHTMLString:appHtml baseURL:baseURL]; } - (void)callWkHandler:(id)sender { diff --git a/examples/AdjustExample-ObjC/AdjustExample-ObjC.xcodeproj/project.pbxproj b/examples/AdjustExample-ObjC/AdjustExample-ObjC.xcodeproj/project.pbxproj index 599071745..43f916f42 100644 --- a/examples/AdjustExample-ObjC/AdjustExample-ObjC.xcodeproj/project.pbxproj +++ b/examples/AdjustExample-ObjC/AdjustExample-ObjC.xcodeproj/project.pbxproj @@ -8,8 +8,8 @@ /* Begin PBXBuildFile section */ 6F84513525B1B1850004C7C0 /* ADJThirdPartySharing.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F84513425B1B1840004C7C0 /* ADJThirdPartySharing.m */; }; + 6FAB78A72636DD4000773869 /* ADJLinkResolution.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FAB78A52636DD4000773869 /* ADJLinkResolution.m */; }; 6FBEE90B24E420FA00FEF3F1 /* ADJUrlStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FBEE90924E420FA00FEF3F1 /* ADJUrlStrategy.m */; }; - 6FCC850C1F2794AB00D6A0ED /* ADJReachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FCC850A1F2794A300D6A0ED /* ADJReachability.m */; }; 963909411BCBFCF300A2E8A4 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 963909401BCBFCF300A2E8A4 /* main.m */; }; 963909441BCBFCF300A2E8A4 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 963909431BCBFCF300A2E8A4 /* AppDelegate.m */; }; 9639094A1BCBFCF300A2E8A4 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 963909481BCBFCF300A2E8A4 /* Main.storyboard */; }; @@ -18,8 +18,8 @@ 9639095F1BCBFD3B00A2E8A4 /* iAd.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9639095E1BCBFD3B00A2E8A4 /* iAd.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; 963909611BCBFD4200A2E8A4 /* AdSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 963909601BCBFD4200A2E8A4 /* AdSupport.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; 9D2F240B2447DDE100B7CA90 /* ADJSubscription.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D2F240A2447DDE100B7CA90 /* ADJSubscription.m */; }; + 9D3A2AD82626511800BD6E44 /* ADJAdRevenue.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D3A2AD62626511800BD6E44 /* ADJAdRevenue.m */; }; 9D449E131E6ED88F00E7E80B /* NSString+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449DD21E6ED88F00E7E80B /* NSString+ADJAdditions.m */; }; - 9D449E141E6ED88F00E7E80B /* UIDevice+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449DD41E6ED88F00E7E80B /* UIDevice+ADJAdditions.m */; }; 9D449E151E6ED88F00E7E80B /* NSData+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449DD61E6ED88F00E7E80B /* NSData+ADJAdditions.m */; }; 9D449E161E6ED88F00E7E80B /* Adjust.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449DD91E6ED88F00E7E80B /* Adjust.m */; }; 9D449E171E6ED88F00E7E80B /* ADJActivityHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449DDB1E6ED88F00E7E80B /* ADJActivityHandler.m */; }; @@ -33,7 +33,6 @@ 9D449E1F1E6ED88F00E7E80B /* ADJRequestHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449DEB1E6ED88F00E7E80B /* ADJRequestHandler.m */; }; 9D449E201E6ED88F00E7E80B /* ADJUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449DED1E6ED88F00E7E80B /* ADJUtil.m */; }; 9D449E211E6ED88F00E7E80B /* ADJEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449DEF1E6ED88F00E7E80B /* ADJEvent.m */; }; - 9D449E221E6ED88F00E7E80B /* ADJDeviceInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449DF11E6ED88F00E7E80B /* ADJDeviceInfo.m */; }; 9D449E231E6ED88F00E7E80B /* ADJAttributionHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449DF31E6ED88F00E7E80B /* ADJAttributionHandler.m */; }; 9D449E241E6ED88F00E7E80B /* ADJAttribution.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449DF51E6ED88F00E7E80B /* ADJAttribution.m */; }; 9D449E251E6ED88F00E7E80B /* ADJConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449DF71E6ED88F00E7E80B /* ADJConfig.m */; }; @@ -44,7 +43,6 @@ 9D449E2A1E6ED88F00E7E80B /* ADJSessionFailure.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E011E6ED88F00E7E80B /* ADJSessionFailure.m */; }; 9D449E2B1E6ED88F00E7E80B /* ADJEventSuccess.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E031E6ED88F00E7E80B /* ADJEventSuccess.m */; }; 9D449E2C1E6ED88F00E7E80B /* ADJEventFailure.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E051E6ED88F00E7E80B /* ADJEventFailure.m */; }; - 9D449E2D1E6ED88F00E7E80B /* ADJSystemProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E071E6ED88F00E7E80B /* ADJSystemProfile.m */; }; 9D449E2E1E6ED88F00E7E80B /* ADJBackoffStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E091E6ED88F00E7E80B /* ADJBackoffStrategy.m */; }; 9D449E2F1E6ED88F00E7E80B /* ADJSdkClickHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E0B1E6ED88F00E7E80B /* ADJSdkClickHandler.m */; }; 9D449E311E6ED88F00E7E80B /* ADJSessionParameters.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E0F1E6ED88F00E7E80B /* ADJSessionParameters.m */; }; @@ -53,16 +51,17 @@ 9DC95F2A1C10515300138E4B /* Constants.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DC95F291C10515300138E4B /* Constants.m */; }; 9DD0E9BE1F457EF800B2A759 /* ADJUserDefaults.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DD0E9BD1F457EF800B2A759 /* ADJUserDefaults.m */; }; 9DF38231260E9DAD0033F5A1 /* NSNumber+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38230260E9DAD0033F5A1 /* NSNumber+ADJAdditions.m */; }; + 9DF92D992630EDCD000FC3FC /* ADJPackageParams.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92D982630EDCD000FC3FC /* ADJPackageParams.m */; }; D799022C24C093AA00C7D11C /* AppTrackingTransparency.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D799022B24C093AA00C7D11C /* AppTrackingTransparency.framework */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ 6F84513325B1B1840004C7C0 /* ADJThirdPartySharing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJThirdPartySharing.h; sourceTree = ""; }; 6F84513425B1B1840004C7C0 /* ADJThirdPartySharing.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJThirdPartySharing.m; sourceTree = ""; }; + 6FAB78A52636DD4000773869 /* ADJLinkResolution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJLinkResolution.m; sourceTree = ""; }; + 6FAB78A62636DD4000773869 /* ADJLinkResolution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJLinkResolution.h; sourceTree = ""; }; 6FBEE90924E420FA00FEF3F1 /* ADJUrlStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUrlStrategy.m; sourceTree = ""; }; 6FBEE90A24E420FA00FEF3F1 /* ADJUrlStrategy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUrlStrategy.h; sourceTree = ""; }; - 6FCC850A1F2794A300D6A0ED /* ADJReachability.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ADJReachability.m; sourceTree = ""; }; - 6FCC850B1F2794A300D6A0ED /* ADJReachability.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ADJReachability.h; sourceTree = ""; }; 9639093C1BCBFCF300A2E8A4 /* AdjustExample-ObjC.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "AdjustExample-ObjC.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 963909401BCBFCF300A2E8A4 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 963909421BCBFCF300A2E8A4 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; @@ -76,10 +75,10 @@ 964E17FC1D50C6250097770B /* SafariServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SafariServices.framework; path = System/Library/Frameworks/SafariServices.framework; sourceTree = SDKROOT; }; 9D2F24092447DDE100B7CA90 /* ADJSubscription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSubscription.h; sourceTree = ""; }; 9D2F240A2447DDE100B7CA90 /* ADJSubscription.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSubscription.m; sourceTree = ""; }; + 9D3A2AD62626511800BD6E44 /* ADJAdRevenue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdRevenue.m; sourceTree = ""; }; + 9D3A2AD72626511800BD6E44 /* ADJAdRevenue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdRevenue.h; sourceTree = ""; }; 9D449DD11E6ED88F00E7E80B /* NSString+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+ADJAdditions.h"; sourceTree = ""; }; 9D449DD21E6ED88F00E7E80B /* NSString+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+ADJAdditions.m"; sourceTree = ""; }; - 9D449DD31E6ED88F00E7E80B /* UIDevice+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIDevice+ADJAdditions.h"; sourceTree = ""; }; - 9D449DD41E6ED88F00E7E80B /* UIDevice+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIDevice+ADJAdditions.m"; sourceTree = ""; }; 9D449DD51E6ED88F00E7E80B /* NSData+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData+ADJAdditions.h"; sourceTree = ""; }; 9D449DD61E6ED88F00E7E80B /* NSData+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+ADJAdditions.m"; sourceTree = ""; }; 9D449DD81E6ED88F00E7E80B /* Adjust.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Adjust.h; sourceTree = ""; }; @@ -106,8 +105,6 @@ 9D449DED1E6ED88F00E7E80B /* ADJUtil.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUtil.m; sourceTree = ""; }; 9D449DEE1E6ED88F00E7E80B /* ADJEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEvent.h; sourceTree = ""; }; 9D449DEF1E6ED88F00E7E80B /* ADJEvent.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJEvent.m; sourceTree = ""; }; - 9D449DF01E6ED88F00E7E80B /* ADJDeviceInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJDeviceInfo.h; sourceTree = ""; }; - 9D449DF11E6ED88F00E7E80B /* ADJDeviceInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJDeviceInfo.m; sourceTree = ""; }; 9D449DF21E6ED88F00E7E80B /* ADJAttributionHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttributionHandler.h; sourceTree = ""; }; 9D449DF31E6ED88F00E7E80B /* ADJAttributionHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAttributionHandler.m; sourceTree = ""; }; 9D449DF41E6ED88F00E7E80B /* ADJAttribution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttribution.h; sourceTree = ""; }; @@ -128,8 +125,6 @@ 9D449E031E6ED88F00E7E80B /* ADJEventSuccess.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJEventSuccess.m; sourceTree = ""; }; 9D449E041E6ED88F00E7E80B /* ADJEventFailure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEventFailure.h; sourceTree = ""; }; 9D449E051E6ED88F00E7E80B /* ADJEventFailure.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJEventFailure.m; sourceTree = ""; }; - 9D449E061E6ED88F00E7E80B /* ADJSystemProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSystemProfile.h; sourceTree = ""; }; - 9D449E071E6ED88F00E7E80B /* ADJSystemProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSystemProfile.m; sourceTree = ""; }; 9D449E081E6ED88F00E7E80B /* ADJBackoffStrategy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJBackoffStrategy.h; sourceTree = ""; }; 9D449E091E6ED88F00E7E80B /* ADJBackoffStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJBackoffStrategy.m; sourceTree = ""; }; 9D449E0A1E6ED88F00E7E80B /* ADJSdkClickHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSdkClickHandler.h; sourceTree = ""; }; @@ -146,6 +141,8 @@ 9DD0E9BD1F457EF800B2A759 /* ADJUserDefaults.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUserDefaults.m; sourceTree = ""; }; 9DF3822F260E9DAD0033F5A1 /* NSNumber+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNumber+ADJAdditions.h"; sourceTree = ""; }; 9DF38230260E9DAD0033F5A1 /* NSNumber+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSNumber+ADJAdditions.m"; sourceTree = ""; }; + 9DF92D972630EDCD000FC3FC /* ADJPackageParams.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJPackageParams.h; sourceTree = ""; }; + 9DF92D982630EDCD000FC3FC /* ADJPackageParams.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageParams.m; sourceTree = ""; }; D799022B24C093AA00C7D11C /* AppTrackingTransparency.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppTrackingTransparency.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.16.sdk/System/Library/Frameworks/AppTrackingTransparency.framework; sourceTree = DEVELOPER_DIR; }; /* End PBXFileReference section */ @@ -217,8 +214,6 @@ 9DF38230260E9DAD0033F5A1 /* NSNumber+ADJAdditions.m */, 9D449DD11E6ED88F00E7E80B /* NSString+ADJAdditions.h */, 9D449DD21E6ED88F00E7E80B /* NSString+ADJAdditions.m */, - 9D449DD31E6ED88F00E7E80B /* UIDevice+ADJAdditions.h */, - 9D449DD41E6ED88F00E7E80B /* UIDevice+ADJAdditions.m */, 9D449DD51E6ED88F00E7E80B /* NSData+ADJAdditions.h */, 9D449DD61E6ED88F00E7E80B /* NSData+ADJAdditions.m */, ); @@ -245,6 +240,8 @@ 9D449DE51E6ED88F00E7E80B /* ADJLogger.m */, 9D449DE61E6ED88F00E7E80B /* ADJPackageBuilder.h */, 9D449DE71E6ED88F00E7E80B /* ADJPackageBuilder.m */, + 9DF92D972630EDCD000FC3FC /* ADJPackageParams.h */, + 9DF92D982630EDCD000FC3FC /* ADJPackageParams.m */, 9D449DE81E6ED88F00E7E80B /* ADJPackageHandler.h */, 9D449DE91E6ED88F00E7E80B /* ADJPackageHandler.m */, 9D449DEA1E6ED88F00E7E80B /* ADJRequestHandler.h */, @@ -253,8 +250,6 @@ 9D449DED1E6ED88F00E7E80B /* ADJUtil.m */, 9D449DEE1E6ED88F00E7E80B /* ADJEvent.h */, 9D449DEF1E6ED88F00E7E80B /* ADJEvent.m */, - 9D449DF01E6ED88F00E7E80B /* ADJDeviceInfo.h */, - 9D449DF11E6ED88F00E7E80B /* ADJDeviceInfo.m */, 9D449DF21E6ED88F00E7E80B /* ADJAttributionHandler.h */, 9D449DF31E6ED88F00E7E80B /* ADJAttributionHandler.m */, 9D449DF41E6ED88F00E7E80B /* ADJAttribution.h */, @@ -275,16 +270,12 @@ 9D449E031E6ED88F00E7E80B /* ADJEventSuccess.m */, 9D449E041E6ED88F00E7E80B /* ADJEventFailure.h */, 9D449E051E6ED88F00E7E80B /* ADJEventFailure.m */, - 9D449E061E6ED88F00E7E80B /* ADJSystemProfile.h */, - 9D449E071E6ED88F00E7E80B /* ADJSystemProfile.m */, 9D449E081E6ED88F00E7E80B /* ADJBackoffStrategy.h */, 9D449E091E6ED88F00E7E80B /* ADJBackoffStrategy.m */, 9D449E0A1E6ED88F00E7E80B /* ADJSdkClickHandler.h */, 9D449E0B1E6ED88F00E7E80B /* ADJSdkClickHandler.m */, 9D449E0E1E6ED88F00E7E80B /* ADJSessionParameters.h */, 9D449E0F1E6ED88F00E7E80B /* ADJSessionParameters.m */, - 6FCC850B1F2794A300D6A0ED /* ADJReachability.h */, - 6FCC850A1F2794A300D6A0ED /* ADJReachability.m */, 9DD0E9BC1F457EF800B2A759 /* ADJUserDefaults.h */, 9DD0E9BD1F457EF800B2A759 /* ADJUserDefaults.m */, 9D2F24092447DDE100B7CA90 /* ADJSubscription.h */, @@ -293,6 +284,10 @@ 6FBEE90924E420FA00FEF3F1 /* ADJUrlStrategy.m */, 6F84513325B1B1840004C7C0 /* ADJThirdPartySharing.h */, 6F84513425B1B1840004C7C0 /* ADJThirdPartySharing.m */, + 9D3A2AD72626511800BD6E44 /* ADJAdRevenue.h */, + 9D3A2AD62626511800BD6E44 /* ADJAdRevenue.m */, + 6FAB78A62636DD4000773869 /* ADJLinkResolution.h */, + 6FAB78A52636DD4000773869 /* ADJLinkResolution.m */, ); name = Adjust; path = ../../../Adjust; @@ -398,6 +393,7 @@ 9D449E1D1E6ED88F00E7E80B /* ADJPackageBuilder.m in Sources */, 9D449E2A1E6ED88F00E7E80B /* ADJSessionFailure.m in Sources */, 9D449E201E6ED88F00E7E80B /* ADJUtil.m in Sources */, + 9D3A2AD82626511800BD6E44 /* ADJAdRevenue.m in Sources */, 9D449E241E6ED88F00E7E80B /* ADJAttribution.m in Sources */, 9DC95F2A1C10515300138E4B /* Constants.m in Sources */, 9DF38231260E9DAD0033F5A1 /* NSNumber+ADJAdditions.m in Sources */, @@ -406,20 +402,18 @@ 963909441BCBFCF300A2E8A4 /* AppDelegate.m in Sources */, 9D449E311E6ED88F00E7E80B /* ADJSessionParameters.m in Sources */, 9D449E171E6ED88F00E7E80B /* ADJActivityHandler.m in Sources */, - 9D449E141E6ED88F00E7E80B /* UIDevice+ADJAdditions.m in Sources */, 9D449E181E6ED88F00E7E80B /* ADJActivityKind.m in Sources */, 9D449E151E6ED88F00E7E80B /* NSData+ADJAdditions.m in Sources */, + 6FAB78A72636DD4000773869 /* ADJLinkResolution.m in Sources */, 9DD0E9BE1F457EF800B2A759 /* ADJUserDefaults.m in Sources */, 9D449E191E6ED88F00E7E80B /* ADJActivityPackage.m in Sources */, 9D449E1E1E6ED88F00E7E80B /* ADJPackageHandler.m in Sources */, 9D449E281E6ED88F00E7E80B /* ADJResponseData.m in Sources */, - 6FCC850C1F2794AB00D6A0ED /* ADJReachability.m in Sources */, 9D449E131E6ED88F00E7E80B /* NSString+ADJAdditions.m in Sources */, - 9D449E221E6ED88F00E7E80B /* ADJDeviceInfo.m in Sources */, 9D449E1C1E6ED88F00E7E80B /* ADJLogger.m in Sources */, - 9D449E2D1E6ED88F00E7E80B /* ADJSystemProfile.m in Sources */, 9D449E261E6ED88F00E7E80B /* ADJTimerOnce.m in Sources */, 963909411BCBFCF300A2E8A4 /* main.m in Sources */, + 9DF92D992630EDCD000FC3FC /* ADJPackageParams.m in Sources */, 6FBEE90B24E420FA00FEF3F1 /* ADJUrlStrategy.m in Sources */, 9D449E2B1E6ED88F00E7E80B /* ADJEventSuccess.m in Sources */, 9D449E211E6ED88F00E7E80B /* ADJEvent.m in Sources */, diff --git a/examples/AdjustExample-ObjC/AdjustExample-ObjC/AppDelegate.m b/examples/AdjustExample-ObjC/AdjustExample-ObjC/AppDelegate.m index 923bf8483..04ce37556 100644 --- a/examples/AdjustExample-ObjC/AdjustExample-ObjC/AppDelegate.m +++ b/examples/AdjustExample-ObjC/AdjustExample-ObjC/AppDelegate.m @@ -124,6 +124,11 @@ - (BOOL)adjustDeeplinkResponse:(NSURL *)deeplink { return YES; } +- (void)adjustConversionValueUpdated:(NSNumber *)conversionValue { + NSLog(@"Conversion value updated callback called!"); + NSLog(@"Conversion value: %@", conversionValue); +} + - (void)applicationWillResignActive:(UIApplication *)application { } diff --git a/examples/AdjustExample-Swift/AdjustExample-Swift.xcodeproj/project.pbxproj b/examples/AdjustExample-Swift/AdjustExample-Swift.xcodeproj/project.pbxproj index dba161d83..f890799e7 100644 --- a/examples/AdjustExample-Swift/AdjustExample-Swift.xcodeproj/project.pbxproj +++ b/examples/AdjustExample-Swift/AdjustExample-Swift.xcodeproj/project.pbxproj @@ -8,22 +8,21 @@ /* Begin PBXBuildFile section */ 6F84513925B1B19E0004C7C0 /* ADJThirdPartySharing.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F84513725B1B19E0004C7C0 /* ADJThirdPartySharing.m */; }; + 6FAB78AB2636DD5A00773869 /* ADJLinkResolution.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FAB78A92636DD5900773869 /* ADJLinkResolution.m */; }; 6FBEE90E24E4212600FEF3F1 /* ADJUrlStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FBEE90D24E4212600FEF3F1 /* ADJUrlStrategy.m */; }; - 6FCC850F1F2794C600D6A0ED /* ADJReachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FCC850E1F2794BE00D6A0ED /* ADJReachability.m */; }; 9D2F240E2447DDF600B7CA90 /* ADJSubscription.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D2F240C2447DDF600B7CA90 /* ADJSubscription.m */; }; + 9D3A2ADB2626512F00BD6E44 /* ADJAdRevenue.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D3A2ADA2626512F00BD6E44 /* ADJAdRevenue.m */; }; 9D449E761E6EDC3D00E7E80B /* ADJActivityHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E351E6EDC3D00E7E80B /* ADJActivityHandler.m */; }; 9D449E771E6EDC3D00E7E80B /* ADJActivityKind.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E371E6EDC3D00E7E80B /* ADJActivityKind.m */; }; 9D449E781E6EDC3D00E7E80B /* ADJActivityPackage.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E391E6EDC3D00E7E80B /* ADJActivityPackage.m */; }; 9D449E791E6EDC3D00E7E80B /* ADJActivityState.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E3B1E6EDC3D00E7E80B /* ADJActivityState.m */; }; 9D449E7A1E6EDC3D00E7E80B /* NSData+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E3E1E6EDC3D00E7E80B /* NSData+ADJAdditions.m */; }; 9D449E7B1E6EDC3D00E7E80B /* NSString+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E401E6EDC3D00E7E80B /* NSString+ADJAdditions.m */; }; - 9D449E7C1E6EDC3D00E7E80B /* UIDevice+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E421E6EDC3D00E7E80B /* UIDevice+ADJAdditions.m */; }; 9D449E7D1E6EDC3D00E7E80B /* ADJAdjustFactory.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E441E6EDC3D00E7E80B /* ADJAdjustFactory.m */; }; 9D449E7E1E6EDC3D00E7E80B /* ADJAttribution.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E461E6EDC3D00E7E80B /* ADJAttribution.m */; }; 9D449E7F1E6EDC3D00E7E80B /* ADJAttributionHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E481E6EDC3D00E7E80B /* ADJAttributionHandler.m */; }; 9D449E801E6EDC3D00E7E80B /* ADJBackoffStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E4A1E6EDC3D00E7E80B /* ADJBackoffStrategy.m */; }; 9D449E811E6EDC3D00E7E80B /* ADJConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E4C1E6EDC3D00E7E80B /* ADJConfig.m */; }; - 9D449E831E6EDC3D00E7E80B /* ADJDeviceInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E501E6EDC3D00E7E80B /* ADJDeviceInfo.m */; }; 9D449E841E6EDC3D00E7E80B /* ADJEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E521E6EDC3D00E7E80B /* ADJEvent.m */; }; 9D449E851E6EDC3D00E7E80B /* ADJEventFailure.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E541E6EDC3D00E7E80B /* ADJEventFailure.m */; }; 9D449E861E6EDC3D00E7E80B /* ADJEventSuccess.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E561E6EDC3D00E7E80B /* ADJEventSuccess.m */; }; @@ -36,7 +35,6 @@ 9D449E8E1E6EDC3D00E7E80B /* ADJSessionFailure.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E661E6EDC3D00E7E80B /* ADJSessionFailure.m */; }; 9D449E8F1E6EDC3D00E7E80B /* ADJSessionParameters.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E681E6EDC3D00E7E80B /* ADJSessionParameters.m */; }; 9D449E901E6EDC3D00E7E80B /* ADJSessionSuccess.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E6A1E6EDC3D00E7E80B /* ADJSessionSuccess.m */; }; - 9D449E911E6EDC3D00E7E80B /* ADJSystemProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E6C1E6EDC3D00E7E80B /* ADJSystemProfile.m */; }; 9D449E921E6EDC3D00E7E80B /* ADJTimerCycle.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E6E1E6EDC3D00E7E80B /* ADJTimerCycle.m */; }; 9D449E931E6EDC3D00E7E80B /* ADJTimerOnce.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E701E6EDC3D00E7E80B /* ADJTimerOnce.m */; }; 9D449E941E6EDC3D00E7E80B /* Adjust.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E721E6EDC3D00E7E80B /* Adjust.m */; }; @@ -48,6 +46,7 @@ 9DF7A9CB1CB4ECA600D3591F /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 9DF7A9C91CB4ECA600D3591F /* Main.storyboard */; }; 9DF7A9CD1CB4ECA600D3591F /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 9DF7A9CC1CB4ECA600D3591F /* Assets.xcassets */; }; 9DF7A9D01CB4ECA600D3591F /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 9DF7A9CE1CB4ECA600D3591F /* LaunchScreen.storyboard */; }; + 9DF92D9C2630EDE5000FC3FC /* ADJPackageParams.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92D9B2630EDE5000FC3FC /* ADJPackageParams.m */; }; 9DFB04C21D745B22006D48FC /* iAd.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9DFB04C11D745B22006D48FC /* iAd.framework */; }; 9DFB04C41D745B28006D48FC /* AdSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9DFB04C31D745B28006D48FC /* AdSupport.framework */; }; D71BFB7024CAD74A00878F3E /* AppTrackingTransparency.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D71BFB6F24CAD74A00878F3E /* AppTrackingTransparency.framework */; }; @@ -58,13 +57,15 @@ /* Begin PBXFileReference section */ 6F84513725B1B19E0004C7C0 /* ADJThirdPartySharing.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJThirdPartySharing.m; sourceTree = ""; }; 6F84513825B1B19E0004C7C0 /* ADJThirdPartySharing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJThirdPartySharing.h; sourceTree = ""; }; + 6FAB78A92636DD5900773869 /* ADJLinkResolution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJLinkResolution.m; sourceTree = ""; }; + 6FAB78AA2636DD5900773869 /* ADJLinkResolution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJLinkResolution.h; sourceTree = ""; }; 6FBEE90C24E4212500FEF3F1 /* ADJUrlStrategy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUrlStrategy.h; sourceTree = ""; }; 6FBEE90D24E4212600FEF3F1 /* ADJUrlStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUrlStrategy.m; sourceTree = ""; }; - 6FCC850D1F2794BE00D6A0ED /* ADJReachability.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ADJReachability.h; sourceTree = ""; }; - 6FCC850E1F2794BE00D6A0ED /* ADJReachability.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ADJReachability.m; sourceTree = ""; }; 9D2F240C2447DDF600B7CA90 /* ADJSubscription.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSubscription.m; sourceTree = ""; }; 9D2F240D2447DDF600B7CA90 /* ADJSubscription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSubscription.h; sourceTree = ""; }; 9D319B9823054502000E28A6 /* AdjustExample-Swift.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "AdjustExample-Swift.entitlements"; sourceTree = ""; }; + 9D3A2AD92626512F00BD6E44 /* ADJAdRevenue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdRevenue.h; sourceTree = ""; }; + 9D3A2ADA2626512F00BD6E44 /* ADJAdRevenue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdRevenue.m; sourceTree = ""; }; 9D449E341E6EDC3D00E7E80B /* ADJActivityHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityHandler.h; sourceTree = ""; }; 9D449E351E6EDC3D00E7E80B /* ADJActivityHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityHandler.m; sourceTree = ""; }; 9D449E361E6EDC3D00E7E80B /* ADJActivityKind.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityKind.h; sourceTree = ""; }; @@ -77,8 +78,6 @@ 9D449E3E1E6EDC3D00E7E80B /* NSData+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+ADJAdditions.m"; sourceTree = ""; }; 9D449E3F1E6EDC3D00E7E80B /* NSString+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+ADJAdditions.h"; sourceTree = ""; }; 9D449E401E6EDC3D00E7E80B /* NSString+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+ADJAdditions.m"; sourceTree = ""; }; - 9D449E411E6EDC3D00E7E80B /* UIDevice+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIDevice+ADJAdditions.h"; sourceTree = ""; }; - 9D449E421E6EDC3D00E7E80B /* UIDevice+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIDevice+ADJAdditions.m"; sourceTree = ""; }; 9D449E431E6EDC3D00E7E80B /* ADJAdjustFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdjustFactory.h; sourceTree = ""; }; 9D449E441E6EDC3D00E7E80B /* ADJAdjustFactory.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdjustFactory.m; sourceTree = ""; }; 9D449E451E6EDC3D00E7E80B /* ADJAttribution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttribution.h; sourceTree = ""; }; @@ -89,8 +88,6 @@ 9D449E4A1E6EDC3D00E7E80B /* ADJBackoffStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJBackoffStrategy.m; sourceTree = ""; }; 9D449E4B1E6EDC3D00E7E80B /* ADJConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJConfig.h; sourceTree = ""; }; 9D449E4C1E6EDC3D00E7E80B /* ADJConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJConfig.m; sourceTree = ""; }; - 9D449E4F1E6EDC3D00E7E80B /* ADJDeviceInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJDeviceInfo.h; sourceTree = ""; }; - 9D449E501E6EDC3D00E7E80B /* ADJDeviceInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJDeviceInfo.m; sourceTree = ""; }; 9D449E511E6EDC3D00E7E80B /* ADJEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEvent.h; sourceTree = ""; }; 9D449E521E6EDC3D00E7E80B /* ADJEvent.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJEvent.m; sourceTree = ""; }; 9D449E531E6EDC3D00E7E80B /* ADJEventFailure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEventFailure.h; sourceTree = ""; }; @@ -115,8 +112,6 @@ 9D449E681E6EDC3D00E7E80B /* ADJSessionParameters.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionParameters.m; sourceTree = ""; }; 9D449E691E6EDC3D00E7E80B /* ADJSessionSuccess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSessionSuccess.h; sourceTree = ""; }; 9D449E6A1E6EDC3D00E7E80B /* ADJSessionSuccess.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionSuccess.m; sourceTree = ""; }; - 9D449E6B1E6EDC3D00E7E80B /* ADJSystemProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSystemProfile.h; sourceTree = ""; }; - 9D449E6C1E6EDC3D00E7E80B /* ADJSystemProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSystemProfile.m; sourceTree = ""; }; 9D449E6D1E6EDC3D00E7E80B /* ADJTimerCycle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerCycle.h; sourceTree = ""; }; 9D449E6E1E6EDC3D00E7E80B /* ADJTimerCycle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerCycle.m; sourceTree = ""; }; 9D449E6F1E6EDC3D00E7E80B /* ADJTimerOnce.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerOnce.h; sourceTree = ""; }; @@ -137,6 +132,8 @@ 9DF7A9CF1CB4ECA600D3591F /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 9DF7A9D11CB4ECA600D3591F /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 9DF7A9DF1CB4F01B00D3591F /* AdjustExample-Swift-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "AdjustExample-Swift-Bridging-Header.h"; sourceTree = ""; }; + 9DF92D9A2630EDE5000FC3FC /* ADJPackageParams.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJPackageParams.h; sourceTree = ""; }; + 9DF92D9B2630EDE5000FC3FC /* ADJPackageParams.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageParams.m; sourceTree = ""; }; 9DFB04C11D745B22006D48FC /* iAd.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = iAd.framework; path = System/Library/Frameworks/iAd.framework; sourceTree = SDKROOT; }; 9DFB04C31D745B28006D48FC /* AdSupport.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AdSupport.framework; path = System/Library/Frameworks/AdSupport.framework; sourceTree = SDKROOT; }; D71BFB6F24CAD74A00878F3E /* AppTrackingTransparency.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppTrackingTransparency.framework; path = System/Library/Frameworks/AppTrackingTransparency.framework; sourceTree = SDKROOT; }; @@ -181,8 +178,6 @@ 9D449E4A1E6EDC3D00E7E80B /* ADJBackoffStrategy.m */, 9D449E4B1E6EDC3D00E7E80B /* ADJConfig.h */, 9D449E4C1E6EDC3D00E7E80B /* ADJConfig.m */, - 9D449E4F1E6EDC3D00E7E80B /* ADJDeviceInfo.h */, - 9D449E501E6EDC3D00E7E80B /* ADJDeviceInfo.m */, 9D449E511E6EDC3D00E7E80B /* ADJEvent.h */, 9D449E521E6EDC3D00E7E80B /* ADJEvent.m */, 9D449E531E6EDC3D00E7E80B /* ADJEventFailure.h */, @@ -193,6 +188,8 @@ 9D449E5A1E6EDC3D00E7E80B /* ADJLogger.m */, 9D449E5B1E6EDC3D00E7E80B /* ADJPackageBuilder.h */, 9D449E5C1E6EDC3D00E7E80B /* ADJPackageBuilder.m */, + 9DF92D9A2630EDE5000FC3FC /* ADJPackageParams.h */, + 9DF92D9B2630EDE5000FC3FC /* ADJPackageParams.m */, 9D449E5D1E6EDC3D00E7E80B /* ADJPackageHandler.h */, 9D449E5E1E6EDC3D00E7E80B /* ADJPackageHandler.m */, 9D449E5F1E6EDC3D00E7E80B /* ADJRequestHandler.h */, @@ -207,8 +204,6 @@ 9D449E681E6EDC3D00E7E80B /* ADJSessionParameters.m */, 9D449E691E6EDC3D00E7E80B /* ADJSessionSuccess.h */, 9D449E6A1E6EDC3D00E7E80B /* ADJSessionSuccess.m */, - 9D449E6B1E6EDC3D00E7E80B /* ADJSystemProfile.h */, - 9D449E6C1E6EDC3D00E7E80B /* ADJSystemProfile.m */, 9D449E6D1E6EDC3D00E7E80B /* ADJTimerCycle.h */, 9D449E6E1E6EDC3D00E7E80B /* ADJTimerCycle.m */, 9D449E6F1E6EDC3D00E7E80B /* ADJTimerOnce.h */, @@ -217,8 +212,6 @@ 9D449E721E6EDC3D00E7E80B /* Adjust.m */, 9D449E731E6EDC3D00E7E80B /* ADJUtil.h */, 9D449E741E6EDC3D00E7E80B /* ADJUtil.m */, - 6FCC850D1F2794BE00D6A0ED /* ADJReachability.h */, - 6FCC850E1F2794BE00D6A0ED /* ADJReachability.m */, 9DD0E9BF1F45879A00B2A759 /* ADJUserDefaults.h */, 9DD0E9C01F45879A00B2A759 /* ADJUserDefaults.m */, 9D2F240D2447DDF600B7CA90 /* ADJSubscription.h */, @@ -227,6 +220,10 @@ 6FBEE90D24E4212600FEF3F1 /* ADJUrlStrategy.m */, 6F84513825B1B19E0004C7C0 /* ADJThirdPartySharing.h */, 6F84513725B1B19E0004C7C0 /* ADJThirdPartySharing.m */, + 9D3A2AD92626512F00BD6E44 /* ADJAdRevenue.h */, + 9D3A2ADA2626512F00BD6E44 /* ADJAdRevenue.m */, + 6FAB78AA2636DD5900773869 /* ADJLinkResolution.h */, + 6FAB78A92636DD5900773869 /* ADJLinkResolution.m */, ); name = Adjust; path = ../../../Adjust; @@ -241,8 +238,6 @@ 9D449E3E1E6EDC3D00E7E80B /* NSData+ADJAdditions.m */, 9D449E3F1E6EDC3D00E7E80B /* NSString+ADJAdditions.h */, 9D449E401E6EDC3D00E7E80B /* NSString+ADJAdditions.m */, - 9D449E411E6EDC3D00E7E80B /* UIDevice+ADJAdditions.h */, - 9D449E421E6EDC3D00E7E80B /* UIDevice+ADJAdditions.m */, ); path = ADJAdditions; sourceTree = ""; @@ -381,25 +376,24 @@ files = ( 9D449E791E6EDC3D00E7E80B /* ADJActivityState.m in Sources */, 9D449E8C1E6EDC3D00E7E80B /* ADJResponseData.m in Sources */, - 9D449E911E6EDC3D00E7E80B /* ADJSystemProfile.m in Sources */, 9D449E8E1E6EDC3D00E7E80B /* ADJSessionFailure.m in Sources */, 9D449E8F1E6EDC3D00E7E80B /* ADJSessionParameters.m in Sources */, 9D449E901E6EDC3D00E7E80B /* ADJSessionSuccess.m in Sources */, 9D449E861E6EDC3D00E7E80B /* ADJEventSuccess.m in Sources */, + 9D3A2ADB2626512F00BD6E44 /* ADJAdRevenue.m in Sources */, + 6FAB78AB2636DD5A00773869 /* ADJLinkResolution.m in Sources */, 9DD0E9C11F45879A00B2A759 /* ADJUserDefaults.m in Sources */, + 9DF92D9C2630EDE5000FC3FC /* ADJPackageParams.m in Sources */, 9D449E761E6EDC3D00E7E80B /* ADJActivityHandler.m in Sources */, 9D449E8B1E6EDC3D00E7E80B /* ADJRequestHandler.m in Sources */, 9D449E8A1E6EDC3D00E7E80B /* ADJPackageHandler.m in Sources */, 9DF7A9C81CB4ECA600D3591F /* ViewControllerSwift.swift in Sources */, 9D449E7E1E6EDC3D00E7E80B /* ADJAttribution.m in Sources */, 6FBEE90E24E4212600FEF3F1 /* ADJUrlStrategy.m in Sources */, - 9D449E831E6EDC3D00E7E80B /* ADJDeviceInfo.m in Sources */, 9D449E7F1E6EDC3D00E7E80B /* ADJAttributionHandler.m in Sources */, - 6FCC850F1F2794C600D6A0ED /* ADJReachability.m in Sources */, 9D449E891E6EDC3D00E7E80B /* ADJPackageBuilder.m in Sources */, 9D449E841E6EDC3D00E7E80B /* ADJEvent.m in Sources */, 9D449E951E6EDC3D00E7E80B /* ADJUtil.m in Sources */, - 9D449E7C1E6EDC3D00E7E80B /* UIDevice+ADJAdditions.m in Sources */, 9DF38235260E9DC20033F5A1 /* NSNumber+ADJAdditions.m in Sources */, 9D2F240E2447DDF600B7CA90 /* ADJSubscription.m in Sources */, 9D449E851E6EDC3D00E7E80B /* ADJEventFailure.m in Sources */, diff --git a/examples/AdjustExample-WebView/AdjustExample-WebView.xcodeproj/project.pbxproj b/examples/AdjustExample-WebView/AdjustExample-WebView.xcodeproj/project.pbxproj index 19152f184..873c6361c 100644 --- a/examples/AdjustExample-WebView/AdjustExample-WebView.xcodeproj/project.pbxproj +++ b/examples/AdjustExample-WebView/AdjustExample-WebView.xcodeproj/project.pbxproj @@ -8,8 +8,8 @@ /* Begin PBXBuildFile section */ 6F84513D25B1B1B40004C7C0 /* ADJThirdPartySharing.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F84513B25B1B1B40004C7C0 /* ADJThirdPartySharing.m */; }; + 6FAB78AF2636DD6B00773869 /* ADJLinkResolution.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FAB78AE2636DD6B00773869 /* ADJLinkResolution.m */; }; 6FBEE91124E4213900FEF3F1 /* ADJUrlStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FBEE91024E4213800FEF3F1 /* ADJUrlStrategy.m */; }; - 6FCC85121F2794D900D6A0ED /* ADJReachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FCC85111F2794D600D6A0ED /* ADJReachability.m */; }; 968595F11D0B2E630011CA2B /* AdjustBridgeRegister.m in Sources */ = {isa = PBXBuildFile; fileRef = 968595F01D0B2E630011CA2B /* AdjustBridgeRegister.m */; }; 9D1082A91CFDAF8E0050568B /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D1082A81CFDAF8E0050568B /* main.m */; }; 9D1082B41CFDAF8E0050568B /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 9D1082B31CFDAF8E0050568B /* Assets.xcassets */; }; @@ -23,19 +23,18 @@ 9D1083411CFDE2470050568B /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D1083401CFDE2470050568B /* UIKit.framework */; }; 9D1083431CFDE29A0050568B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D1083421CFDE29A0050568B /* Foundation.framework */; }; 9D2F24112447DE0A00B7CA90 /* ADJSubscription.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D2F24102447DE0A00B7CA90 /* ADJSubscription.m */; }; + 9D3A2ADE2626514300BD6E44 /* ADJAdRevenue.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D3A2ADC2626514300BD6E44 /* ADJAdRevenue.m */; }; 9D449EDA1E6EDD4100E7E80B /* ADJActivityHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E991E6EDD4100E7E80B /* ADJActivityHandler.m */; }; 9D449EDB1E6EDD4100E7E80B /* ADJActivityKind.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E9B1E6EDD4100E7E80B /* ADJActivityKind.m */; }; 9D449EDC1E6EDD4100E7E80B /* ADJActivityPackage.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E9D1E6EDD4100E7E80B /* ADJActivityPackage.m */; }; 9D449EDD1E6EDD4100E7E80B /* ADJActivityState.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449E9F1E6EDD4100E7E80B /* ADJActivityState.m */; }; 9D449EDE1E6EDD4100E7E80B /* NSData+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449EA21E6EDD4100E7E80B /* NSData+ADJAdditions.m */; }; 9D449EDF1E6EDD4100E7E80B /* NSString+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449EA41E6EDD4100E7E80B /* NSString+ADJAdditions.m */; }; - 9D449EE01E6EDD4100E7E80B /* UIDevice+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449EA61E6EDD4100E7E80B /* UIDevice+ADJAdditions.m */; }; 9D449EE11E6EDD4100E7E80B /* ADJAdjustFactory.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449EA81E6EDD4100E7E80B /* ADJAdjustFactory.m */; }; 9D449EE21E6EDD4100E7E80B /* ADJAttribution.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449EAA1E6EDD4100E7E80B /* ADJAttribution.m */; }; 9D449EE31E6EDD4100E7E80B /* ADJAttributionHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449EAC1E6EDD4100E7E80B /* ADJAttributionHandler.m */; }; 9D449EE41E6EDD4100E7E80B /* ADJBackoffStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449EAE1E6EDD4100E7E80B /* ADJBackoffStrategy.m */; }; 9D449EE51E6EDD4100E7E80B /* ADJConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449EB01E6EDD4100E7E80B /* ADJConfig.m */; }; - 9D449EE71E6EDD4100E7E80B /* ADJDeviceInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449EB41E6EDD4100E7E80B /* ADJDeviceInfo.m */; }; 9D449EE81E6EDD4100E7E80B /* ADJEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449EB61E6EDD4100E7E80B /* ADJEvent.m */; }; 9D449EE91E6EDD4100E7E80B /* ADJEventFailure.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449EB81E6EDD4100E7E80B /* ADJEventFailure.m */; }; 9D449EEA1E6EDD4100E7E80B /* ADJEventSuccess.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449EBA1E6EDD4100E7E80B /* ADJEventSuccess.m */; }; @@ -48,7 +47,6 @@ 9D449EF21E6EDD4100E7E80B /* ADJSessionFailure.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449ECA1E6EDD4100E7E80B /* ADJSessionFailure.m */; }; 9D449EF31E6EDD4100E7E80B /* ADJSessionParameters.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449ECC1E6EDD4100E7E80B /* ADJSessionParameters.m */; }; 9D449EF41E6EDD4100E7E80B /* ADJSessionSuccess.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449ECE1E6EDD4100E7E80B /* ADJSessionSuccess.m */; }; - 9D449EF51E6EDD4100E7E80B /* ADJSystemProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449ED01E6EDD4100E7E80B /* ADJSystemProfile.m */; }; 9D449EF61E6EDD4100E7E80B /* ADJTimerCycle.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449ED21E6EDD4100E7E80B /* ADJTimerCycle.m */; }; 9D449EF71E6EDD4100E7E80B /* ADJTimerOnce.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449ED41E6EDD4100E7E80B /* ADJTimerOnce.m */; }; 9D449EF81E6EDD4100E7E80B /* Adjust.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449ED61E6EDD4100E7E80B /* Adjust.m */; }; @@ -60,16 +58,17 @@ 9D9A99DA1D0B699A0022FFCE /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D9A99D91D0B699A0022FFCE /* AppDelegate.m */; }; 9DD0E9C41F4587C600B2A759 /* ADJUserDefaults.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DD0E9C31F4587C600B2A759 /* ADJUserDefaults.m */; }; 9DF38239260E9DDE0033F5A1 /* NSNumber+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38237260E9DDE0033F5A1 /* NSNumber+ADJAdditions.m */; }; + 9DF92D9F2630EE54000FC3FC /* ADJPackageParams.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92D9E2630EE54000FC3FC /* ADJPackageParams.m */; }; D79970FA25B05A66008A17E1 /* AppTrackingTransparency.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D79970F925B05A66008A17E1 /* AppTrackingTransparency.framework */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ 6F84513B25B1B1B40004C7C0 /* ADJThirdPartySharing.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJThirdPartySharing.m; sourceTree = ""; }; 6F84513C25B1B1B40004C7C0 /* ADJThirdPartySharing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJThirdPartySharing.h; sourceTree = ""; }; + 6FAB78AD2636DD6B00773869 /* ADJLinkResolution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJLinkResolution.h; sourceTree = ""; }; + 6FAB78AE2636DD6B00773869 /* ADJLinkResolution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJLinkResolution.m; sourceTree = ""; }; 6FBEE90F24E4213800FEF3F1 /* ADJUrlStrategy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUrlStrategy.h; sourceTree = ""; }; 6FBEE91024E4213800FEF3F1 /* ADJUrlStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUrlStrategy.m; sourceTree = ""; }; - 6FCC85101F2794D600D6A0ED /* ADJReachability.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ADJReachability.h; sourceTree = ""; }; - 6FCC85111F2794D600D6A0ED /* ADJReachability.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ADJReachability.m; sourceTree = ""; }; 968595EF1D0B2E630011CA2B /* AdjustBridgeRegister.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AdjustBridgeRegister.h; sourceTree = ""; }; 968595F01D0B2E630011CA2B /* AdjustBridgeRegister.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AdjustBridgeRegister.m; sourceTree = ""; }; 9D1082A41CFDAF8E0050568B /* AdjustExample-WebView.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "AdjustExample-WebView.app"; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -88,6 +87,8 @@ 9D1083421CFDE29A0050568B /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; 9D2F240F2447DE0A00B7CA90 /* ADJSubscription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSubscription.h; sourceTree = ""; }; 9D2F24102447DE0A00B7CA90 /* ADJSubscription.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSubscription.m; sourceTree = ""; }; + 9D3A2ADC2626514300BD6E44 /* ADJAdRevenue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdRevenue.m; sourceTree = ""; }; + 9D3A2ADD2626514300BD6E44 /* ADJAdRevenue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdRevenue.h; sourceTree = ""; }; 9D449E981E6EDD4100E7E80B /* ADJActivityHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityHandler.h; sourceTree = ""; }; 9D449E991E6EDD4100E7E80B /* ADJActivityHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityHandler.m; sourceTree = ""; }; 9D449E9A1E6EDD4100E7E80B /* ADJActivityKind.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityKind.h; sourceTree = ""; }; @@ -100,8 +101,6 @@ 9D449EA21E6EDD4100E7E80B /* NSData+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+ADJAdditions.m"; sourceTree = ""; }; 9D449EA31E6EDD4100E7E80B /* NSString+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+ADJAdditions.h"; sourceTree = ""; }; 9D449EA41E6EDD4100E7E80B /* NSString+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+ADJAdditions.m"; sourceTree = ""; }; - 9D449EA51E6EDD4100E7E80B /* UIDevice+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIDevice+ADJAdditions.h"; sourceTree = ""; }; - 9D449EA61E6EDD4100E7E80B /* UIDevice+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIDevice+ADJAdditions.m"; sourceTree = ""; }; 9D449EA71E6EDD4100E7E80B /* ADJAdjustFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdjustFactory.h; sourceTree = ""; }; 9D449EA81E6EDD4100E7E80B /* ADJAdjustFactory.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdjustFactory.m; sourceTree = ""; }; 9D449EA91E6EDD4100E7E80B /* ADJAttribution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttribution.h; sourceTree = ""; }; @@ -112,8 +111,6 @@ 9D449EAE1E6EDD4100E7E80B /* ADJBackoffStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJBackoffStrategy.m; sourceTree = ""; }; 9D449EAF1E6EDD4100E7E80B /* ADJConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJConfig.h; sourceTree = ""; }; 9D449EB01E6EDD4100E7E80B /* ADJConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJConfig.m; sourceTree = ""; }; - 9D449EB31E6EDD4100E7E80B /* ADJDeviceInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJDeviceInfo.h; sourceTree = ""; }; - 9D449EB41E6EDD4100E7E80B /* ADJDeviceInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJDeviceInfo.m; sourceTree = ""; }; 9D449EB51E6EDD4100E7E80B /* ADJEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEvent.h; sourceTree = ""; }; 9D449EB61E6EDD4100E7E80B /* ADJEvent.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJEvent.m; sourceTree = ""; }; 9D449EB71E6EDD4100E7E80B /* ADJEventFailure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEventFailure.h; sourceTree = ""; }; @@ -138,8 +135,6 @@ 9D449ECC1E6EDD4100E7E80B /* ADJSessionParameters.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionParameters.m; sourceTree = ""; }; 9D449ECD1E6EDD4100E7E80B /* ADJSessionSuccess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSessionSuccess.h; sourceTree = ""; }; 9D449ECE1E6EDD4100E7E80B /* ADJSessionSuccess.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionSuccess.m; sourceTree = ""; }; - 9D449ECF1E6EDD4100E7E80B /* ADJSystemProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSystemProfile.h; sourceTree = ""; }; - 9D449ED01E6EDD4100E7E80B /* ADJSystemProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSystemProfile.m; sourceTree = ""; }; 9D449ED11E6EDD4100E7E80B /* ADJTimerCycle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerCycle.h; sourceTree = ""; }; 9D449ED21E6EDD4100E7E80B /* ADJTimerCycle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerCycle.m; sourceTree = ""; }; 9D449ED31E6EDD4100E7E80B /* ADJTimerOnce.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerOnce.h; sourceTree = ""; }; @@ -164,6 +159,8 @@ 9DD0E9C31F4587C600B2A759 /* ADJUserDefaults.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUserDefaults.m; sourceTree = ""; }; 9DF38237260E9DDE0033F5A1 /* NSNumber+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSNumber+ADJAdditions.m"; sourceTree = ""; }; 9DF38238260E9DDE0033F5A1 /* NSNumber+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNumber+ADJAdditions.h"; sourceTree = ""; }; + 9DF92D9D2630EE54000FC3FC /* ADJPackageParams.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJPackageParams.h; sourceTree = ""; }; + 9DF92D9E2630EE54000FC3FC /* ADJPackageParams.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageParams.m; sourceTree = ""; }; D79970F925B05A66008A17E1 /* AppTrackingTransparency.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppTrackingTransparency.framework; path = System/Library/Frameworks/AppTrackingTransparency.framework; sourceTree = SDKROOT; }; /* End PBXFileReference section */ @@ -264,8 +261,6 @@ 9D449EAE1E6EDD4100E7E80B /* ADJBackoffStrategy.m */, 9D449EAF1E6EDD4100E7E80B /* ADJConfig.h */, 9D449EB01E6EDD4100E7E80B /* ADJConfig.m */, - 9D449EB31E6EDD4100E7E80B /* ADJDeviceInfo.h */, - 9D449EB41E6EDD4100E7E80B /* ADJDeviceInfo.m */, 9D449EB51E6EDD4100E7E80B /* ADJEvent.h */, 9D449EB61E6EDD4100E7E80B /* ADJEvent.m */, 9D449EB71E6EDD4100E7E80B /* ADJEventFailure.h */, @@ -276,6 +271,8 @@ 9D449EBE1E6EDD4100E7E80B /* ADJLogger.m */, 9D449EBF1E6EDD4100E7E80B /* ADJPackageBuilder.h */, 9D449EC01E6EDD4100E7E80B /* ADJPackageBuilder.m */, + 9DF92D9D2630EE54000FC3FC /* ADJPackageParams.h */, + 9DF92D9E2630EE54000FC3FC /* ADJPackageParams.m */, 9D449EC11E6EDD4100E7E80B /* ADJPackageHandler.h */, 9D449EC21E6EDD4100E7E80B /* ADJPackageHandler.m */, 9D449EC31E6EDD4100E7E80B /* ADJRequestHandler.h */, @@ -290,8 +287,6 @@ 9D449ECC1E6EDD4100E7E80B /* ADJSessionParameters.m */, 9D449ECD1E6EDD4100E7E80B /* ADJSessionSuccess.h */, 9D449ECE1E6EDD4100E7E80B /* ADJSessionSuccess.m */, - 9D449ECF1E6EDD4100E7E80B /* ADJSystemProfile.h */, - 9D449ED01E6EDD4100E7E80B /* ADJSystemProfile.m */, 9D449ED11E6EDD4100E7E80B /* ADJTimerCycle.h */, 9D449ED21E6EDD4100E7E80B /* ADJTimerCycle.m */, 9D449ED31E6EDD4100E7E80B /* ADJTimerOnce.h */, @@ -300,8 +295,6 @@ 9D449ED61E6EDD4100E7E80B /* Adjust.m */, 9D449ED71E6EDD4100E7E80B /* ADJUtil.h */, 9D449ED81E6EDD4100E7E80B /* ADJUtil.m */, - 6FCC85101F2794D600D6A0ED /* ADJReachability.h */, - 6FCC85111F2794D600D6A0ED /* ADJReachability.m */, 9DD0E9C21F4587C600B2A759 /* ADJUserDefaults.h */, 9DD0E9C31F4587C600B2A759 /* ADJUserDefaults.m */, 9D2F240F2447DE0A00B7CA90 /* ADJSubscription.h */, @@ -310,6 +303,10 @@ 6FBEE91024E4213800FEF3F1 /* ADJUrlStrategy.m */, 6F84513C25B1B1B40004C7C0 /* ADJThirdPartySharing.h */, 6F84513B25B1B1B40004C7C0 /* ADJThirdPartySharing.m */, + 9D3A2ADD2626514300BD6E44 /* ADJAdRevenue.h */, + 9D3A2ADC2626514300BD6E44 /* ADJAdRevenue.m */, + 6FAB78AD2636DD6B00773869 /* ADJLinkResolution.h */, + 6FAB78AE2636DD6B00773869 /* ADJLinkResolution.m */, ); name = Adjust; path = ../../../Adjust; @@ -324,8 +321,6 @@ 9D449EA21E6EDD4100E7E80B /* NSData+ADJAdditions.m */, 9D449EA31E6EDD4100E7E80B /* NSString+ADJAdditions.h */, 9D449EA41E6EDD4100E7E80B /* NSString+ADJAdditions.m */, - 9D449EA51E6EDD4100E7E80B /* UIDevice+ADJAdditions.h */, - 9D449EA61E6EDD4100E7E80B /* UIDevice+ADJAdditions.m */, ); path = ADJAdditions; sourceTree = ""; @@ -445,20 +440,19 @@ 9D449EEF1E6EDD4100E7E80B /* ADJRequestHandler.m in Sources */, 9D449EDC1E6EDD4100E7E80B /* ADJActivityPackage.m in Sources */, 9D449EF71E6EDD4100E7E80B /* ADJTimerOnce.m in Sources */, + 9DF92D9F2630EE54000FC3FC /* ADJPackageParams.m in Sources */, 9D449EF81E6EDD4100E7E80B /* Adjust.m in Sources */, 9D449EDF1E6EDD4100E7E80B /* NSString+ADJAdditions.m in Sources */, 9D449EF31E6EDD4100E7E80B /* ADJSessionParameters.m in Sources */, 9D449EEC1E6EDD4100E7E80B /* ADJLogger.m in Sources */, - 9D449EF51E6EDD4100E7E80B /* ADJSystemProfile.m in Sources */, - 9D449EE01E6EDD4100E7E80B /* UIDevice+ADJAdditions.m in Sources */, 9D449EEA1E6EDD4100E7E80B /* ADJEventSuccess.m in Sources */, 6F84513D25B1B1B40004C7C0 /* ADJThirdPartySharing.m in Sources */, 9DD0E9C41F4587C600B2A759 /* ADJUserDefaults.m in Sources */, - 6FCC85121F2794D900D6A0ED /* ADJReachability.m in Sources */, 9D75F1991D07463800E5D222 /* WKWebViewJavascriptBridge.m in Sources */, 9D10833D1CFDD8F00050568B /* WKWebViewController.m in Sources */, 9D449EE51E6EDD4100E7E80B /* ADJConfig.m in Sources */, 9DF38239260E9DDE0033F5A1 /* NSNumber+ADJAdditions.m in Sources */, + 9D3A2ADE2626514300BD6E44 /* ADJAdRevenue.m in Sources */, 9D75F19A1D07463800E5D222 /* AdjustBridge.m in Sources */, 9D449EF21E6EDD4100E7E80B /* ADJSessionFailure.m in Sources */, 9D449EDD1E6EDD4100E7E80B /* ADJActivityState.m in Sources */, @@ -472,8 +466,8 @@ 9D449EF11E6EDD4100E7E80B /* ADJSdkClickHandler.m in Sources */, 9D449EDB1E6EDD4100E7E80B /* ADJActivityKind.m in Sources */, 9D449EDE1E6EDD4100E7E80B /* NSData+ADJAdditions.m in Sources */, - 9D449EE71E6EDD4100E7E80B /* ADJDeviceInfo.m in Sources */, 9D449EED1E6EDD4100E7E80B /* ADJPackageBuilder.m in Sources */, + 6FAB78AF2636DD6B00773869 /* ADJLinkResolution.m in Sources */, 9D449EF01E6EDD4100E7E80B /* ADJResponseData.m in Sources */, 9D1082A91CFDAF8E0050568B /* main.m in Sources */, 9D449EF91E6EDD4100E7E80B /* ADJUtil.m in Sources */, diff --git a/examples/AdjustExample-iMessage/AdjustExample-iMessage.xcodeproj/project.pbxproj b/examples/AdjustExample-iMessage/AdjustExample-iMessage.xcodeproj/project.pbxproj index 104953af8..2f4482300 100644 --- a/examples/AdjustExample-iMessage/AdjustExample-iMessage.xcodeproj/project.pbxproj +++ b/examples/AdjustExample-iMessage/AdjustExample-iMessage.xcodeproj/project.pbxproj @@ -8,6 +8,7 @@ /* Begin PBXBuildFile section */ 6F84514A25B1B1F40004C7C0 /* ADJThirdPartySharing.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F84514825B1B1F40004C7C0 /* ADJThirdPartySharing.m */; }; + 6FAB78BC2636DDAF00773869 /* ADJLinkResolution.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FAB78BA2636DDAE00773869 /* ADJLinkResolution.m */; }; 6FBEE91A24E4218C00FEF3F1 /* ADJUrlStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FBEE91824E4218B00FEF3F1 /* ADJUrlStrategy.m */; }; 9D01676920FF812B0029CFFF /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 9D01676820FF812B0029CFFF /* Assets.xcassets */; }; 9D01677020FF812B0029CFFF /* AdjustExample-iMessage MessagesExtension.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = 9D01676F20FF812B0029CFFF /* AdjustExample-iMessage MessagesExtension.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; @@ -15,7 +16,6 @@ 9D01677920FF812B0029CFFF /* MessagesViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D01677820FF812B0029CFFF /* MessagesViewController.m */; }; 9D01677C20FF812B0029CFFF /* MainInterface.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 9D01677A20FF812B0029CFFF /* MainInterface.storyboard */; }; 9D01677E20FF812C0029CFFF /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 9D01677D20FF812C0029CFFF /* Assets.xcassets */; }; - 9D01685620FF88F60029CFFF /* ADJDeviceInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D01681320FF88F60029CFFF /* ADJDeviceInfo.m */; }; 9D01685720FF88F60029CFFF /* ADJTimerOnce.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D01681420FF88F60029CFFF /* ADJTimerOnce.m */; }; 9D01685820FF88F60029CFFF /* ADJAttributionHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D01681520FF88F60029CFFF /* ADJAttributionHandler.m */; }; 9D01685920FF88F60029CFFF /* ADJRequestHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D01681820FF88F60029CFFF /* ADJRequestHandler.m */; }; @@ -36,9 +36,7 @@ 9D01686920FF88F60029CFFF /* ADJActivityKind.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D01683820FF88F60029CFFF /* ADJActivityKind.m */; }; 9D01686A20FF88F60029CFFF /* NSString+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D01683B20FF88F60029CFFF /* NSString+ADJAdditions.m */; }; 9D01686B20FF88F60029CFFF /* NSData+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D01683D20FF88F60029CFFF /* NSData+ADJAdditions.m */; }; - 9D01686C20FF88F60029CFFF /* UIDevice+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D01683F20FF88F60029CFFF /* UIDevice+ADJAdditions.m */; }; 9D01686D20FF88F60029CFFF /* ADJAttribution.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D01684120FF88F60029CFFF /* ADJAttribution.m */; }; - 9D01686E20FF88F60029CFFF /* ADJSystemProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D01684220FF88F60029CFFF /* ADJSystemProfile.m */; }; 9D01686F20FF88F60029CFFF /* ADJActivityPackage.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D01684420FF88F60029CFFF /* ADJActivityPackage.m */; }; 9D01687020FF88F60029CFFF /* ADJUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D01684520FF88F60029CFFF /* ADJUtil.m */; }; 9D01687120FF88F60029CFFF /* ADJAdjustFactory.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D01684820FF88F60029CFFF /* ADJAdjustFactory.m */; }; @@ -46,9 +44,10 @@ 9D01687320FF88F60029CFFF /* ADJPackageBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D01684D20FF88F60029CFFF /* ADJPackageBuilder.m */; }; 9D01687420FF88F60029CFFF /* ADJUserDefaults.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D01684E20FF88F60029CFFF /* ADJUserDefaults.m */; }; 9D01687620FF88F60029CFFF /* ADJActivityHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D01685420FF88F60029CFFF /* ADJActivityHandler.m */; }; - 9D01687720FF88F60029CFFF /* ADJReachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D01685520FF88F60029CFFF /* ADJReachability.m */; }; 9D2F241A2447DE4700B7CA90 /* ADJSubscription.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D2F24192447DE4700B7CA90 /* ADJSubscription.m */; }; + 9D3A2AE72626518E00BD6E44 /* ADJAdRevenue.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D3A2AE62626518E00BD6E44 /* ADJAdRevenue.m */; }; 9DF38246260E9E2A0033F5A1 /* NSNumber+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF38245260E9E2A0033F5A1 /* NSNumber+ADJAdditions.m */; }; + 9DF92DA82630EFC1000FC3FC /* ADJPackageParams.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92DA62630EFC0000FC3FC /* ADJPackageParams.m */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -78,6 +77,8 @@ /* Begin PBXFileReference section */ 6F84514825B1B1F40004C7C0 /* ADJThirdPartySharing.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJThirdPartySharing.m; sourceTree = ""; }; 6F84514925B1B1F40004C7C0 /* ADJThirdPartySharing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJThirdPartySharing.h; sourceTree = ""; }; + 6FAB78BA2636DDAE00773869 /* ADJLinkResolution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJLinkResolution.m; sourceTree = ""; }; + 6FAB78BB2636DDAE00773869 /* ADJLinkResolution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJLinkResolution.h; sourceTree = ""; }; 6FBEE91824E4218B00FEF3F1 /* ADJUrlStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUrlStrategy.m; sourceTree = ""; }; 6FBEE91924E4218B00FEF3F1 /* ADJUrlStrategy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUrlStrategy.h; sourceTree = ""; }; 9D01676520FF81280029CFFF /* AdjustExample-iMessage.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "AdjustExample-iMessage.app"; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -91,13 +92,11 @@ 9D01677D20FF812C0029CFFF /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 9D01677F20FF812C0029CFFF /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 9D01681220FF88F60029CFFF /* ADJConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJConfig.h; sourceTree = ""; }; - 9D01681320FF88F60029CFFF /* ADJDeviceInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJDeviceInfo.m; sourceTree = ""; }; 9D01681420FF88F60029CFFF /* ADJTimerOnce.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerOnce.m; sourceTree = ""; }; 9D01681520FF88F60029CFFF /* ADJAttributionHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAttributionHandler.m; sourceTree = ""; }; 9D01681620FF88F60029CFFF /* Adjust.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Adjust.h; sourceTree = ""; }; 9D01681720FF88F60029CFFF /* ADJActivityPackage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityPackage.h; sourceTree = ""; }; 9D01681820FF88F60029CFFF /* ADJRequestHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJRequestHandler.m; sourceTree = ""; }; - 9D01681920FF88F60029CFFF /* ADJSystemProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSystemProfile.h; sourceTree = ""; }; 9D01681A20FF88F60029CFFF /* ADJAttribution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttribution.h; sourceTree = ""; }; 9D01681C20FF88F60029CFFF /* ADJSdkClickHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSdkClickHandler.m; sourceTree = ""; }; 9D01681D20FF88F60029CFFF /* ADJActivityKind.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityKind.h; sourceTree = ""; }; @@ -112,7 +111,6 @@ 9D01682620FF88F60029CFFF /* ADJActivityState.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityState.m; sourceTree = ""; }; 9D01682720FF88F60029CFFF /* ADJSessionFailure.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionFailure.m; sourceTree = ""; }; 9D01682820FF88F60029CFFF /* ADJUtil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUtil.h; sourceTree = ""; }; - 9D01682920FF88F60029CFFF /* ADJReachability.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJReachability.h; sourceTree = ""; }; 9D01682A20FF88F60029CFFF /* ADJActivityHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityHandler.h; sourceTree = ""; }; 9D01682B20FF88F60029CFFF /* ADJTimerCycle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerCycle.m; sourceTree = ""; }; 9D01682C20FF88F60029CFFF /* ADJSessionParameters.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionParameters.m; sourceTree = ""; }; @@ -122,20 +120,16 @@ 9D01683020FF88F60029CFFF /* Adjust.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Adjust.m; sourceTree = ""; }; 9D01683120FF88F60029CFFF /* ADJAttributionHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttributionHandler.h; sourceTree = ""; }; 9D01683220FF88F60029CFFF /* ADJTimerOnce.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerOnce.h; sourceTree = ""; }; - 9D01683320FF88F60029CFFF /* ADJDeviceInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJDeviceInfo.h; sourceTree = ""; }; 9D01683420FF88F60029CFFF /* ADJConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJConfig.m; sourceTree = ""; }; 9D01683520FF88F60029CFFF /* ADJPackageHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageHandler.m; sourceTree = ""; }; 9D01683620FF88F60029CFFF /* ADJEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEvent.h; sourceTree = ""; }; 9D01683720FF88F60029CFFF /* ADJSdkClickHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSdkClickHandler.h; sourceTree = ""; }; 9D01683820FF88F60029CFFF /* ADJActivityKind.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityKind.m; sourceTree = ""; }; 9D01683B20FF88F60029CFFF /* NSString+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+ADJAdditions.m"; sourceTree = ""; }; - 9D01683C20FF88F60029CFFF /* UIDevice+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIDevice+ADJAdditions.h"; sourceTree = ""; }; 9D01683D20FF88F60029CFFF /* NSData+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+ADJAdditions.m"; sourceTree = ""; }; 9D01683E20FF88F60029CFFF /* NSData+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData+ADJAdditions.h"; sourceTree = ""; }; - 9D01683F20FF88F60029CFFF /* UIDevice+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIDevice+ADJAdditions.m"; sourceTree = ""; }; 9D01684020FF88F60029CFFF /* NSString+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+ADJAdditions.h"; sourceTree = ""; }; 9D01684120FF88F60029CFFF /* ADJAttribution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAttribution.m; sourceTree = ""; }; - 9D01684220FF88F60029CFFF /* ADJSystemProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSystemProfile.m; sourceTree = ""; }; 9D01684320FF88F60029CFFF /* ADJRequestHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJRequestHandler.h; sourceTree = ""; }; 9D01684420FF88F60029CFFF /* ADJActivityPackage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityPackage.m; sourceTree = ""; }; 9D01684520FF88F60029CFFF /* ADJUtil.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUtil.m; sourceTree = ""; }; @@ -153,11 +147,14 @@ 9D01685120FF88F60029CFFF /* ADJSessionParameters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSessionParameters.h; sourceTree = ""; }; 9D01685320FF88F60029CFFF /* ADJTimerCycle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerCycle.h; sourceTree = ""; }; 9D01685420FF88F60029CFFF /* ADJActivityHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityHandler.m; sourceTree = ""; }; - 9D01685520FF88F60029CFFF /* ADJReachability.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJReachability.m; sourceTree = ""; }; 9D2F24182447DE4700B7CA90 /* ADJSubscription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSubscription.h; sourceTree = ""; }; 9D2F24192447DE4700B7CA90 /* ADJSubscription.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSubscription.m; sourceTree = ""; }; + 9D3A2AE52626518E00BD6E44 /* ADJAdRevenue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdRevenue.h; sourceTree = ""; }; + 9D3A2AE62626518E00BD6E44 /* ADJAdRevenue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdRevenue.m; sourceTree = ""; }; 9DF38244260E9E2A0033F5A1 /* NSNumber+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNumber+ADJAdditions.h"; sourceTree = ""; }; 9DF38245260E9E2A0033F5A1 /* NSNumber+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSNumber+ADJAdditions.m"; sourceTree = ""; }; + 9DF92DA62630EFC0000FC3FC /* ADJPackageParams.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageParams.m; sourceTree = ""; }; + 9DF92DA72630EFC0000FC3FC /* ADJPackageParams.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJPackageParams.h; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -225,13 +222,11 @@ isa = PBXGroup; children = ( 9D01681220FF88F60029CFFF /* ADJConfig.h */, - 9D01681320FF88F60029CFFF /* ADJDeviceInfo.m */, 9D01681420FF88F60029CFFF /* ADJTimerOnce.m */, 9D01681520FF88F60029CFFF /* ADJAttributionHandler.m */, 9D01681620FF88F60029CFFF /* Adjust.h */, 9D01681720FF88F60029CFFF /* ADJActivityPackage.h */, 9D01681820FF88F60029CFFF /* ADJRequestHandler.m */, - 9D01681920FF88F60029CFFF /* ADJSystemProfile.h */, 9D01681A20FF88F60029CFFF /* ADJAttribution.h */, 9D01681C20FF88F60029CFFF /* ADJSdkClickHandler.m */, 9D01681D20FF88F60029CFFF /* ADJActivityKind.h */, @@ -246,7 +241,6 @@ 9D01682620FF88F60029CFFF /* ADJActivityState.m */, 9D01682720FF88F60029CFFF /* ADJSessionFailure.m */, 9D01682820FF88F60029CFFF /* ADJUtil.h */, - 9D01682920FF88F60029CFFF /* ADJReachability.h */, 9D01682A20FF88F60029CFFF /* ADJActivityHandler.h */, 9D01682B20FF88F60029CFFF /* ADJTimerCycle.m */, 9D01682C20FF88F60029CFFF /* ADJSessionParameters.m */, @@ -256,7 +250,6 @@ 9D01683020FF88F60029CFFF /* Adjust.m */, 9D01683120FF88F60029CFFF /* ADJAttributionHandler.h */, 9D01683220FF88F60029CFFF /* ADJTimerOnce.h */, - 9D01683320FF88F60029CFFF /* ADJDeviceInfo.h */, 9D01683420FF88F60029CFFF /* ADJConfig.m */, 9D01683520FF88F60029CFFF /* ADJPackageHandler.m */, 9D01683620FF88F60029CFFF /* ADJEvent.h */, @@ -264,7 +257,6 @@ 9D01683820FF88F60029CFFF /* ADJActivityKind.m */, 9D01683A20FF88F60029CFFF /* ADJAdditions */, 9D01684120FF88F60029CFFF /* ADJAttribution.m */, - 9D01684220FF88F60029CFFF /* ADJSystemProfile.m */, 9D01684320FF88F60029CFFF /* ADJRequestHandler.h */, 9D01684420FF88F60029CFFF /* ADJActivityPackage.m */, 9D01684520FF88F60029CFFF /* ADJUtil.m */, @@ -282,13 +274,18 @@ 9D01685120FF88F60029CFFF /* ADJSessionParameters.h */, 9D01685320FF88F60029CFFF /* ADJTimerCycle.h */, 9D01685420FF88F60029CFFF /* ADJActivityHandler.m */, - 9D01685520FF88F60029CFFF /* ADJReachability.m */, 9D2F24182447DE4700B7CA90 /* ADJSubscription.h */, 9D2F24192447DE4700B7CA90 /* ADJSubscription.m */, 6FBEE91924E4218B00FEF3F1 /* ADJUrlStrategy.h */, 6FBEE91824E4218B00FEF3F1 /* ADJUrlStrategy.m */, 6F84514925B1B1F40004C7C0 /* ADJThirdPartySharing.h */, 6F84514825B1B1F40004C7C0 /* ADJThirdPartySharing.m */, + 9D3A2AE52626518E00BD6E44 /* ADJAdRevenue.h */, + 9D3A2AE62626518E00BD6E44 /* ADJAdRevenue.m */, + 9DF92DA72630EFC0000FC3FC /* ADJPackageParams.h */, + 9DF92DA62630EFC0000FC3FC /* ADJPackageParams.m */, + 6FAB78BB2636DDAE00773869 /* ADJLinkResolution.h */, + 6FAB78BA2636DDAE00773869 /* ADJLinkResolution.m */, ); name = Adjust; path = ../../../Adjust; @@ -300,10 +297,8 @@ 9DF38244260E9E2A0033F5A1 /* NSNumber+ADJAdditions.h */, 9DF38245260E9E2A0033F5A1 /* NSNumber+ADJAdditions.m */, 9D01683B20FF88F60029CFFF /* NSString+ADJAdditions.m */, - 9D01683C20FF88F60029CFFF /* UIDevice+ADJAdditions.h */, 9D01683D20FF88F60029CFFF /* NSData+ADJAdditions.m */, 9D01683E20FF88F60029CFFF /* NSData+ADJAdditions.h */, - 9D01683F20FF88F60029CFFF /* UIDevice+ADJAdditions.m */, 9D01684020FF88F60029CFFF /* NSString+ADJAdditions.h */, ); path = ADJAdditions; @@ -407,6 +402,7 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + 9DF92DA82630EFC1000FC3FC /* ADJPackageParams.m in Sources */, 9D01685820FF88F60029CFFF /* ADJAttributionHandler.m in Sources */, 9D01686120FF88F60029CFFF /* ADJSessionFailure.m in Sources */, 9D01686520FF88F60029CFFF /* ADJBackoffStrategy.m in Sources */, @@ -418,11 +414,10 @@ 9D01686420FF88F60029CFFF /* ADJLogger.m in Sources */, 9D01687020FF88F60029CFFF /* ADJUtil.m in Sources */, 9D01685B20FF88F60029CFFF /* ADJSdkClickHandler.m in Sources */, - 9D01686C20FF88F60029CFFF /* UIDevice+ADJAdditions.m in Sources */, 9D01687620FF88F60029CFFF /* ADJActivityHandler.m in Sources */, 9D01686720FF88F60029CFFF /* ADJConfig.m in Sources */, - 9D01687720FF88F60029CFFF /* ADJReachability.m in Sources */, 6FBEE91A24E4218C00FEF3F1 /* ADJUrlStrategy.m in Sources */, + 6FAB78BC2636DDAF00773869 /* ADJLinkResolution.m in Sources */, 9D01686A20FF88F60029CFFF /* NSString+ADJAdditions.m in Sources */, 6F84514A25B1B1F40004C7C0 /* ADJThirdPartySharing.m in Sources */, 9D01687120FF88F60029CFFF /* ADJAdjustFactory.m in Sources */, @@ -431,7 +426,7 @@ 9D01687420FF88F60029CFFF /* ADJUserDefaults.m in Sources */, 9D01686820FF88F60029CFFF /* ADJPackageHandler.m in Sources */, 9D01685E20FF88F60029CFFF /* ADJEventFailure.m in Sources */, - 9D01686E20FF88F60029CFFF /* ADJSystemProfile.m in Sources */, + 9D3A2AE72626518E00BD6E44 /* ADJAdRevenue.m in Sources */, 9D01685720FF88F60029CFFF /* ADJTimerOnce.m in Sources */, 9D01686220FF88F60029CFFF /* ADJTimerCycle.m in Sources */, 9D01686D20FF88F60029CFFF /* ADJAttribution.m in Sources */, @@ -440,7 +435,6 @@ 9D01685C20FF88F60029CFFF /* ADJEvent.m in Sources */, 9D01687320FF88F60029CFFF /* ADJPackageBuilder.m in Sources */, 9D2F241A2447DE4700B7CA90 /* ADJSubscription.m in Sources */, - 9D01685620FF88F60029CFFF /* ADJDeviceInfo.m in Sources */, 9DF38246260E9E2A0033F5A1 /* NSNumber+ADJAdditions.m in Sources */, 9D01686620FF88F60029CFFF /* Adjust.m in Sources */, 9D01685D20FF88F60029CFFF /* ADJSessionSuccess.m in Sources */, diff --git a/examples/AdjustExample-iWatch/AdjustExample-iWatch.xcodeproj/project.pbxproj b/examples/AdjustExample-iWatch/AdjustExample-iWatch.xcodeproj/project.pbxproj index 2e3b179af..e9801ec68 100644 --- a/examples/AdjustExample-iWatch/AdjustExample-iWatch.xcodeproj/project.pbxproj +++ b/examples/AdjustExample-iWatch/AdjustExample-iWatch.xcodeproj/project.pbxproj @@ -8,22 +8,21 @@ /* Begin PBXBuildFile section */ 6F84514425B1B1DB0004C7C0 /* ADJThirdPartySharing.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F84514325B1B1DB0004C7C0 /* ADJThirdPartySharing.m */; }; + 6FAB78B62636DD9600773869 /* ADJLinkResolution.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FAB78B52636DD9600773869 /* ADJLinkResolution.m */; }; 6FBEE91724E4215E00FEF3F1 /* ADJUrlStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FBEE91624E4215E00FEF3F1 /* ADJUrlStrategy.m */; }; - 6FCC85181F27950000D6A0ED /* ADJReachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FCC85171F2794F800D6A0ED /* ADJReachability.m */; }; 9D2F24172447DE3400B7CA90 /* ADJSubscription.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D2F24152447DE3400B7CA90 /* ADJSubscription.m */; }; + 9D3A2AE42626517A00BD6E44 /* ADJAdRevenue.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D3A2AE32626517A00BD6E44 /* ADJAdRevenue.m */; }; 9D449FA31E6EE72000E7E80B /* ADJActivityHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F621E6EE72000E7E80B /* ADJActivityHandler.m */; }; 9D449FA41E6EE72000E7E80B /* ADJActivityKind.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F641E6EE72000E7E80B /* ADJActivityKind.m */; }; 9D449FA51E6EE72000E7E80B /* ADJActivityPackage.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F661E6EE72000E7E80B /* ADJActivityPackage.m */; }; 9D449FA61E6EE72000E7E80B /* ADJActivityState.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F681E6EE72000E7E80B /* ADJActivityState.m */; }; 9D449FA71E6EE72000E7E80B /* NSData+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F6B1E6EE72000E7E80B /* NSData+ADJAdditions.m */; }; 9D449FA81E6EE72000E7E80B /* NSString+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F6D1E6EE72000E7E80B /* NSString+ADJAdditions.m */; }; - 9D449FA91E6EE72000E7E80B /* UIDevice+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F6F1E6EE72000E7E80B /* UIDevice+ADJAdditions.m */; }; 9D449FAA1E6EE72000E7E80B /* ADJAdjustFactory.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F711E6EE72000E7E80B /* ADJAdjustFactory.m */; }; 9D449FAB1E6EE72000E7E80B /* ADJAttribution.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F731E6EE72000E7E80B /* ADJAttribution.m */; }; 9D449FAC1E6EE72000E7E80B /* ADJAttributionHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F751E6EE72000E7E80B /* ADJAttributionHandler.m */; }; 9D449FAD1E6EE72000E7E80B /* ADJBackoffStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F771E6EE72000E7E80B /* ADJBackoffStrategy.m */; }; 9D449FAE1E6EE72000E7E80B /* ADJConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F791E6EE72000E7E80B /* ADJConfig.m */; }; - 9D449FB01E6EE72000E7E80B /* ADJDeviceInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F7D1E6EE72000E7E80B /* ADJDeviceInfo.m */; }; 9D449FB11E6EE72000E7E80B /* ADJEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F7F1E6EE72000E7E80B /* ADJEvent.m */; }; 9D449FB21E6EE72000E7E80B /* ADJEventFailure.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F811E6EE72000E7E80B /* ADJEventFailure.m */; }; 9D449FB31E6EE72000E7E80B /* ADJEventSuccess.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F831E6EE72000E7E80B /* ADJEventSuccess.m */; }; @@ -36,7 +35,6 @@ 9D449FBB1E6EE72000E7E80B /* ADJSessionFailure.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F931E6EE72000E7E80B /* ADJSessionFailure.m */; }; 9D449FBC1E6EE72000E7E80B /* ADJSessionParameters.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F951E6EE72000E7E80B /* ADJSessionParameters.m */; }; 9D449FBD1E6EE72000E7E80B /* ADJSessionSuccess.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F971E6EE72000E7E80B /* ADJSessionSuccess.m */; }; - 9D449FBE1E6EE72000E7E80B /* ADJSystemProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F991E6EE72000E7E80B /* ADJSystemProfile.m */; }; 9D449FBF1E6EE72000E7E80B /* ADJTimerCycle.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F9B1E6EE72000E7E80B /* ADJTimerCycle.m */; }; 9D449FC01E6EE72000E7E80B /* ADJTimerOnce.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F9D1E6EE72000E7E80B /* ADJTimerOnce.m */; }; 9D449FC11E6EE72000E7E80B /* Adjust.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F9F1E6EE72000E7E80B /* Adjust.m */; }; @@ -60,6 +58,7 @@ 9DF7ACB81CB4FF6400D3591F /* AdjustTrackingHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF7ACB61CB4FF6400D3591F /* AdjustTrackingHelper.m */; }; 9DF7ACC81CB5032900D3591F /* EventTrackedController.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF7ACC51CB5032900D3591F /* EventTrackedController.m */; }; 9DF7ACC91CB5032900D3591F /* TableRowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF7ACC71CB5032900D3591F /* TableRowController.m */; }; + 9DF92DA52630EE8E000FC3FC /* ADJPackageParams.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92DA42630EE8E000FC3FC /* ADJPackageParams.m */; }; 9DFB04D01D745D5C006D48FC /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9DFB04CF1D745D5C006D48FC /* CoreFoundation.framework */; }; 9DFB04D21D745D60006D48FC /* iAd.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9DFB04D11D745D60006D48FC /* iAd.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; 9DFB04D41D745D65006D48FC /* AdSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9DFB04D31D745D65006D48FC /* AdSupport.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; @@ -110,12 +109,14 @@ /* Begin PBXFileReference section */ 6F84514225B1B1DB0004C7C0 /* ADJThirdPartySharing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJThirdPartySharing.h; sourceTree = ""; }; 6F84514325B1B1DB0004C7C0 /* ADJThirdPartySharing.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJThirdPartySharing.m; sourceTree = ""; }; + 6FAB78B42636DD9600773869 /* ADJLinkResolution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJLinkResolution.h; sourceTree = ""; }; + 6FAB78B52636DD9600773869 /* ADJLinkResolution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJLinkResolution.m; sourceTree = ""; }; 6FBEE91524E4215E00FEF3F1 /* ADJUrlStrategy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUrlStrategy.h; sourceTree = ""; }; 6FBEE91624E4215E00FEF3F1 /* ADJUrlStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUrlStrategy.m; sourceTree = ""; }; - 6FCC85161F2794F800D6A0ED /* ADJReachability.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ADJReachability.h; sourceTree = ""; }; - 6FCC85171F2794F800D6A0ED /* ADJReachability.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ADJReachability.m; sourceTree = ""; }; 9D2F24152447DE3400B7CA90 /* ADJSubscription.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSubscription.m; sourceTree = ""; }; 9D2F24162447DE3400B7CA90 /* ADJSubscription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSubscription.h; sourceTree = ""; }; + 9D3A2AE22626517A00BD6E44 /* ADJAdRevenue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdRevenue.h; sourceTree = ""; }; + 9D3A2AE32626517A00BD6E44 /* ADJAdRevenue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdRevenue.m; sourceTree = ""; }; 9D449F611E6EE72000E7E80B /* ADJActivityHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityHandler.h; sourceTree = ""; }; 9D449F621E6EE72000E7E80B /* ADJActivityHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityHandler.m; sourceTree = ""; }; 9D449F631E6EE72000E7E80B /* ADJActivityKind.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityKind.h; sourceTree = ""; }; @@ -128,8 +129,6 @@ 9D449F6B1E6EE72000E7E80B /* NSData+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+ADJAdditions.m"; sourceTree = ""; }; 9D449F6C1E6EE72000E7E80B /* NSString+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+ADJAdditions.h"; sourceTree = ""; }; 9D449F6D1E6EE72000E7E80B /* NSString+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+ADJAdditions.m"; sourceTree = ""; }; - 9D449F6E1E6EE72000E7E80B /* UIDevice+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIDevice+ADJAdditions.h"; sourceTree = ""; }; - 9D449F6F1E6EE72000E7E80B /* UIDevice+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIDevice+ADJAdditions.m"; sourceTree = ""; }; 9D449F701E6EE72000E7E80B /* ADJAdjustFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdjustFactory.h; sourceTree = ""; }; 9D449F711E6EE72000E7E80B /* ADJAdjustFactory.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdjustFactory.m; sourceTree = ""; }; 9D449F721E6EE72000E7E80B /* ADJAttribution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttribution.h; sourceTree = ""; }; @@ -140,8 +139,6 @@ 9D449F771E6EE72000E7E80B /* ADJBackoffStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJBackoffStrategy.m; sourceTree = ""; }; 9D449F781E6EE72000E7E80B /* ADJConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJConfig.h; sourceTree = ""; }; 9D449F791E6EE72000E7E80B /* ADJConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJConfig.m; sourceTree = ""; }; - 9D449F7C1E6EE72000E7E80B /* ADJDeviceInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJDeviceInfo.h; sourceTree = ""; }; - 9D449F7D1E6EE72000E7E80B /* ADJDeviceInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJDeviceInfo.m; sourceTree = ""; }; 9D449F7E1E6EE72000E7E80B /* ADJEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEvent.h; sourceTree = ""; }; 9D449F7F1E6EE72000E7E80B /* ADJEvent.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJEvent.m; sourceTree = ""; }; 9D449F801E6EE72000E7E80B /* ADJEventFailure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEventFailure.h; sourceTree = ""; }; @@ -166,8 +163,6 @@ 9D449F951E6EE72000E7E80B /* ADJSessionParameters.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionParameters.m; sourceTree = ""; }; 9D449F961E6EE72000E7E80B /* ADJSessionSuccess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSessionSuccess.h; sourceTree = ""; }; 9D449F971E6EE72000E7E80B /* ADJSessionSuccess.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionSuccess.m; sourceTree = ""; }; - 9D449F981E6EE72000E7E80B /* ADJSystemProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSystemProfile.h; sourceTree = ""; }; - 9D449F991E6EE72000E7E80B /* ADJSystemProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSystemProfile.m; sourceTree = ""; }; 9D449F9A1E6EE72000E7E80B /* ADJTimerCycle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerCycle.h; sourceTree = ""; }; 9D449F9B1E6EE72000E7E80B /* ADJTimerCycle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerCycle.m; sourceTree = ""; }; 9D449F9C1E6EE72000E7E80B /* ADJTimerOnce.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerOnce.h; sourceTree = ""; }; @@ -209,6 +204,8 @@ 9DF7ACC51CB5032900D3591F /* EventTrackedController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = EventTrackedController.m; sourceTree = ""; }; 9DF7ACC61CB5032900D3591F /* TableRowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TableRowController.h; sourceTree = ""; }; 9DF7ACC71CB5032900D3591F /* TableRowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TableRowController.m; sourceTree = ""; }; + 9DF92DA32630EE8E000FC3FC /* ADJPackageParams.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJPackageParams.h; sourceTree = ""; }; + 9DF92DA42630EE8E000FC3FC /* ADJPackageParams.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageParams.m; sourceTree = ""; }; 9DFB04CF1D745D5C006D48FC /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = System/Library/Frameworks/CoreFoundation.framework; sourceTree = SDKROOT; }; 9DFB04D11D745D60006D48FC /* iAd.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = iAd.framework; path = System/Library/Frameworks/iAd.framework; sourceTree = SDKROOT; }; 9DFB04D31D745D65006D48FC /* AdSupport.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AdSupport.framework; path = System/Library/Frameworks/AdSupport.framework; sourceTree = SDKROOT; }; @@ -257,8 +254,6 @@ 9D449F771E6EE72000E7E80B /* ADJBackoffStrategy.m */, 9D449F781E6EE72000E7E80B /* ADJConfig.h */, 9D449F791E6EE72000E7E80B /* ADJConfig.m */, - 9D449F7C1E6EE72000E7E80B /* ADJDeviceInfo.h */, - 9D449F7D1E6EE72000E7E80B /* ADJDeviceInfo.m */, 9D449F7E1E6EE72000E7E80B /* ADJEvent.h */, 9D449F7F1E6EE72000E7E80B /* ADJEvent.m */, 9D449F801E6EE72000E7E80B /* ADJEventFailure.h */, @@ -269,6 +264,8 @@ 9D449F871E6EE72000E7E80B /* ADJLogger.m */, 9D449F881E6EE72000E7E80B /* ADJPackageBuilder.h */, 9D449F891E6EE72000E7E80B /* ADJPackageBuilder.m */, + 9DF92DA32630EE8E000FC3FC /* ADJPackageParams.h */, + 9DF92DA42630EE8E000FC3FC /* ADJPackageParams.m */, 9D449F8A1E6EE72000E7E80B /* ADJPackageHandler.h */, 9D449F8B1E6EE72000E7E80B /* ADJPackageHandler.m */, 9D449F8C1E6EE72000E7E80B /* ADJRequestHandler.h */, @@ -283,8 +280,6 @@ 9D449F951E6EE72000E7E80B /* ADJSessionParameters.m */, 9D449F961E6EE72000E7E80B /* ADJSessionSuccess.h */, 9D449F971E6EE72000E7E80B /* ADJSessionSuccess.m */, - 9D449F981E6EE72000E7E80B /* ADJSystemProfile.h */, - 9D449F991E6EE72000E7E80B /* ADJSystemProfile.m */, 9D449F9A1E6EE72000E7E80B /* ADJTimerCycle.h */, 9D449F9B1E6EE72000E7E80B /* ADJTimerCycle.m */, 9D449F9C1E6EE72000E7E80B /* ADJTimerOnce.h */, @@ -293,8 +288,6 @@ 9D449F9F1E6EE72000E7E80B /* Adjust.m */, 9D449FA01E6EE72000E7E80B /* ADJUtil.h */, 9D449FA11E6EE72000E7E80B /* ADJUtil.m */, - 6FCC85161F2794F800D6A0ED /* ADJReachability.h */, - 6FCC85171F2794F800D6A0ED /* ADJReachability.m */, 9DD0E9C51F45949600B2A759 /* ADJUserDefaults.h */, 9DD0E9C61F45949600B2A759 /* ADJUserDefaults.m */, 9D2F24162447DE3400B7CA90 /* ADJSubscription.h */, @@ -303,6 +296,10 @@ 6FBEE91624E4215E00FEF3F1 /* ADJUrlStrategy.m */, 6F84514225B1B1DB0004C7C0 /* ADJThirdPartySharing.h */, 6F84514325B1B1DB0004C7C0 /* ADJThirdPartySharing.m */, + 9D3A2AE22626517A00BD6E44 /* ADJAdRevenue.h */, + 9D3A2AE32626517A00BD6E44 /* ADJAdRevenue.m */, + 6FAB78B42636DD9600773869 /* ADJLinkResolution.h */, + 6FAB78B52636DD9600773869 /* ADJLinkResolution.m */, ); name = Adjust; path = ../../../Adjust; @@ -317,8 +314,6 @@ 9D449F6B1E6EE72000E7E80B /* NSData+ADJAdditions.m */, 9D449F6C1E6EE72000E7E80B /* NSString+ADJAdditions.h */, 9D449F6D1E6EE72000E7E80B /* NSString+ADJAdditions.m */, - 9D449F6E1E6EE72000E7E80B /* UIDevice+ADJAdditions.h */, - 9D449F6F1E6EE72000E7E80B /* UIDevice+ADJAdditions.m */, ); path = ADJAdditions; sourceTree = ""; @@ -545,12 +540,11 @@ buildActionMask = 2147483647; files = ( 9D449FBA1E6EE72000E7E80B /* ADJSdkClickHandler.m in Sources */, + 9D3A2AE42626517A00BD6E44 /* ADJAdRevenue.m in Sources */, 9D449FA81E6EE72000E7E80B /* NSString+ADJAdditions.m in Sources */, - 9D449FB01E6EE72000E7E80B /* ADJDeviceInfo.m in Sources */, 9D449FB31E6EE72000E7E80B /* ADJEventSuccess.m in Sources */, 9D449FBF1E6EE72000E7E80B /* ADJTimerCycle.m in Sources */, 9D449FAB1E6EE72000E7E80B /* ADJAttribution.m in Sources */, - 6FCC85181F27950000D6A0ED /* ADJReachability.m in Sources */, 9D449FA61E6EE72000E7E80B /* ADJActivityState.m in Sources */, 9DF7ACB81CB4FF6400D3591F /* AdjustTrackingHelper.m in Sources */, 9DF7AC1F1CB4FEDB00D3591F /* ViewControllerWatch.m in Sources */, @@ -568,12 +562,11 @@ 9D449FB81E6EE72000E7E80B /* ADJRequestHandler.m in Sources */, 9D449FB11E6EE72000E7E80B /* ADJEvent.m in Sources */, 9DF7AC191CB4FEDB00D3591F /* main.m in Sources */, - 9D449FA91E6EE72000E7E80B /* UIDevice+ADJAdditions.m in Sources */, 9D2F24172447DE3400B7CA90 /* ADJSubscription.m in Sources */, 9DF38240260E9E130033F5A1 /* NSNumber+ADJAdditions.m in Sources */, - 9D449FBE1E6EE72000E7E80B /* ADJSystemProfile.m in Sources */, 9D449FAD1E6EE72000E7E80B /* ADJBackoffStrategy.m in Sources */, 9D449FBC1E6EE72000E7E80B /* ADJSessionParameters.m in Sources */, + 9DF92DA52630EE8E000FC3FC /* ADJPackageParams.m in Sources */, 6F84514425B1B1DB0004C7C0 /* ADJThirdPartySharing.m in Sources */, 9D449FB61E6EE72000E7E80B /* ADJPackageBuilder.m in Sources */, 9D449FBD1E6EE72000E7E80B /* ADJSessionSuccess.m in Sources */, @@ -585,6 +578,7 @@ 9D449FA71E6EE72000E7E80B /* NSData+ADJAdditions.m in Sources */, 9D449FC11E6EE72000E7E80B /* Adjust.m in Sources */, 9D449FA51E6EE72000E7E80B /* ADJActivityPackage.m in Sources */, + 6FAB78B62636DD9600773869 /* ADJLinkResolution.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/examples/AdjustExample-tvOS/AdjustExample-tvOS.xcodeproj/project.pbxproj b/examples/AdjustExample-tvOS/AdjustExample-tvOS.xcodeproj/project.pbxproj index ce03a32cc..df12d0ad1 100644 --- a/examples/AdjustExample-tvOS/AdjustExample-tvOS.xcodeproj/project.pbxproj +++ b/examples/AdjustExample-tvOS/AdjustExample-tvOS.xcodeproj/project.pbxproj @@ -8,8 +8,8 @@ /* Begin PBXBuildFile section */ 6F84514125B1B1C80004C7C0 /* ADJThirdPartySharing.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F84513F25B1B1C70004C7C0 /* ADJThirdPartySharing.m */; }; + 6FAB78B32636DD8200773869 /* ADJLinkResolution.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FAB78B22636DD8200773869 /* ADJLinkResolution.m */; }; 6FBEE91424E4214800FEF3F1 /* ADJUrlStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FBEE91324E4214800FEF3F1 /* ADJUrlStrategy.m */; }; - 6FCC85151F2794EC00D6A0ED /* ADJReachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FCC85131F2794E800D6A0ED /* ADJReachability.m */; }; 963909B71BCC0D8300A2E8A4 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 963909B61BCC0D8300A2E8A4 /* main.m */; }; 963909BA1BCC0D8300A2E8A4 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 963909B91BCC0D8300A2E8A4 /* AppDelegate.m */; }; 963909BD1BCC0D8300A2E8A4 /* ViewControllertvOS.m in Sources */ = {isa = PBXBuildFile; fileRef = 963909BC1BCC0D8300A2E8A4 /* ViewControllertvOS.m */; }; @@ -17,19 +17,18 @@ 963909C21BCC0D8300A2E8A4 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 963909C11BCC0D8300A2E8A4 /* Assets.xcassets */; }; 963909D01BCC0DA600A2E8A4 /* AdSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 963909CF1BCC0DA600A2E8A4 /* AdSupport.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; 9D2F24142447DE1F00B7CA90 /* ADJSubscription.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D2F24122447DE1E00B7CA90 /* ADJSubscription.m */; }; + 9D3A2AE12626515900BD6E44 /* ADJAdRevenue.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D3A2AE02626515900BD6E44 /* ADJAdRevenue.m */; }; 9D449F3F1E6EE6C500E7E80B /* ADJActivityHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449EFE1E6EE6C500E7E80B /* ADJActivityHandler.m */; }; 9D449F401E6EE6C500E7E80B /* ADJActivityKind.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F001E6EE6C500E7E80B /* ADJActivityKind.m */; }; 9D449F411E6EE6C500E7E80B /* ADJActivityPackage.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F021E6EE6C500E7E80B /* ADJActivityPackage.m */; }; 9D449F421E6EE6C500E7E80B /* ADJActivityState.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F041E6EE6C500E7E80B /* ADJActivityState.m */; }; 9D449F431E6EE6C500E7E80B /* NSData+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F071E6EE6C500E7E80B /* NSData+ADJAdditions.m */; }; 9D449F441E6EE6C500E7E80B /* NSString+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F091E6EE6C500E7E80B /* NSString+ADJAdditions.m */; }; - 9D449F451E6EE6C500E7E80B /* UIDevice+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F0B1E6EE6C500E7E80B /* UIDevice+ADJAdditions.m */; }; 9D449F461E6EE6C500E7E80B /* ADJAdjustFactory.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F0D1E6EE6C500E7E80B /* ADJAdjustFactory.m */; }; 9D449F471E6EE6C500E7E80B /* ADJAttribution.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F0F1E6EE6C500E7E80B /* ADJAttribution.m */; }; 9D449F481E6EE6C500E7E80B /* ADJAttributionHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F111E6EE6C500E7E80B /* ADJAttributionHandler.m */; }; 9D449F491E6EE6C500E7E80B /* ADJBackoffStrategy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F131E6EE6C500E7E80B /* ADJBackoffStrategy.m */; }; 9D449F4A1E6EE6C500E7E80B /* ADJConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F151E6EE6C500E7E80B /* ADJConfig.m */; }; - 9D449F4C1E6EE6C500E7E80B /* ADJDeviceInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F191E6EE6C500E7E80B /* ADJDeviceInfo.m */; }; 9D449F4D1E6EE6C500E7E80B /* ADJEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F1B1E6EE6C500E7E80B /* ADJEvent.m */; }; 9D449F4E1E6EE6C500E7E80B /* ADJEventFailure.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F1D1E6EE6C500E7E80B /* ADJEventFailure.m */; }; 9D449F4F1E6EE6C500E7E80B /* ADJEventSuccess.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F1F1E6EE6C500E7E80B /* ADJEventSuccess.m */; }; @@ -42,7 +41,6 @@ 9D449F571E6EE6C500E7E80B /* ADJSessionFailure.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F2F1E6EE6C500E7E80B /* ADJSessionFailure.m */; }; 9D449F581E6EE6C500E7E80B /* ADJSessionParameters.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F311E6EE6C500E7E80B /* ADJSessionParameters.m */; }; 9D449F591E6EE6C500E7E80B /* ADJSessionSuccess.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F331E6EE6C500E7E80B /* ADJSessionSuccess.m */; }; - 9D449F5A1E6EE6C500E7E80B /* ADJSystemProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F351E6EE6C500E7E80B /* ADJSystemProfile.m */; }; 9D449F5B1E6EE6C500E7E80B /* ADJTimerCycle.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F371E6EE6C500E7E80B /* ADJTimerCycle.m */; }; 9D449F5C1E6EE6C500E7E80B /* ADJTimerOnce.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F391E6EE6C500E7E80B /* ADJTimerOnce.m */; }; 9D449F5D1E6EE6C500E7E80B /* Adjust.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D449F3B1E6EE6C500E7E80B /* Adjust.m */; }; @@ -50,6 +48,7 @@ 9DC95F2F1C10596500138E4B /* Constants.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DC95F2E1C10596500138E4B /* Constants.m */; }; 9DD0E9CF1F459ECE00B2A759 /* ADJUserDefaults.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DD0E9CE1F459ECE00B2A759 /* ADJUserDefaults.m */; }; 9DF3823D260E9E000033F5A1 /* NSNumber+ADJAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF3823C260E9E000033F5A1 /* NSNumber+ADJAdditions.m */; }; + 9DF92DA22630EE75000FC3FC /* ADJPackageParams.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF92DA12630EE74000FC3FC /* ADJPackageParams.m */; }; /* End PBXBuildFile section */ /* Begin PBXCopyFilesBuildPhase section */ @@ -68,10 +67,10 @@ /* Begin PBXFileReference section */ 6F84513F25B1B1C70004C7C0 /* ADJThirdPartySharing.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJThirdPartySharing.m; sourceTree = ""; }; 6F84514025B1B1C80004C7C0 /* ADJThirdPartySharing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJThirdPartySharing.h; sourceTree = ""; }; + 6FAB78B12636DD8200773869 /* ADJLinkResolution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJLinkResolution.h; sourceTree = ""; }; + 6FAB78B22636DD8200773869 /* ADJLinkResolution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJLinkResolution.m; sourceTree = ""; }; 6FBEE91224E4214800FEF3F1 /* ADJUrlStrategy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJUrlStrategy.h; sourceTree = ""; }; 6FBEE91324E4214800FEF3F1 /* ADJUrlStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUrlStrategy.m; sourceTree = ""; }; - 6FCC85131F2794E800D6A0ED /* ADJReachability.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ADJReachability.m; sourceTree = ""; }; - 6FCC85141F2794E800D6A0ED /* ADJReachability.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ADJReachability.h; sourceTree = ""; }; 963909B21BCC0D8300A2E8A4 /* AdjustExample-tvOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "AdjustExample-tvOS.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 963909B61BCC0D8300A2E8A4 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 963909B81BCC0D8300A2E8A4 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; @@ -84,6 +83,8 @@ 963909CF1BCC0DA600A2E8A4 /* AdSupport.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AdSupport.framework; path = System/Library/Frameworks/AdSupport.framework; sourceTree = SDKROOT; }; 9D2F24122447DE1E00B7CA90 /* ADJSubscription.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSubscription.m; sourceTree = ""; }; 9D2F24132447DE1F00B7CA90 /* ADJSubscription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSubscription.h; sourceTree = ""; }; + 9D3A2ADF2626515900BD6E44 /* ADJAdRevenue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdRevenue.h; sourceTree = ""; }; + 9D3A2AE02626515900BD6E44 /* ADJAdRevenue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdRevenue.m; sourceTree = ""; }; 9D449EFD1E6EE6C400E7E80B /* ADJActivityHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityHandler.h; sourceTree = ""; }; 9D449EFE1E6EE6C500E7E80B /* ADJActivityHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJActivityHandler.m; sourceTree = ""; }; 9D449EFF1E6EE6C500E7E80B /* ADJActivityKind.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJActivityKind.h; sourceTree = ""; }; @@ -96,8 +97,6 @@ 9D449F071E6EE6C500E7E80B /* NSData+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+ADJAdditions.m"; sourceTree = ""; }; 9D449F081E6EE6C500E7E80B /* NSString+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+ADJAdditions.h"; sourceTree = ""; }; 9D449F091E6EE6C500E7E80B /* NSString+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+ADJAdditions.m"; sourceTree = ""; }; - 9D449F0A1E6EE6C500E7E80B /* UIDevice+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIDevice+ADJAdditions.h"; sourceTree = ""; }; - 9D449F0B1E6EE6C500E7E80B /* UIDevice+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIDevice+ADJAdditions.m"; sourceTree = ""; }; 9D449F0C1E6EE6C500E7E80B /* ADJAdjustFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAdjustFactory.h; sourceTree = ""; }; 9D449F0D1E6EE6C500E7E80B /* ADJAdjustFactory.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJAdjustFactory.m; sourceTree = ""; }; 9D449F0E1E6EE6C500E7E80B /* ADJAttribution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJAttribution.h; sourceTree = ""; }; @@ -108,8 +107,6 @@ 9D449F131E6EE6C500E7E80B /* ADJBackoffStrategy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJBackoffStrategy.m; sourceTree = ""; }; 9D449F141E6EE6C500E7E80B /* ADJConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJConfig.h; sourceTree = ""; }; 9D449F151E6EE6C500E7E80B /* ADJConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJConfig.m; sourceTree = ""; }; - 9D449F181E6EE6C500E7E80B /* ADJDeviceInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJDeviceInfo.h; sourceTree = ""; }; - 9D449F191E6EE6C500E7E80B /* ADJDeviceInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJDeviceInfo.m; sourceTree = ""; }; 9D449F1A1E6EE6C500E7E80B /* ADJEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEvent.h; sourceTree = ""; }; 9D449F1B1E6EE6C500E7E80B /* ADJEvent.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJEvent.m; sourceTree = ""; }; 9D449F1C1E6EE6C500E7E80B /* ADJEventFailure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJEventFailure.h; sourceTree = ""; }; @@ -134,8 +131,6 @@ 9D449F311E6EE6C500E7E80B /* ADJSessionParameters.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionParameters.m; sourceTree = ""; }; 9D449F321E6EE6C500E7E80B /* ADJSessionSuccess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSessionSuccess.h; sourceTree = ""; }; 9D449F331E6EE6C500E7E80B /* ADJSessionSuccess.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSessionSuccess.m; sourceTree = ""; }; - 9D449F341E6EE6C500E7E80B /* ADJSystemProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJSystemProfile.h; sourceTree = ""; }; - 9D449F351E6EE6C500E7E80B /* ADJSystemProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJSystemProfile.m; sourceTree = ""; }; 9D449F361E6EE6C500E7E80B /* ADJTimerCycle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerCycle.h; sourceTree = ""; }; 9D449F371E6EE6C500E7E80B /* ADJTimerCycle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJTimerCycle.m; sourceTree = ""; }; 9D449F381E6EE6C500E7E80B /* ADJTimerOnce.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJTimerOnce.h; sourceTree = ""; }; @@ -150,6 +145,8 @@ 9DD0E9CE1F459ECE00B2A759 /* ADJUserDefaults.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJUserDefaults.m; sourceTree = ""; }; 9DF3823B260E9E000033F5A1 /* NSNumber+ADJAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNumber+ADJAdditions.h"; sourceTree = ""; }; 9DF3823C260E9E000033F5A1 /* NSNumber+ADJAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSNumber+ADJAdditions.m"; sourceTree = ""; }; + 9DF92DA02630EE74000FC3FC /* ADJPackageParams.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ADJPackageParams.h; sourceTree = ""; }; + 9DF92DA12630EE74000FC3FC /* ADJPackageParams.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ADJPackageParams.m; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -229,8 +226,6 @@ 9D449F131E6EE6C500E7E80B /* ADJBackoffStrategy.m */, 9D449F141E6EE6C500E7E80B /* ADJConfig.h */, 9D449F151E6EE6C500E7E80B /* ADJConfig.m */, - 9D449F181E6EE6C500E7E80B /* ADJDeviceInfo.h */, - 9D449F191E6EE6C500E7E80B /* ADJDeviceInfo.m */, 9D449F1A1E6EE6C500E7E80B /* ADJEvent.h */, 9D449F1B1E6EE6C500E7E80B /* ADJEvent.m */, 9D449F1C1E6EE6C500E7E80B /* ADJEventFailure.h */, @@ -241,6 +236,8 @@ 9D449F231E6EE6C500E7E80B /* ADJLogger.m */, 9D449F241E6EE6C500E7E80B /* ADJPackageBuilder.h */, 9D449F251E6EE6C500E7E80B /* ADJPackageBuilder.m */, + 9DF92DA02630EE74000FC3FC /* ADJPackageParams.h */, + 9DF92DA12630EE74000FC3FC /* ADJPackageParams.m */, 9D449F261E6EE6C500E7E80B /* ADJPackageHandler.h */, 9D449F271E6EE6C500E7E80B /* ADJPackageHandler.m */, 9D449F281E6EE6C500E7E80B /* ADJRequestHandler.h */, @@ -255,8 +252,6 @@ 9D449F311E6EE6C500E7E80B /* ADJSessionParameters.m */, 9D449F321E6EE6C500E7E80B /* ADJSessionSuccess.h */, 9D449F331E6EE6C500E7E80B /* ADJSessionSuccess.m */, - 9D449F341E6EE6C500E7E80B /* ADJSystemProfile.h */, - 9D449F351E6EE6C500E7E80B /* ADJSystemProfile.m */, 9D449F361E6EE6C500E7E80B /* ADJTimerCycle.h */, 9D449F371E6EE6C500E7E80B /* ADJTimerCycle.m */, 9D449F381E6EE6C500E7E80B /* ADJTimerOnce.h */, @@ -265,8 +260,6 @@ 9D449F3B1E6EE6C500E7E80B /* Adjust.m */, 9D449F3C1E6EE6C500E7E80B /* ADJUtil.h */, 9D449F3D1E6EE6C500E7E80B /* ADJUtil.m */, - 6FCC85141F2794E800D6A0ED /* ADJReachability.h */, - 6FCC85131F2794E800D6A0ED /* ADJReachability.m */, 9DD0E9CD1F459ECE00B2A759 /* ADJUserDefaults.h */, 9DD0E9CE1F459ECE00B2A759 /* ADJUserDefaults.m */, 9D2F24132447DE1F00B7CA90 /* ADJSubscription.h */, @@ -275,6 +268,10 @@ 6FBEE91324E4214800FEF3F1 /* ADJUrlStrategy.m */, 6F84514025B1B1C80004C7C0 /* ADJThirdPartySharing.h */, 6F84513F25B1B1C70004C7C0 /* ADJThirdPartySharing.m */, + 9D3A2ADF2626515900BD6E44 /* ADJAdRevenue.h */, + 9D3A2AE02626515900BD6E44 /* ADJAdRevenue.m */, + 6FAB78B12636DD8200773869 /* ADJLinkResolution.h */, + 6FAB78B22636DD8200773869 /* ADJLinkResolution.m */, ); name = Adjust; path = ../../../Adjust; @@ -289,8 +286,6 @@ 9D449F071E6EE6C500E7E80B /* NSData+ADJAdditions.m */, 9D449F081E6EE6C500E7E80B /* NSString+ADJAdditions.h */, 9D449F091E6EE6C500E7E80B /* NSString+ADJAdditions.m */, - 9D449F0A1E6EE6C500E7E80B /* UIDevice+ADJAdditions.h */, - 9D449F0B1E6EE6C500E7E80B /* UIDevice+ADJAdditions.m */, ); path = ADJAdditions; sourceTree = ""; @@ -382,8 +377,8 @@ files = ( 9D449F561E6EE6C500E7E80B /* ADJSdkClickHandler.m in Sources */, 9D449F441E6EE6C500E7E80B /* NSString+ADJAdditions.m in Sources */, - 9D449F4C1E6EE6C500E7E80B /* ADJDeviceInfo.m in Sources */, 9D449F4F1E6EE6C500E7E80B /* ADJEventSuccess.m in Sources */, + 9D3A2AE12626515900BD6E44 /* ADJAdRevenue.m in Sources */, 9D449F5B1E6EE6C500E7E80B /* ADJTimerCycle.m in Sources */, 9D449F471E6EE6C500E7E80B /* ADJAttribution.m in Sources */, 9DF3823D260E9E000033F5A1 /* NSNumber+ADJAdditions.m in Sources */, @@ -395,21 +390,20 @@ 963909BA1BCC0D8300A2E8A4 /* AppDelegate.m in Sources */, 9D449F4A1E6EE6C500E7E80B /* ADJConfig.m in Sources */, 9D449F571E6EE6C500E7E80B /* ADJSessionFailure.m in Sources */, + 6FAB78B32636DD8200773869 /* ADJLinkResolution.m in Sources */, 9DD0E9CF1F459ECE00B2A759 /* ADJUserDefaults.m in Sources */, 9D449F5E1E6EE6C500E7E80B /* ADJUtil.m in Sources */, 9D449F4E1E6EE6C500E7E80B /* ADJEventFailure.m in Sources */, 9D449F461E6EE6C500E7E80B /* ADJAdjustFactory.m in Sources */, 9D449F3F1E6EE6C500E7E80B /* ADJActivityHandler.m in Sources */, - 6FCC85151F2794EC00D6A0ED /* ADJReachability.m in Sources */, 9D449F5C1E6EE6C500E7E80B /* ADJTimerOnce.m in Sources */, 9D449F401E6EE6C500E7E80B /* ADJActivityKind.m in Sources */, 9D449F481E6EE6C500E7E80B /* ADJAttributionHandler.m in Sources */, 9D449F541E6EE6C500E7E80B /* ADJRequestHandler.m in Sources */, + 9DF92DA22630EE75000FC3FC /* ADJPackageParams.m in Sources */, 9D449F4D1E6EE6C500E7E80B /* ADJEvent.m in Sources */, 963909B71BCC0D8300A2E8A4 /* main.m in Sources */, 6FBEE91424E4214800FEF3F1 /* ADJUrlStrategy.m in Sources */, - 9D449F451E6EE6C500E7E80B /* UIDevice+ADJAdditions.m in Sources */, - 9D449F5A1E6EE6C500E7E80B /* ADJSystemProfile.m in Sources */, 9D449F491E6EE6C500E7E80B /* ADJBackoffStrategy.m in Sources */, 9D449F581E6EE6C500E7E80B /* ADJSessionParameters.m in Sources */, 9D449F521E6EE6C500E7E80B /* ADJPackageBuilder.m in Sources */,