blob: 2319c28e92a3bcc8d0df7388724e66a1eadda3d4 (
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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
|
package com.mapswithme.maps.ads;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.view.View;
import android.widget.ImageView;
import com.facebook.ads.AdListener;
import com.facebook.ads.NativeAd;
class FacebookNativeAd extends CachedMwmNativeAd
{
@NonNull
private final NativeAd mAd;
FacebookNativeAd(@NonNull NativeAd ad, long timestamp)
{
super(timestamp);
mAd = ad;
}
FacebookNativeAd(@NonNull NativeAd ad)
{
super(0);
mAd = ad;
}
@NonNull
@Override
public String getBannerId()
{
return mAd.getPlacementId();
}
@NonNull
@Override
public String getTitle()
{
return mAd.getAdTitle();
}
@NonNull
@Override
public String getDescription()
{
return mAd.getAdBody();
}
@NonNull
@Override
public String getAction()
{
return mAd.getAdCallToAction();
}
@Override
public void loadIcon(@NonNull View view)
{
NativeAd.downloadAndDisplayImage(mAd.getAdIcon(), (ImageView) view);
}
@Override
public void unregister(@NonNull View view)
{
mAd.unregisterView();
}
@Override
void register(@NonNull View view)
{
mAd.registerViewForInteraction(view);
}
@NonNull
@Override
public String getProvider()
{
return Providers.FACEBOOK;
}
@Nullable
@Override
public String getPrivacyInfoUrl()
{
return mAd.getAdChoicesLinkUrl();
}
@Override
void detachAdListener()
{
mAd.setAdListener(null);
}
@Override
void attachAdListener(@NonNull Object listener)
{
if (!(listener instanceof AdListener))
throw new AssertionError("A listener for Facebook ad must be instance of " +
"AdListener class! Not '" + listener.getClass() + "'!");
mAd.setAdListener((AdListener) listener);
}
@NonNull
@Override
public NetworkType getNetworkType()
{
return NetworkType.FACEBOOK;
}
}
|