Согласно Правилам программы Google Play для разработчиков , разработчик
- Не должен начинать сбор личных или конфиденциальных данных до получения положительного согласия;
В настоящее время мы отслеживаем установку пользователей с использованием трех различных сторонних сервисов: Branch.io, Mixpanel и AppsFlyer. У меня BroadcastReceiver
зарегистрировано на моем AndroidManifest.xml
<receiver
android:name="org.example.InstallListener"
android:exported="true">
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
Код для BroadcastReceiver выглядит следующим образом:
public class InstallListener extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// Mixpanel
InstallReferrerReceiver mixpanelReferrerTracking = new InstallReferrerReceiver();
mixpanelReferrerTracking.onReceive(context, intent);
// Branch.io
InstallListener branchIoReferrerTracking = new InstallListener();
branchIoReferrerTracking.onReceive(context, intent);
// AppsFlyer
SingleInstallBroadcastReceiver appsFlyerReferrerTracking = new SingleInstallBroadcastReceiver();
appsFlyerReferrerTracking.onReceive(context, intent);
}
}
Это основано на руководстве от AppsFlyer для регистрации нескольких трекеров установки.
Теперь возникает вопрос: если мы соблюдаем приведенную выше политику Google Play, как мы можем получить согласие пользователя, прежде чем отправлять данные о реферерах в сторонние библиотеки?
Насколько я понимаю, com.android.vending.INSTALL_REFERRER
передается и принимается BroadcastReceiver
при установке из Google Play, поэтому я думаю, что это может произойти в любое время, прежде чем я даже смогу запустить диалоговое окно с запросом согласия пользователя.
Также верно, что данные отслеживания установки являются частью личных или конфиденциальных данных, на которые ссылается политика?
Одним из решений, которое мы рассматриваем, является сохранение дополнительного referrer
от намерения до SharedPreferences
после получения трансляции, а затем забрать его оттуда, как только мы получим согласие пользователя, и только затем передать его третьему партийные трекеры. Будет ли это решение правильным?