iOS - 如何在 AppsFlyer 的 One-Link 中获取参数。应用程序已安装并启动

盲骑士

如果我的应用没有安装,我可以获得 One-Link 的参数(广告系列、媒体源等...)。我使用下面的方法来做到这一点。

func onConversionDataReceived(_ installData: [AnyHashable : Any]!) {

    if let data = installData{

        print("\(data)")

        if let status = data["af_status"] as? String{

            if(status == "Non-organic"){

                if let sourceID = data["media_source"] , let campaign = data["campaign"]{

                    print("This is a Non-Organic install. Media source: \(sourceID)  Campaign: \(campaign)")

                }

            } else {

                print("This is an organic install.")

            }

        }

    }

}

但是,如果我的应用程序已安装、启动,然后单击另一个 One-Link 以打开我的应用程序,则只能通过以下方法获取此 URL:

func onAppOpenAttribution(_ attributionData: [AnyHashable : Any]!) {

    if let data = attributionData{

        print("\(data)")

    }

}

那么,如果我的应用程序在设备上可用,有什么方法可以获取参数(广告系列、媒体源等...)?

注意:我使用了一个短链接。

马克西姆·舒斯汀

onAppOpenAttribution 每次从不同的深层链接(在您的情况下为 One-Link)打开应用程序时都会触发。

如果我的应用没有安装,我可以获得 One-Link 的参数(广告系列、媒体源等...)。

是的,第一次触发了两个回调onAppOpenAttributiononConversionDataReceived

但是,如果我的应用程序已安装、启动,然后我单击另一个 One-Link 以打开我的应用程序

如果您尝试从不属于 Appsflyer 的 One-Link 打开应用程序,就会发生这种情况。

例如,此链接(通用链接)https://rndemotest.onelink.me/7y5s/f78c46d5将通过 为您提供媒体来源、活动等onAppOpenAttribution,其中7y5s您的 One-Link ID 是在仪表板的“ONELINK CONFIGURATION”部分中定义的。

[编辑]

确保您运行最新的 AppsFlyer SDK 版本,

iOS 通用链接或 Android 应用链接的短链接深度链接仅从 SDK 版本 4.8.0 开始支持

一般来说,你应该得到一个{"link": "<URL>"}关于Full link ae的响应{"link":"https://abc.onelink.me/2347196006?pid=User%20invite&c=CMTT2019einvite&af_dp=abc%3A%2F%2F"}

对于 One-Link,您应该获得包含媒体来源的所有信息,...。


顺便说一句,这里是一个如何处理onAppOpenAttribution响应的代码片段示例

func onAppOpenAttribution(_ attributionData: [AnyHashable : Any]!) {

        var attDataString:String = ""
        var params = [String: String]()

        print("")
        print("<-------------------------------------------------->")
        print("onAppOpenAttribution is:")

        if let pid = attributionData[AnyHashable("pid")] as? String{
            attDataString.append("PID: " + pid + "\n\n")
            print(helper(module: "pid", message: pid))
        }

        if let is_retargeting = attributionData[AnyHashable("is_retargeting")] as? String{
            attDataString.append("is_retargeting: " + is_retargeting + "\n\n")
            print(helper(module: "is_retargeting", message: is_retargeting))
        }

        if let campaign = attributionData[AnyHashable("c")] as? String{
            attDataString.append("Campaign: " + campaign + "\n\n")
            print(helper(module: "campaign", message: campaign))
        }

        if let link = attributionData[AnyHashable("link")] as? String{
            attDataString.append("Link: " + link + "\n\n")
            print(helper(module: "link", message: link))
        }

        if let af_dp = attributionData[AnyHashable("af_dp")] as? String{
            attDataString.append("af_dp: " + af_dp + "\n\n")
            print(helper(module: "af_dp", message: af_dp))
        }
        print(attributionData)
        print("<-------------------------------------------------->")
        print("")

        //        dump(attributionData)
    }

func helper(module:String!, message:String!) -> String!{

        var sb:String = ""
        sb.append(" " + module + "=")
        var pad:Int = 17 - module.characters.count

        while  pad > 0 {
            pad-=1
            sb.append( " " )
        }
        sb.append(" " + message)

        return sb
    }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用appsflyer跟踪ios安装

来自分类Dev

如何在 Python 中使用 Appsflyer API 获取指标

