Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/195.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Facebook应用程序邀请:将活动参数传递到Play store_Android_Facebook_Google Play - Fatal编程技术网

Android Facebook应用程序邀请:将活动参数传递到Play store

Android Facebook应用程序邀请:将活动参数传递到Play store,android,facebook,google-play,Android,Facebook,Google Play,我正在使用Android的Facebook应用程序邀请。一切正常:我发送邀请,我在目标设备上收到邀请,我可以从谷歌Play安装应用程序 现在我想把用户的推荐代码传递给GooglePlay。我的想法是,当我的“朋友”安装应用程序时,他自动拥有我的推荐代码。我有我的BroadcastReceiver,它正在捕获Google活动参数 我有一个服务器端脚本,它生成如下简单代码: <html> <head> <meta property="fb:app_id" con

我正在使用Android的Facebook应用程序邀请。一切正常:我发送邀请,我在目标设备上收到邀请,我可以从谷歌Play安装应用程序

现在我想把用户的推荐代码传递给GooglePlay。我的想法是,当我的“朋友”安装应用程序时,他自动拥有我的推荐代码。我有我的BroadcastReceiver,它正在捕获Google活动参数

我有一个服务器端脚本,它生成如下简单代码:

<html>
<head>
    <meta property="fb:app_id" content="<MY_APP_ID>">
    <meta property="og:title" content="<APP_NAME>">
    <meta property="al:android:url" content="market://details?id=<PACKAGE_NAME>&amp;referrer=utm_source%3D<REF_CODE>">
    <meta property="al:android:app_name" content="<APP_NAME>">
    <meta property="al:android:package" content="<PACKAGE_NAME>">
</head>
<body>
    Redirect...
</body>
</html>
utm_source = apps.facebook.com
utm_content = {"app":0,"t":<SOME_NUMERIC_ID>}
utm_campaign = fb4a
我在2014年发现了一个类似的问题,但没有给出答案


因此,我的问题是,我如何通过Facebook应用程序邀请将自己的参数传递给Play Store,以及如何通过广播接收器接收该参数?

Facebook显示的移动应用程序安装广告始终覆盖Play Store链接/意图中的
referer
参数。你对此无能为力


你可以使用deferred将数据从Facebook传递到你的应用程序中,这一点也在讨论中。你不能使用Android或iOS的任何内置机制(如referer参数)来接收deferred deep link参数,因为Facebook控制着流量。此外,即使你可以,在Android上,安装推荐人有时可能需要几秒钟才能为Google Play交付,从而导致相当滞后的用户体验

Facebook有一个未经证明的机制,你可以在他们的广告和邀请产品的基础上构建自己的延迟深度链接解决方案。不幸的是,正如公认的答案所提到的,iOS应用程序邀请延迟深度链接已经完全中断。广告产品起作用

以下是技术流程:

  • 使用适当的深度链接创建应用程序邀请或安装广告,如下所示:
  • 新用户(无应用程序)单击应用程序邀请或应用程序安装广告
  • 新用户安装您的应用程序
  • 向该端点发出POST请求

  • https://graph.facebook.com/ 这一切都是为了您。

    不幸的是,如果应用程序未安装,我似乎无法获得深度链接。Facebook目前遇到延迟深度链接的问题。你可以订阅一个关于这个的bug报告
    AppInviteContent content = new AppInviteContent.Builder()
                            .setApplinkUrl("<SERVER_SCRIPT_URL>.php?referral="+ref_code)
                            .setPreviewImageUrl("<IMAGE>.png")
                            .build();
                    if (AppInviteDialog.canShow()) {
                        appInviteDialog.show(getActivity(), content);
                    }
    
    @Override
    public void onReceive(Context context, Intent intent) {
        Bundle extras = intent.getExtras();
        String referrerString = extras.getString("referrer");
        ...
    }