Skip to content

setAppInviteOneLinkID never completes on Android (Flutter SDK) #387

@brunosemfio

Description

@brunosemfio

Hi,

I'm using the Appsflyer Flutter SDK to implement an app invite feature. According to the documentation, before generating an invite link via generateInviteLink, it's necessary to call:

Future<void> setAppInviteOneLinkID(String oneLinkID, Function callback)

On iOS, calling this method like below works as expected:

await _appsflyer.setAppInviteOneLinkID('oneLinkID', (_) {});

However, on Android, this Future is never completed, which blocks execution. This appears to be a platform-specific issue in the SDK implementation.

To work around this, I had to implement a helper method using a Completer to bridge the callback:

Future<void> _setAppInviteOneLinkIDFuture(String oneLinkID) async {
  final completer = Completer<void>();
  _appsflyer.setAppInviteOneLinkID(oneLinkID, (result) {
    completer.complete();
  });
  return completer.future;
}

This workaround ensures the flow continues properly, but it's inconsistent with the expected behavior of the SDK's API and introduces unnecessary boilerplate.

Can you please confirm if this is a known issue and if there are plans to address the inconsistent behavior between Android and iOS?

Thanks.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions