Estou tentando instalar este certificado em um tablet Google Nexus 7 .
Copiei o arquivo de certificado (do Win7x64) para seu armazenamento interno e o abri em um gerenciador de arquivos para instalá-lo. Este procedimento funcionou para a versão anterior (agora expirada) do certificado (que eu removi no dispositivo antes de tentar instalar o novo).
No entanto, para este novo certificado, a seguinte mensagem aparece:
Não foi possível instalar porque o arquivo de certificado não pôde ser lido.
O mesmo arquivo pode ser instalado perfeitamente em vários armazenamentos de certificados no computador ao qual eu conectei o tablet (portanto, o arquivo baixado não está corrompido). Copiei o arquivo várias vezes para o tablet e tentei novamente, sempre com o mesmo resultado (portanto, o arquivo copiado provavelmente também não está corrompido).
O tablet tinha o Android 4.4.4 no começo e depois atualizei para o Android 5.0.2. Estou recebendo a mesma mensagem de erro nos dois sistemas.
Os administradores responsáveis por fornecer o certificado não haviam recebido nenhum relatório até agora e o certificado parecia ter sido instalado perfeitamente para outras pessoas em dispositivos Android de diferentes tipos.
Não consegui encontrar muitos problemas relacionados na web; pesquisar rapidamente a mensagem de erro levou rapidamente aos arquivos de recursos de localização que especificam essa mensagem (geralmente um sinal ruim com relação à frequência de usuários por aí para encontrar uma mensagem de erro). Os links mais promissores ainda parecem ser becos sem saída:
- A mensagem de erro é mencionada em uma postagem no fórum , mas a única reação a ela parece ser hmm ... não tenho certeza do que é isso. Vou analisar o assunto (a partir de dezembro de 2013). Não consegui encontrar nenhum acompanhamento para esse problema, e o restante do tópico parece ser uma conversa não relacionada.
- Há uma pergunta aberta do SO que cita a mesma mensagem (embora se refira a algo chamado "Android Moto G") de março de 2014, mas ninguém forneceu uma resposta até agora.
Portanto, minhas perguntas são:
- Para qual problema a mensagem de erro aponta?
- Como posso instalar o arquivo de certificado?
EDIT: Aqui está a saída de log do que acontece quando tento abrir o certificado em um aplicativo gerenciador de arquivos no dispositivo:
I/ActivityManager( 540): START u0 {act=android.intent.action.VIEW dat=file:///storage/emulated/0/Download/infcacert.crt typ=application/x-x509-ca-cert flg=0x10000000 cmp=com.android.certinstaller/.CertInstallerMain} from uid 10083 on display 0
E/ActivityManager( 540): Invalid thumbnail dimensions: 720x720
I/ActivityManager( 540): Start proc com.android.certinstaller for activity com.android.certinstaller/.CertInstallerMain: pid=11644 uid=10008 gids={50008, 9997} abi=armeabi-v7a
E/CertInstaller(11644): Failed to read certificate: java.io.FileNotFoundException: /storage/emulated/0/Download/infcacert.crt: open failed: EACCES (Permission denied)
D/OpenGLRenderer(11644): Render dirty regions requested: true
D/Atlas (11644): Validating map...
I/Adreno-EGL(11644): <qeglDrvAPI_eglInitialize:410>: QUALCOMM Build: 10/28/14, c33033c, Ia6306ec328
I/OpenGLRenderer(11644): Initialized EGL, version 1.4
D/OpenGLRenderer(11644): Enabling debug mode 0
I/ActivityManager( 540): Displayed com.android.certinstaller/.CertInstallerMain: +362ms (total +453ms)
V/RenderScript(11644): Application requested CPU execution
V/RenderScript(11644): 0xa330c400 Launching thread(s), CPUs 4
D/TaskPersister( 540): removeObsoleteFile: deleting file=7_task.xml
D/TaskPersister( 540): removeObsoleteFile: deleting file=7_task_thumbnail.png
A parte crucial da qual parece ser java.io.FileNotFoundException: /storage/emulated/0/Download/infcacert.crt: open falhou: EACCES (permissão negada) . Não entendi esta mensagem - copiei e abri com êxito outros arquivos no dispositivo da mesma maneira que fiz agora com o arquivo de certificado. Além disso, como eu definiria essas permissões de arquivo de maneira apropriada ao copiá-las para o dispositivo via Windows Explorer?
fonte
Respostas:
Só tive o mesmo problema.
Ir para
Settings
>Security
>Install from storage
.Localize o seu arquivo de certificado e instale-o.
Editar:
se
Install from storage
você tem preferênciaInstall from SD card
(emvez dapreferência), quando é usado o emulador API-19, por exemplo), é necessário executar uma etapa extra. Porque, neste caso, a atividade mostra apenasRecent
eDownloads
menus sem uma maneira simples de escolher o certificado no sdcard.A solução alternativa para mim foi colocar o certificado no servidor da Web local da área de trabalho ( mangusto, por exemplo). Então (no emulador), usei o navegador de ações para abrir o diretório da web, toquei no certificado (veja abaixo) e selecionei
Save link
. O arquivo será baixado e mostrado na visualização Downloads e você poderá selecioná-lo com sucesso.fonte
Outra ressalva: ao instalar um certificado em Configurações> Segurança> Instalar a partir do armazenamento no meu Nexus 7, Android 5.0.2, tive que navegar para o arquivo via Armazenamento Interno :
Tentando selecionar o arquivo através do atalho para downloads que não funcionam.
fonte