来自分类Dev

如何在 Javascript 中解析 AppsFlyer 转换数据?

来自分类Dev

带iOS 14的AppsFlyer

来自分类Dev

如何在 iPhone 上远程启动已安装的 iOS 应用程序?

来自分类Dev

如何在Swift中启动iOS邮件应用程序?

来自分类Dev

如何让 Java 程序从 iOS 应用程序中获取输入

来自分类Dev

如何在Xcode(iOS)模拟器中手动安装应用程序

来自分类Dev

如何在iOS中从我的应用程序获取所有消息传递应用程序列表

来自分类Dev

如何在iOS应用程序中停止captureOutput

来自分类Dev

如何在iOS应用程序中编辑PDF表单?

来自分类Dev

如何在iOS应用程序中编辑PDF表单?

来自分类Dev

如何在iOS应用程序中存储数据

来自分类Dev

如何在多个应用程序中识别iOS设备?

来自分类Dev

iOS如何在应用程序中打开WebView

来自分类Dev

如何在iOS应用程序中停止captureOutput

来自分类Dev

如何在iOS应用程序中创建多个列表

来自分类Dev

如何在 iOS 应用程序中停止 GIF?

来自分类Dev

iOS 如何在邮件应用程序中打开 PDF?

来自分类Dev

如何在 Windows 10 中模拟 iOS 应用程序

来自分类Dev

如何在我的应用程序中的IOS邮件,联系人,日历下获取“签名”

来自分类Dev

如何在iOS(Safari)中获取mailto链接以打开Outlook应用程序?

来自分类Dev

如何在iOS 10通知中获取应用程序状态?

来自分类Dev

如何了解已启动的应用程序以及如何越狱iOS 7的详细信息

来自分类Dev

检查如何安装iOS应用程序

来自分类Dev

如何获取已安装或已删除应用程序的名称?

来自分类Dev

获取ios 8中所有已安装应用程序的列表

来自分类Dev

如何从iOS中的应用程序获取所有消息传递应用程序列表

来自分类Dev

如何从自己的应用程序在iOS中获取邮件应用程序的通知?

Related 相关文章

  1. 1

    使用appsflyer跟踪ios安装

  2. 2

    如何在 Python 中使用 Appsflyer API 获取指标

  3. 3

    如何在 Javascript 中解析 AppsFlyer 转换数据?

  4. 4

    带iOS 14的AppsFlyer

  5. 5

    如何在 iPhone 上远程启动已安装的 iOS 应用程序?

  6. 6

    如何在Swift中启动iOS邮件应用程序?

  7. 7

    如何让 Java 程序从 iOS 应用程序中获取输入

  8. 8

    如何在Xcode(iOS)模拟器中手动安装应用程序

  9. 9

    如何在iOS中从我的应用程序获取所有消息传递应用程序列表

  10. 10

    如何在iOS应用程序中停止captureOutput

  11. 11

    如何在iOS应用程序中编辑PDF表单?

  12. 12

    如何在iOS应用程序中编辑PDF表单?

  13. 13

    如何在iOS应用程序中存储数据

  14. 14

    如何在多个应用程序中识别iOS设备?

  15. 15

    iOS如何在应用程序中打开WebView

  16. 16

    如何在iOS应用程序中停止captureOutput

  17. 17

    如何在iOS应用程序中创建多个列表

  18. 18

    如何在 iOS 应用程序中停止 GIF?

  19. 19

    iOS 如何在邮件应用程序中打开 PDF?

  20. 20

    如何在 Windows 10 中模拟 iOS 应用程序

  21. 21

    如何在我的应用程序中的IOS邮件,联系人,日历下获取“签名”

  22. 22

    如何在iOS(Safari)中获取mailto链接以打开Outlook应用程序?

  23. 23

    如何在iOS 10通知中获取应用程序状态?

  24. 24

    如何了解已启动的应用程序以及如何越狱iOS 7的详细信息

  25. 25

    检查如何安装iOS应用程序

  26. 26

    如何获取已安装或已删除应用程序的名称?

  27. 27

    获取ios 8中所有已安装应用程序的列表

  28. 28

    如何从iOS中的应用程序获取所有消息传递应用程序列表

  29. 29

    如何从自己的应用程序在iOS中获取邮件应用程序的通知?

热门标签

归档