Мне нужно получить подпись пакета. Поэтому я использую этот код:
Signature[] sigs = c.getPackageManager().getPackageInfo(c.getPackageName(),
PackageManager.GET_SIGNATURES).signatures;
Но Android Studio дает мне это предупреждение:
Чтение подписей приложений из getPackageInfo: сигнатуры приложений могут быть использованы, если они не были правильно проверены; см. описание проблемы для деталей. меньше... (Ctrl + F1) Неправильная проверка подписей приложений может привести к проблемам, когда вредоносное приложение отправляется в Play Store с его реальным сертификатом и поддельным сертификатом и получает доступ к функциям или информации, которые он не должен иметь из-за другого приложения, только проверяющего наличие поддельного сертификата и игнорируя остальных. Убедитесь, что все подписи возвращены этим методом.
Что означает подтверждение подписей в этом случае? Я собираюсь проверить подписи на сервере, чтобы убедиться, что они совпадают, это то, что они означают?
При локальном тестировании все эти выходы представляют собой один отрицательный Integer
, а не array
, поскольку код будет иметь его.