Настроить реактивную перераспределение через глубокие ссылки не работает - PullRequest
0 голосов
/ 19 октября 2019

Я настраиваю настройку метрики в своем приложении-родном приложении. Мне удалось сделать глубокие ссылки, чтобы открыть мое приложение. Приложение должно быть повторно присвоено после открытия каждой диплинком, но этого не происходит.

Я много раз проверял документы и делал все в соответствии с этим, как мне кажется. Метод связывания перехватывает URL-адрес и должен предоставить его в Adjust.appWillOpenUrl

constructor(props) {
    super(props);
    Adjust.getSdkVersion(function (sdkVersion) {
        console.log("Adjust SDK version: " + sdkVersion);
    });

    const adjustConfig = new AdjustConfig("KEY", AdjustConfig.EnvironmentSandbox);
    adjustConfig.setLogLevel(AdjustConfig.LogLevelVerbose);
    adjustConfig.setShouldLaunchDeeplink(true);
    adjustConfig.setSendInBackground(true);

    adjustConfig.setDelayStart(4.0);

    adjustConfig.setAttributionCallbackListener(function (attribution) {
        console.log(">>> Attribution callback received");

        console.log("Tracker token = " + attribution.trackerToken);
        console.log("Tracker name = " + attribution.trackerName);
        console.log("Network = " + attribution.network);
        console.log("Campaign = " + attribution.campaign);
        console.log("Adgroup = " + attribution.adgroup);
        console.log("Creative = " + attribution.creative);
        console.log("Click label = " + attribution.clickLabel);
        console.log("Adid = " + attribution.adid);
    });

    adjustConfig.setDeferredDeeplinkCallbackListener(function(deeplink) {
        console.log("Deferred deep link URL content: " + deeplink);
    });


    adjustConfig.setDelayStart(4.0);

    Adjust.addSessionCallbackParameter("New session");

    Adjust.create(adjustConfig);
}

_trackFormSentEvent() {
    const adjustEvent = new AdjustEvent("KEY");
    Adjust.trackEvent(adjustEvent);
}

_trackNewSessionEvent() {
    const adjustEvent = new AdjustEvent("KEY");

    Adjust.trackEvent(adjustEvent);
}

async componentDidMount() {
    await this._trackNewSessionEvent();
    const value = await AsyncStorage.getItem('REQUESTSENT');
    if (value) this.setState({requestSent: true});

    Linking.addEventListener('url', this.handleDeepLink);
    Linking.getInitialURL().then((url) => {
        if (url) {
            this.handleDeepLink({ url });
        }
    })

}

componentWillUnmount() {
    Linking.removeEventListener('url', this.handleDeepLink);
}

handleDeepLink(event) {
    Adjust.appWillOpenUrl(event.url);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...