我目前正在尝试为AndroidTV / FireTV设置Charles Proxy服务,但是在res / xml / network_security_config.xml中指定证书颁发机构时遇到了问题
<network-security-config>
<debug-overrides>
<trust-anchors>
<!-- Trust user added CAs while debuggable only -->
<certificates src="@raw/my_ca" />
</trust-anchors>
</debug-overrides>
</network-security-config>
每次我尝试键入@raw时,我的IDE都会自动完成对appNs(应用程序名称空间)的访问。我尝试了无效/重新启动,清理/重建,添加appN,在gradle的sourceSets中指定raw,检查compileSDK / build工具(Error in configuring network security xml in android)的更新,但是该应用仍然拒绝解析我的资源。
编辑:尽管没有解析资源ID,但该应用仍会在运行时编译并崩溃,并显示以下错误:
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.my.package, PID: 29431
java.lang.RuntimeException: Unable to create application com.my.package.tv.ui.TVAppClass: java.lang.RuntimeException: Failed to parse XML configuration from network_security_config
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5881).
后跟...
Caused by: android.security.net.config.XmlConfigSource$ParserException: Unknown certificates src. Should be one of system|user|@resourceVal at: Binary XML file line #6
at android.security.net.config.XmlConfigSource.parseCertificatesEntry(XmlConfigSource.java:211)
at android.security.net.config.XmlConfigSource.parseTrustAnchors(XmlConfigSource.java:226)
at android.security.net.config.XmlConfigSource.parseConfigEntry(XmlConfigSource.java:280)
at android.security.net.config.XmlConfigSource.parseNetworkSecurityConfig(XmlConfigSource.java:350)
at android.security.net.config.XmlConfigSource.ensureInitialized(XmlConfigSource.java:101)
使用“系统”或“用户”值可以很好地运行,但是Charles的SSL代理无法正常工作。
设备元: