На данный момент я расширяю приложение, которое было разработано кем-то другим.
От клиента я получил исходный файл хранилища ключей, который использовался для публикации приложения в Play Store, включая необходимые пароли. Ранее я выдавал тестовые версии, которые были подписаны с использованием некоторого фиктивного ключа, который я сгенерировал для этой цели.
Я использую Eclipse Indigo с ADT для упаковки и подписи.
Странно то, что даже после создания подписанного пакета приложения с использованием официального ключа более старая тестовая версия с использованием фиктивного ключа переопределяется при установке. Если я попытаюсь установить приложение из Play Store, я получу второе приложение на свой телефон, точно так же, как если бы оно было подписано другим ключом.
Я попытался
keytool -printcert -file META-INF/CERT.RSA | egrep "^\s+MD5|^\s+SHA"
на содержимом моих собственных сгенерированных файлов apk и файлов apk из Play Store. Я получаю одинаковые хэши на собственном файле, подписанном официальным ключом, и на файле из Play Store. Файл, подписанный фиктивным ключом, приводит к другим хэшам, как я и ожидал.
Однако мой телефон (и тот, что у моего клиента) воспринимает оба apk-файла от меня как одно приложение, а версию из Play Store — как другое.
Есть ли что-нибудь еще, что идентифицирует приложение, кроме имени пакета и ключа, который использовался для его подписи? Я сейчас в замешательстве, если честно. Заранее спасибо за любую подсказку!