核对构建上下文
源码里的 uses-sdk 可能被 Gradle 覆盖,依赖库也可能贡献权限。发布前应读取合并清单或成品解码结果。摘要保留 @string/app_name 和占位符,看到这些值时,说明还需要相关资源或构建配置才能确定最终行为。
Android 开发工具
粘贴文本 XML,停顿 350 毫秒后自动分析;关闭自动模式后,可点击分析或按 Ctrl/Cmd+Enter。
粘贴文本版 AndroidManifest.xml,或载入示例。
XML 在当前浏览器标签页中处理,不会上传。
粘贴文本版 AndroidManifest.xml,或载入示例。
排查一次安装失败时,问题可能藏在某个带 intent-filter 的组件里;核对权限时,又需要分清应用请求了什么、定义了什么。AndroidManifest 查看把这些声明整理成结构化摘要,保留源行号和所属关系,便于回到原文逐项核对。
如果想了解某个源码文件,就粘贴该文件;如果想核对实际构建,请先取得合并后的或已解码的清单。Android Manifest 格式化能改善部分紧凑节点的层级,但不能补上 Gradle 或资源文件里尚未提供的信息。
AndroidManifest 查看区分 uses-permission 的权限请求与 permission 的权限定义,再按类型列出组件。一个 Activity 里的两个 intent-filter 会各自保留 action、category 和 data,启动入口与网页链接声明不会被揉成一条。遇到陌生权限时,先看它是哪种声明,再判断应该去哪里核查。
组件导出规则与目标 SDK 有关。数值条件明确满足时,缺少 exported 会进入错误列表;目标值未知时,只给出条件提示。每条结果附源行号,可直接定位。debuggable 明确为 true 提醒你核对发布构建,不会把一份无提示清单包装成安全认证。
源码里的 uses-sdk 可能被 Gradle 覆盖,依赖库也可能贡献权限。发布前应读取合并清单或成品解码结果。摘要保留 @string/app_name 和占位符,看到这些值时,说明还需要相关资源或构建配置才能确定最终行为。
自动模式在输入或缩进变化后等待 350 毫秒;关闭后支持 Ctrl/Cmd+Enter 手动分析。等待期间旧结果不能复制或下载。仅切换摘要、XML 或 JSON 视图不会更改原输入,也不会重新计算。
摘要视图的复制与 JSON 视图相同,都会取得完整 JSON 报告,并非只复制屏幕上显示的前 50 条。XML 视图复制格式化文本。载入示例或清空前会展示替换预览和字符数量,应用后可撤销一次,同时恢复输入与结果。
集中查看 manifest、uses-sdk 和 application 属性。缺失的字段保持未声明,资源引用保持原样。相对组件名不会根据 package 自动扩展,因为真实类名还受 Gradle namespace 影响;报告不会补出未提供的配置。
提取 uses-permission、uses-permission-sdk-23 和 permission,并保留 maxSdkVersion、protectionLevel 等实际属性。组件包括 activity、activity-alias、service、receiver 和 provider,范围是 application 的直接子节点,重复声明不会被静默去重。
检查 application 数量、组件或权限缺少 name、最小 SDK 大于目标 SDK、过滤器缺少 action、android 前缀绑定错误等问题。目标数值至少为 31 时,检查带过滤器的 Activity、别名、服务和接收器是否缺少 exported;Provider 不套用此条件。
缩进可选 2 或 4 个空格,只为没有直接文本的容器补充层级。摘要各类列表每次多显示 50 条;完整导出不受显示数量限制。JSON 包含原始属性、源行号、过滤器所属组件和诊断项,XML 保留已有内容。
APK 里的 AndroidManifest.xml 通常经过二进制 AXML 编码,不是普通文本 XML。可先用 Android Studio 的 APK 分析器,或 apkanalyzer manifest print 取得文本,再粘贴到本页。将 APK 后缀改成 ZIP 只能看到文件,不能完成解码。
目标为 Android 12 及以上时,带 intent-filter 的 Activity、服务和广播接收器需要明确声明 exported。本页也检查 Activity 别名;仅在输入目标 SDK 是至少为 31 的数值时报告缺失错误。目标未知时保留条件提示,具体应填 true 还是 false 由组件用途决定。
uses-permission 声明应用请求使用某项权限;permission 定义一项权限,可用来保护组件或操作。报告把它们分成不同类型。清单里的声明无法说明用户在设备上实际授予了哪些运行时权限。
依赖库、产品变体或其他源集都可能在合并时添加声明。本页只能列出当前文档,无法从单个合并结果追溯每一项的来源。请在 Android Studio 的 Merged Manifest 视图或合并报告中查看贡献该节点的文件。
minSdkVersion 表示安装所需的最低 API 级别,targetSdkVersion 表示应用面向的平台行为版本。这里显示的是输入中的原始值;Gradle 可以提供或覆盖它们。判断发布包的兼容性时,应核对最终构建,并继续做设备测试。
发现提取或定位结果不准确?