В эмуляторе значения IMEI и IMSI равны в жестком коде :
2325 { "+CIMI", OPERATOR_HOME_MCCMNC "000000000", NULL }, /* request internation subscriber identification number */
2326 { "+CGSN", "000000000000000", NULL }, /* request model version */
, поэтому вы всегда получите null
.
Если вы все еще хотите использовать эти идентификаторы для тестирования, и вы хотите сохранить один и тот же код для эмулятора и реального устройства, вы должны как-то изменить его в эмуляторе.
Есть как минимум два способа сделать это:
Изменить значения в коде и перекомпилировать код для эмулятора.Однако это может быть слишком сложно и отнимает много времени ...: -)
«Взломать» двоичный файл эмулятора (поскольку он не сжат и не зашифрован - вы можете это сделать!) Иизмените строки (в нужном месте) прямо здесь.
Вот как это сделать:
сделайте резервную копиюЭмулятор бинарный (откатиться! позже).В Windows двоичный файл можно найти под именем «emulator.exe», который находится в папке «\ tools» вашего android.
, откройте двоичный файл с помощью вашего любимого шестнадцатеричного редактора
поиск строки + CGSN , за которой следует нулевой байт (за ним должны следовать 15 цифр номера IMEI - см. Экран печати ниже)
отредактируйте номер (будьте осторожны, чтобы не изменить исходное число цифр)
исохраните файл!
и, возможно, измените / настройте свой код, чтобы использовать IMEI для своего идентификатора (как указывает Falmari
), или используйте этот трюк для изменения некоторых других значений.