Les réponses acceptées ne fonctionnera que si vous êtes seuls des essais sur l'Émulateur ou sur quelques appareils, mais si vous testez sur une multitude d'appareils, vous pouvez avoir besoin de moyens de prorammatically ajoutant le dispositif de roulement de l'ID de l'appareil.
Le code suivant va rendre le fonctionnement actuel de l'appareil dans un adview dispositif de test par programmation
...
if(YourApplication.debugEnabled(this)) //debug flag from somewhere that you set
{
String android_id = Settings.Secure.getString(this.getContentResolver(), Settings.Secure.ANDROID_ID);
String deviceId = md5(android_id).toUpperCase();
mAdRequest.addTestDevice(deviceId);
boolean isTestDevice = mAdRequest.isTestDevice(this);
Log.v(TAG, "is Admob Test Device ? "+deviceId+" "+isTestDevice); //to confirm it worked
}
Vous devez utiliser le md5 de l'Android ID, et il doit être en majuscules. Ici est le md5 code que j'ai utilisé
public static final String md5(final String s) {
try {
// Create MD5 Hash
MessageDigest digest = java.security.MessageDigest
.getInstance("MD5");
digest.update(s.getBytes());
byte messageDigest[] = digest.digest();
// Create Hex String
StringBuffer hexString = new StringBuffer();
for (int i = 0; i < messageDigest.length; i++) {
String h = Integer.toHexString(0xFF & messageDigest[i]);
while (h.length() < 2)
h = "0" + h;
hexString.append(h);
}
return hexString.toString();
} catch (NoSuchAlgorithmException e) {
Logger.logStackTrace(TAG,e);
}
return "";
}