Я использую следующий фрагмент кода для создания идентификатора рекламы Google по
if(AdvertisingIdClient.isAdvertisingIdProviderAvailable(MainActivity.this)){
ListenableFuture<AdvertisingIdInfo> advertisingIdInfoListenableFuture =
AdvertisingIdClient.getAdvertisingIdInfo(getApplicationContext());
Futures.addCallback(advertisingIdInfoListenableFuture, new FutureCallback<AdvertisingIdInfo>() {
@Override
public void onSuccess(@NullableDecl AdvertisingIdInfo result) {
String id = result.getId();
String packageProviderName = result.getProviderPackageName();
boolean isAdTrackingEnabled = result.isLimitAdTrackingEnabled();
tvdeviceid.setText(""+id);
Log.d("MY_APP_TAG", id);
}
@Override
public void onFailure(Throwable t) {
Log.e("MY_APP_TAG",
"Failed to connect to Advertising Id provider");
}
}, null);
} else {
Log.e("MY_APP_TAG", "Advertising client id is unavailable");
}
}
со следующими зависимостями в
dependencies {implementation fileTree (dir: 'libs', include: [' * .jar '])
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
implementation 'androidx.ads:ads-identifier:1.0.0-alpha01'
// Used for the calls to addCallback() in the snippets on this page.
implementation 'com.google.guava:guava:28.0-android'
}
Но он никогда не возвращает идентификатор объявления.
AdvertisingIdClient.isAdvertisingIdProviderAvailable(getApplicationContext()
вышеуказанное условие всегда возвращает false.