[android] Added appearance stats for permissions fragment

This commit is contained in:
Dmitry Donskoy 2019-12-02 15:01:08 +03:00 committed by Arsentiy Milchakov
parent da83929bd8
commit fb759ef29c
2 changed files with 38 additions and 7 deletions

View file

@ -96,7 +96,7 @@ abstract class BasePermissionsDialogFragment extends BaseMwmDialogFragment
button.setOnClickListener(this);
button = content.findViewById(getContinueActionButton());
if (button != null)
button.setOnClickListener(this);
button.setOnClickListener(this::onContinueBtnClicked);
ImageView image = (ImageView) content.findViewById(R.id.iv__image);
if (image != null)
@ -111,6 +111,11 @@ abstract class BasePermissionsDialogFragment extends BaseMwmDialogFragment
return res;
}
protected void onContinueBtnClicked(View v)
{
PermissionsUtils.requestPermissions(requireActivity(), mRequestCode);
}
@DrawableRes
protected int getImageRes()
{
@ -144,13 +149,7 @@ abstract class BasePermissionsDialogFragment extends BaseMwmDialogFragment
public void onClick(@NonNull View v)
{
if (v.getId() == getFirstActionButton())
{
onFirstActionClick();
return;
}
if (v.getId() == getContinueActionButton())
PermissionsUtils.requestPermissions(getActivity(), mRequestCode);
}
protected int getRequestCode()

View file

@ -1,6 +1,10 @@
package com.mapswithme.maps.permissions;
import android.app.Dialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import androidx.annotation.DrawableRes;
import androidx.annotation.IdRes;
import androidx.annotation.LayoutRes;
@ -13,6 +17,8 @@ import androidx.fragment.app.FragmentActivity;
import androidx.fragment.app.FragmentManager;
import com.mapswithme.maps.R;
import com.mapswithme.maps.news.OnboardingStep;
import com.mapswithme.util.statistics.Statistics;
public class PermissionsDialogFragment extends BasePermissionsDialogFragment
{
@ -71,6 +77,7 @@ public class PermissionsDialogFragment extends BasePermissionsDialogFragment
protected void onFirstActionClick()
{
PermissionsDetailDialogFragment.show(getActivity(), getRequestCode());
sendStatistics(Statistics.EventName.ONBOARDING_SCREEN_DECLINE);
}
@IdRes
@ -80,6 +87,17 @@ public class PermissionsDialogFragment extends BasePermissionsDialogFragment
return R.id.accept_btn;
}
@NonNull
@Override
public Dialog onCreateDialog(Bundle savedInstanceState)
{
Dialog dialog = super.onCreateDialog(savedInstanceState);
if (savedInstanceState == null)
sendStatistics(Statistics.EventName.ONBOARDING_SCREEN_SHOW);
return dialog;
}
@Override
public void dismiss()
{
@ -95,4 +113,18 @@ public class PermissionsDialogFragment extends BasePermissionsDialogFragment
super.onCancel(dialog);
getActivity().finish();
}
@Override
protected void onContinueBtnClicked(View v)
{
super.onContinueBtnClicked(v);
sendStatistics(Statistics.EventName.ONBOARDING_SCREEN_ACCEPT);
}
private void sendStatistics(@NonNull String event)
{
String value = OnboardingStep.PERMISSION_EXPLANATION.toStatisticValue();
Statistics.ParameterBuilder builder = Statistics.params().add(Statistics.EventParam.TYPE, value);
Statistics.INSTANCE.trackEvent(event, builder);
}
}