使用AppsFlyer链接安装apk,但无法获得安装数量

时间:2020-04-14 08:48:17

标签: android appsflyer

我想使用AppsFlyer跟踪该用户将使用哪个链接下载并安装我的apk。

我的apk不会在GooglePlay上发布,而是会在其他平台上发布,因此我将我的apk暂时放在了Google驱动器上。

我在AppsFlyer中创建一个包含下载URL和SHA256密钥的 OneLink ,然后我使用此 OneLink 创建一个属性链接,用户可以使用属性链接到下载页面。

我可以看到每个属性链接的点击次数,但是安装次数始终为0,我真的使用属性链接来下载要安装的apk然后打开它。

我该如何解决,谢谢!

这是我的AndroidManifest:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.test.example">

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />

    <application
        android:name="com.test.example.AFApplication"
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>

            <intent-filter  android:autoVerify="true">
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <data android:scheme="https"
                    android:host="lsj.onelink.me"
                    android:pathPrefix="/gIzB" />
            </intent-filter>
        </activity>

    </application>

</manifest>

这是我的AFApplication:

package com.test.example;

import android.app.Application;
import android.util.Log;
import com.appsflyer.AppsFlyerLib;
import com.appsflyer.AppsFlyerConversionListener;
import java.util.Map;

public class AFApplication extends Application {

    private static final String AF_DEV_KEY = "mykey...";

    @Override
    public void onCreate() {
        super.onCreate();
        AppsFlyerConversionListener conversionListener = new AppsFlyerConversionListener() {

            @Override
            public void onConversionDataSuccess(Map<String, Object> conversionData) {
                for (String attrName : conversionData.keySet()) {
                    Log.d("LOG_TAG", "attribute: " + attrName + " = " + conversionData.get(attrName));
                }
            }

            @Override
            public void onConversionDataFail(String errorMessage) {
                Log.d("LOG_TAG", "error getting conversion data: " + errorMessage);
            }

            @Override
            public void onAppOpenAttribution(Map<String, String> conversionData) {
                for (String attrName : conversionData.keySet()) {
                    Log.d("LOG_TAG", "attribute: " + attrName + " = " + conversionData.get(attrName));
                }

            }

            @Override
            public void onAttributionFailure(String errorMessage) {
                Log.d("LOG_TAG", "error onAttributionFailure : " + errorMessage);
            }
        };
        AppsFlyerLib.getInstance().init(AF_DEV_KEY, conversionListener, getApplicationContext());
        AppsFlyerLib.getInstance().startTracking(this);
    }
}

1 个答案:

答案 0 :(得分:1)

您共享的AndroidManifest.xml片段中声明的软件包名称为com.test.example,这是实际的软件包名称吗?

问题可能是在AppsFlyer的信息中心上定义的包名称与实际的Android包名称(在AndroidStudio项目中定义)之间不匹配- 两者应该始终匹配。