IT技术博客大学习 共学习 共进步

标签:Manifest

共 3 篇相关文章

IT 累计浏览 2

定位 Android 权限声明来源

在 Android 开发过程中,排查某个应用权限由哪个第三方依赖库引入是一个常见问题。本文介绍了一种通过 Gradle daemon 日志快速定位权限声明来源的方法。 Gradle daemon 是 Gradle 构建系统的后台进程,其日志文件(位于 ~/.gradle/daemon/ 目录)详细记录了依赖解析和 AndroidManifest.xml 合并过程。通过使用 grep 命令在这些日志中搜索特定权限字符串(如 "android.permission.INTERNET"),可以获取相关记录。查询结果通常能明确指出该权限在哪个依赖库的 AndroidManifest.xml 的哪一行被声明,并显示合并操作的日志行号。 根据日志信息,开发者可以确认权限来源。若需移除不需要的权限,可以在应用的主 AndroidManifest.xml 文件中使用 `` 来显式删除。需要注意的是,daemon 日志会随构建次数增加而变大,应定期清理,且不同 Gradle 版本的日志格式可能存在细微差别。

IT 累计浏览 17,000

HTML5 离线缓存-manifest简介

这篇讲的是如何用HTML5的Cache Manifest让网页在离线状态下也能访问。作者在将Painter项目中的离线缓存方案复用到其他项目时,发现有些生疏,于是系统梳理了这个技术,为自己也为大家做个记录。 文章从移动时代网络不稳定的痛点切入,解释了manifest文件的核心作用:它定义需要缓存的资源列表,让浏览器能将这些文件保存到本地。即使没网,也能继续浏览网站。这不仅能带来离线体验和更快的速度,还能减轻服务器压力。 文中详细拆解了manifest文件的三段式结构:必需的`CACHE`段明确要缓存哪些文件;可选的`NETWORK`段声明哪些资源必须联网获取;`FALLBACK`段则定义资源加载失败时的备用页面。文章也指出了一些关键注意事项,比如整个站点的同源限制、不同浏览器对缓存容量的不同上限,以及更新缓存的三种方式(更新manifest文件、JavaScript调用或清除浏览器缓存)。 对于需要缓存大量文件的项目,手动编写manifest文件容易出错,文章最后介绍了`grunt-manifest`这类自动化工具,可以通过构建任务自动生成manifest文件,解放生产力。

IT 累计浏览 3,440

HTML5本地存储初探(三)

这篇讲的是HTML5本地存储中文件缓存部分的实践。作者从实现文件本地存储的需求出发,引出了HTML5提供的核心机制——manifest清单文件。文章不仅说明了manifest本质上是一个纯文本文件,更关键地指出了其MIME类型必须为“text/cache-manifest”这一重要细节,这是浏览器能否正确识别和启用离线缓存的关键前提。 基于此,文章进一步探讨了如何通过编写清单文件,将需要缓存的资源文件列表明确告知浏览器。这种机制将缓存控制权从服务器部分转移到了客户端,为实现可靠的离线应用奠定了基础。作者的叙述直接聚焦于技术实现要点,对于正在学习或应用HTML5离线存储功能的开发者而言,厘清manifest文件的基本属性与作用,是迈向复杂应用开发的第一步。