Zip*_*ppy 3 android admob google-admob cookieconsent
我对 AdMob 的新“同意 SDK”有疑问;该集成指南说,到把下列的onCreate ...
public class MainActivity extends Activity {
...
@Override
protected void onCreate(Bundle savedInstanceState) {
...
ConsentInformation consentInformation = ConsentInformation.getInstance(context);
String[] publisherIds = {"pub-xxxxxxxxxxxxxxxx"};
consentInformation.requestConsentInfoUpdate(publisherIds, new ConsentInfoUpdateListener() {
@Override
public void onConsentInfoUpdated(ConsentStatus consentStatus) {
// User's consent status successfully updated.
}
@Override
public void onFailedToUpdateConsentInfo(String errorDescription) {
// User's consent status failed to update.
}
});
...
}
...
}
Run Code Online (Sandbox Code Playgroud)
然后拨打以下电话:
ConsentInformation.getInstance(context).isRequestLocationInEeaOrUnknown()
Run Code Online (Sandbox Code Playgroud)
我遇到的问题是,当应用程序第一次安装/启动,isRequestLocationInEeaOrUnknown()总是返回“假”(我是在欧洲经济区的方式)。
如果我然后退出应用程序并重新启动它,它会返回“true” - 这是正确的。如果我然后进入我的设备设置并在我的应用程序上执行“清除数据”并重新启动它,它再次返回“false”。
显然,这令人担忧,因为我向 EEA/瑞士用户展示了我自己的自定义同意对话框,而不是 ROW。这需要在首次发布时发生。
有趣的是,我尝试将调用isRequestLocationInEeaOrUnknown()放在我的 AsyncTask 的doInBackground方法中(我在 onCreate 中关闭了这个ASync),然后它在第一次启动时确实返回了“true”,就像在 ASync 的“onPostExecute”中对它的调用一样方法。只是在 onCreate 中调用它不会(在异步启动之前或之后)。
我知道现在还为时尚早,但是有没有人偶然发现过类似的问题?
您必须isRequestLocationInEeaOrUnknown()在onConsentInfoUpdated 调用回调后调用。
该值由 异步检索requestConsentInfoUpdate(),因此它在第一次启动时不正确,但它随后被缓存,因此在第二次启动时您有正确的值。
| 归档时间: |
|
| 查看次数: |
2222 次 |
| 最近记录: |