Недавно я столкнулся со странной проблемой в пользовательской сборке Android? У меня было рабочее ПЗУ в течение нескольких месяцев, и с помощью этого ПЗУ я смог установить apks, подписанные платформой, в пользовательское пространство (/data/app). Недавно, после восстановления ПЗУ, я не смог установить те же apks. Любая попытка установить приложение, подписанное платформой (будь то через установку adb или установку pm), приводит к следующему сообщению:
Failure [INSTALL_FAILED_INVALID_INSTALL_LOCATION]
Покопавшись в исходниках Android, я нашел следующий соответствующий блок кода:
if ((compareSignatures(pkg.mSignatures, s1) == PackageManager.SIGNATURE_MATCH)) {
Slog.w(TAG, "Cannot install platform packages to user storage");
mLastScanError = PackageManager.INSTALL_FAILED_INVALID_INSTALL_LOCATION;
return null;
}
Судя по моему чтению, установка системных приложений в пространстве пользователя никогда не должна была разрешаться. Был ли первоначальный случай, когда установка системных приложений в пространстве пользователя была аномалией? Можно ли устанавливать приложения с подписью платформы в пространстве пользователя, и если да, то как это сделать?
make clobber
в исходниках, что-то там пошло не так... :\ - person t0mm13b   schedule 05.01.2013