卡在 Android TV / Fire TV 的 Charles 代理证书安装中

use*_*435 5 android certificate ssl-certificate android-tv charles-proxy

我们最近开始在 Android TV 上工作,我们需要连接 charles 代理工具以简化开发过程。我们能够使用相同的 wifi 连接在电视上设置代理。

但是我们没有办法在 Android tv 中安装查尔斯可信证书。我们尝试了各种方法,但无法获得任何可行的方法:

  1. 我们尝试将证书推送到 android 电视,但无法安装保存在电视存储中的证书。

  2. 我们在 Android 手机中可用的高级 wifi 中找不到“安装证书”选项。我们在手机中使用此选项来安装保存在本地设备存储中的证书。

  3. 我们尝试设置代理,然后我们尝试在 chrome 上打开 www.charlesproxy.com/getssl 来下载和安装证书,但这种方法也不起作用。由于启用了代理,我们无法通过谷歌协助启动 Chrome。

  4. 我们尝试了 url 中提供的方法:

如何在没有用户交互的情况下以编程方式在 Android 上安装 CA 证书

但上述方法不起作用。这些命令给出了权限被拒绝的问题。我们不希望我们的 android 电视被扎根。

请帮助我们安装信任证书的方法。任何帮助将非常感激。!!

小智 5

我认为您可能已经解决了您的问题,但是对于仍在为此苦苦挣扎的其他人,您可以尝试:

  1. 从 Charles 应用程序导出证书。通常命名为“charles_ssl_proxying_certificate.pem”

  2. 将该证书作为原始文件添加到您的 android 项目中。(源/资源/原始)

  3. 创建一个新的资源文件夹“xml”(可能你已经有了)

  4. 创建一个名为“network_security_config.xml”的新 xml 文件

  5. 将此内容粘贴到该新文件中

    <network-security-config>
    <base-config>
        <trust-anchors>
            <certificates src="system" />
        </trust-anchors>
    </base-config>
    <debug-overrides>
        <trust-anchors> 
            <certificates src="@raw/charles_ssl_proxying_certificate"/>
            <certificates src="user" />
        </trust-anchors>
    </debug-overrides>
    </network-security-config>
    
    Run Code Online (Sandbox Code Playgroud)
  6. 将此行添加到您的 androidManifest 应用程序标记

    android:networkSecurityConfig="@xml/network_security_config"
    
    Run Code Online (Sandbox Code Playgroud)

如果您已经在 AndroidTV 上配置了代理,这应该就足够了


Fra*_*isi -2

听起来您尚未将应用程序配置为信任 Charles 生成的 SSL 证书 - 请参阅SSL 证书指南中的Android部分。