blob: 785b52a8dcc29ebe05446bdc4a22e6be06163ae0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
package com.mapswithme.maps.ads;
import android.app.Dialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v7.app.AlertDialog;
import android.view.LayoutInflater;
import android.view.View;
import com.facebook.FacebookSdk;
import com.facebook.share.model.AppInviteContent;
import com.facebook.share.widget.AppInviteDialog;
import com.mapswithme.maps.R;
import com.mapswithme.maps.base.BaseMwmDialogFragment;
import com.mapswithme.maps.dialog.DialogUtils;
import com.mapswithme.util.statistics.Statistics;
public class FacebookInvitesDialogFragment extends BaseMwmDialogFragment
{
private static final String INVITE_APP_URL = "https://fb.me/958251974218933";
private static final String INVITE_IMAGE = "http://maps.me/images/fb_app_invite_banner.png";
private boolean mHasInvited;
@NonNull
@Override
public Dialog onCreateDialog(Bundle savedInstanceState)
{
final AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
final LayoutInflater inflater = getActivity().getLayoutInflater();
final View root = inflater.inflate(R.layout.fragment_app_invites_dialog, null);
return builder.setView(root)
.setNegativeButton(R.string.remind_me_later, new DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
Statistics.INSTANCE.trackEvent(Statistics.EventName.FACEBOOK_INVITE_LATER);
}
})
.setPositiveButton(R.string.share, new DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
mHasInvited = true;
showAppInviteDialog();
Statistics.INSTANCE.trackEvent(Statistics.EventName.FACEBOOK_INVITE_INVITED);
}
}).create();
}
@Override
public void onResume()
{
super.onResume();
if (mHasInvited)
dismiss();
}
@Override
public void onCancel(DialogInterface dialog)
{
super.onCancel(dialog);
Statistics.INSTANCE.trackEvent(Statistics.EventName.FACEBOOK_INVITE_LATER);
}
private void showAppInviteDialog()
{
FacebookSdk.sdkInitialize(getActivity());
AppInviteContent content = new AppInviteContent.Builder()
.setApplinkUrl(INVITE_APP_URL)
.setPreviewImageUrl(INVITE_IMAGE)
.build();
if (AppInviteDialog.canShow())
AppInviteDialog.show(this, content);
else
{
DialogUtils.showAlertDialog(getActivity(), R.string.email_error_title);
dismiss();
}
}
}
|