我正在尝试在Google Nexus 7平板电脑上安装此证书。
我已将证书文件(从Win7x64)复制到其内部存储中,并在文件管理器中将其打开以进行安装。此过程适用于证书的先前版本(现已过期)(在尝试安装新证书之前已在设备上将其删除)。
但是,对于此新证书,将出现以下消息:
无法安装,因为无法读取证书文件。
可以将同一文件完美地安装到我将平板电脑连接到的计算机上的各种证书存储中(因此,下载的文件没有损坏)。我多次将文件复制到平板电脑,然后再次尝试,结果始终相同(因此,复制的文件也很可能没有损坏)。
平板电脑最初使用的是Android 4.4.4,然后我升级到了Android 5.0.2。我在两个系统上都收到相同的错误消息。
到目前为止,负责提供证书的管理员尚未收到任何此类报告,并且该证书对于其他人在不同类型的Android设备上似乎可以完美安装。
我在网上找不到许多相关问题;搜寻错误消息很快导致指定该消息的本地化资源文件(通常,相对于在那里遇到错误消息的用户频率而言,这是一个不好的信号)。最有希望的联系似乎仍然是死胡同:
- 在论坛帖子中提到了该错误消息,但是对此的唯一反应似乎是hmm ...不确定该是什么。我会仔细研究一下(从2013年12月开始)。我找不到该问题的任何后续措施,该线程的其余部分似乎无关紧要。
- 从2014年3月开始,有一个公开的SO问题引用了相同的消息(尽管指的是“ Android Moto G”),但到目前为止,没有人提供答案。
因此,我的问题是:
- 错误消息实际上指向什么问题?
- 如何安装证书文件?
编辑:这是当我尝试在设备上的文件管理器应用中打开证书时发生的情况的日志输出:
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
其中的关键部分似乎是java.io.FileNotFoundException:/storage/emulated/0/Download/infcacert.crt:打开失败:EACCES(权限被拒绝)。我不明白该消息-我已经成功地将其他文件复制并打开到设备中,就像现在使用证书文件一样。此外,通过Windows资源管理器将这些文件权限复制到设备时,我还要如何适当设置这些文件权限?