ti-enxame.com

Como assinar o aplicativo Android com assinatura do sistema?

Fiz o download e compilei a versão Android 2.1 com a imagem signed-google_ion-ota-14721.Zip para o meu telefone HTC. A compilação foi concluída com êxito e, portanto, a imagem do sistema pisca. Como assinar meu próprio aplicativo Android com a assinatura do sistema?

Alguém pode descrever todo o processo para assinar um aplicativo de usuário com assinatura do sistema, pois sou completamente novo no processo de assinatura.

67
Michalis

Finalmente, consegui descobrir uma maneira de assinar meu aplicativo com a assinatura da plataforma. Você precisa usar as chaves localizadas em <root-of-Android-source-tree>/build/target/product/security/ e adicionar Android:sharedUserId="Android.uid.system" no seu arquivo AndroidManifest.xml.

Detalhes de este tópico do Google Groups :

Além de assinar Android 1.6 para Dream com certificados gerados por mim, também consegui assinar meu aplicativo com o certificado da plataforma e executá-lo com o sistema sharedUserId. Estes são os passos que tomei:

  • Crie e atualize para o seu sonho o seu próprio Android usando https://web.archive.org/web/20081211205758/http://source.Android.com:80/documentation/building- por sonho . Use o script mkkey.sh em https://web.archive.org/web/20091213215940/http://pdk.Android.com/online-pdk/guide/release_keys.html para criar novos certificados, incluindo certificados x509 antes de fazer 'make'.
  • No AndroidManifest.xml do seu aplicativo: no elemento <manifest>, adicione o atributo Android:sharedUserId="Android.uid.system".
  • Exporte uma versão não assinada do seu aplicativo Android usando o Eclipse: clique com o botão direito do mouse no projeto >> Android Ferramentas >> Exportar Pacote de Aplicativos Não Assinados.
  • Use <root-of-Android-source-tree>/out/Host/<your-Host>/framework/signapk.jar para assinar seu aplicativo usando platform.x509.pem e platform.pk8 em <root-of-Android-source-tree>/build/target/product/security gerado anteriormente:

    Java -jar signapk.jar platform.x509.pem platform.pk8 YourApp-unsigned.apk YourApp-signed.apk.
    
  • Instale o aplicativo no seu dispositivo:

    adb install YourApp-signed.apk
    
  • Execute seu aplicativo
  • Use adb Shell ps para confirmar que seu aplicativo está sendo executado como sistema.
112
Michalis

O procedimento funciona bem, eu tentei. Desde que você não se esqueça de executar o zipalign após a assinatura, pois os processos de assinatura deixam o APK desalinhado e NÃO será instalado. Você precisará instalar o APK alinhado.

zipalign -fv 4 YourApplication-signed.apk YourApplication-aligned.apk
10
user2478124