AppsFlyerSDK / appsflyer-flutter-plugin

Flutter Plugin for AppsFlyer SDK
MIT License
142 stars 111 forks source link

iOS SDK not working since 6.13.2 #310

Closed Danyalo closed 2 months ago

Danyalo commented 2 months ago

Describe the bug After the latest update to Appsflyer Flutter package, all iOS events stopped coming from my iOS app. SKAN data also stopped coming. What's more, iOS SDK v6.13.2 was not being picked up by Appsflyer dashboard at all, which leads me to believe it's the issue with iOS SDK not being started at all. I'm not sure at the moment whether this is caused by changes in iOS SDK (6.13.1 -> 6.13.2), changed in Flutter package code (6.13.0+2 -> 6.13.2), or by something with my my app setup specifically.

image

I can confirm that the breaking change for me was simple updating Flutter package, and after a revert everything started working again.

To Reproduce Steps to reproduce the behavior:

  1. Use Appsflyer package version 6.13.2: appsflyer_sdk: ^6.13.2
  2. Use the following code to initialise Appsflyer SDK (was working with package ver 6.13.0+2):
    
    final _appsflyerSdk = AppsflyerSdk(
    AppsFlyerOptions(
      afDevKey: 'devKey',
      appId: 'appId',
      timeToWaitForATTUserAuthorization: 15,
    ),
    );

Future init() { _appsflyerSdk.onDeepLinking((result) { // My logic here }); await _appsflyerSdk.initSdk(registerOnDeepLinkingCallback: true); }



**Expected behavior**
Appsflyer SDK is recognised by Appsflyer dashboard, events are reported

**Smartphone (please complete the following information):**
 - OS: iOS

**Additional context**
Can you please double check that no breaking changes were introduced in Flutter package 6.13.2, and that the way I start Appsflyer SDK is still valid for this version?
github-actions[bot] commented 2 months ago

👋 Hi @Danyalo and Thank you for reaching out to us. In order for us to provide optimal support, please submit a ticket to our support team at support@appsflyer.com. When submitting the ticket, please specify:

al-af commented 2 months ago

Hi @Danyalo , Thank you for reaching out about this matter. We will check for breaking changes and update this thread. At the moment, you can declare manualStart: true and use startSdk after initSdk, as mentioned on the Basic Integration page.

Danyalo commented 2 months ago

Thanks for the suggestion, I will try it as a last resort. The thing is, I tried some tests locally and could not reproduce the issue on a local debug build yesterday so that makes testing hard for me. I also don't want to risk having the same issue occur in published app again. On the other hard, I will want to update to the version which deals with iOS privacy manifests soon so I'll have to make Flutter packages after 6.13.0+2 work one way or the other.

ianoliveira12 commented 2 months ago

@Danyalo In my application on IOS, the onDeepLinking is not triggered or is unable to retrieve the deep_linking_value file. Is it working for you?

al-af commented 2 months ago

Hi @Danyalo , We have just published a hotfix for this issue, v6.13.2+1. It does not include the iOS privacy manifest feature, but it will be added soon. I'm closing the ticket as it was fixed.

Thank you and have a great day :)

Pielgrin commented 2 months ago

Hey @al-af I just updated the package to v6.13.2+1 but I still have the same issue :/

`flutter: Null check operator used on a null value flutter:

0 AppsflyerSdk.initSdk. (package:appsflyer_sdk/src/appsflyer_sdk.dart:175:20)`

Danyalo commented 2 months ago

@ianoliveira12 yes it's working, I'm passing values from OneLink solution to the onDeepLinking callback successfully

Danyalo commented 2 months ago

@al-af thank you for the quick fix! Did you reproduce the issue in your testing, and did this hotfix resolve it for you? Just want to be extra sure before applying it to my production app 🙌

ianoliveira12 commented 2 months ago

@Danyalo How did you implement it on iOS? when I click on the link. and I do. When installing the app, the first opening does not recover the deeplink value, but when I already have the app installed, it works.