启动页换图
换启动页的翻车,十有八九是素材问题,不是工具问题

启动页换图:素材交对了,这件事就是一句话

在所有改包需求里,「换启动图」是听起来最容易的一个:图有了,扔进去,替换掉,收工。但实际操作中最常见的结果是三种:换完开机还是旧图、图换了但被拉得又扁又长、只有某个分辨率的机器上是清楚的,换台手机就糊了。

这些问题几乎都出在同一个环节——素材:图是什么用途、放到哪一类资源里、给几个尺寸、比例按什么来。没交代清楚,执行方就只能替你猜,猜错的表现就是上面三种。

下面按「先分清对象、再规范素材、然后交图写需求、最后打包验证」的顺序走一遍。整套流程走完,你会发现真正需要动手写的东西其实只有几行字。

一句话结论:启动页换图的成败,多半在打开打包按钮之前就决定了——取决于你交的图对不对、说明写没写清。

一、先分清:启动图与启动页背景不是一回事

很多人说的「启动页」,在技术上是两层东西叠出来的。第一层是主题背景,它在应用界面开始绘制之前就显示,作用是避免启动瞬间出现白屏或黑屏;第二层是应用自己实现的启动页内容,通常是一张主视觉图、一行品牌文字,甚至一段动画。冷启动时你看到的画面,是先看到第一层,再被第二层覆盖上去。

对比项 启动图(应用自绘的启动内容) 启动页背景(主题属性)
本质 一张图片资源,由启动页面显示 主题里的背景设置,可以是纯色,也可以是图片或组合图形
典型位置 图片资源目录与启动页面的布局引用 主题与样式定义文件里的窗口背景项
生效时机 启动页绘制出来之后 启动页绘制之前,最先出现的那一层
典型现象 停留时间较长,能被看清,常带品牌元素 一闪而过,或表现为「先白一下 / 先黑一下」

分清这两层的意义在于:它们经常被一起换成同一套视觉,但改法完全不同。只换启动图,常见的后果是背景那一层还露着旧颜色,冷启动时会先闪一下旧画面;只换背景,则可能出现「启动瞬间是新的,一晃又变成旧的」。

自查方法:在真机或模拟器上冷启动几次,盯着第一屏看。如果有一闪而过的颜色或图案先出现,那多半是启动页背景;随后稳定显示的那张图,才是应用自绘的启动图。

二、素材规范:尺寸、比例、密度与安全区

素材规范说到底只关心一件事:这张图在目标设备上会不会变形。要不变形,比例得对得上、分辨率得够用。

密度档 基准倍率 竖屏常见分辨率参考 用在哪
mdpi 1x 320 × 480 左右 老旧小屏设备
hdpi 1.5x 480 × 800 左右 早期主流机型
xhdpi 2x 720 × 1280 左右 入门到中端机型
xxhdpi 3x 1080 × 1920 左右 目前最常见的档位
xxxhdpi 4x 1440 × 2560 左右 高分辨率大屏机型

关于比例,主流手机大致落在 9:16 到 9:20 之间,越新的机器越「长」。这就带来一个现实问题:一张图要适配各种屏幕,比例不可能处处完美。稳妥的做法是——按较长的比例(比如 9:20)出图,把画面主体放在中间偏上的安全区,上下留出可裁切的余量;需要裁切时优先裁掉纯色或重复纹理区域,而不是主体。

  • 安全区:上下各留约 10% 的空白,避免关键元素被状态栏或虚拟导航栏压住。
  • 别指望拉伸:把 16:9 的图硬塞进 9:20 的屏幕,要么被拉长,要么两侧留黑边。
  • 尽量给大图:工具在处理图标素材时是按最高密度挑选的(解析结果里的 65534 是「任意密度」的哨兵值,不会挑到小图)。你自己交启动图时也应该往「高密度优先」这个方向准备,宁可给大一点让程序缩,别给小的让它放。
  • 格式与体积:有透明需求用 PNG,照片类用 JPG;单张图的体积尽量克制,图越重,最终包体越大、回编也越慢。
  • 文件命名:用可读的名字,比如「启动页主图_9x20_1440x2560.png」,别用「1.png」「新建图片.png」。
素材规范
按长比例出图、主体居中、上下留余量,是素材阶段最省事的三件事

还有一个容易被忽略的准备动作:对照图。把你希望换完之后的样子先做成一张效果图(哪怕是用图片软件拼一下),一起作为附件交上去。文字里写「换成新的品牌主视觉」是一回事,让对方看到主体在屏幕上的位置与占比是另一回事,后者能省掉一轮返工。

三、把图交给工具:附件的标准写法

在智改工坊里,素材是通过附件交给 AI 的:点「选择附件」可以一次挑多个文件,并且要给每个文件写一句「它是干什么用的」。这一步不是走过场——工具会校验两件事:文件现在能不能用(存在、不是目录、不是 0 字节、能读出来),以及说明是否不少于 10 个字。全部通过后,会拼成「序号. 文件路径 —— 用途说明」的形式,跟着需求一起发给 AI。

为什么说明必须写到 10 个字以上?因为「启动图」这三个字对执行方没有信息量,而「启动页主图 1440×2560,冷启动第一屏」说明了它在流程里的位置和规格。我们用几个例子对比一下:

写法 问题 建议写法
「图片」「素材」 不足 10 字,且没有任何规格信息 启动页主图,xhdpi 档位,按原比例替换
「新的启动图」 没说尺寸、没说比例、也没说用在启动页还是背景 启动页主图新版,1440×2560,主体居中,替换旧图
「背景」 容易被理解成任意背景 启动页背景用的纯色底图,冷启动第一层显示

换启动页这种需求,一次把素材交齐是最省事的组合:新版主图(高密度)、启动页背景色或背景底图、期望效果的对照图、以及一张改前的启动页截图。四样东西、四句说明,就能把「换成什么样」讲清楚。注意一点:需求原文会进 history.ini 作为历史,而附件说明不进历史——也就是说,下次想「照上次那条再改一遍」,附件与说明需要重新交一次。

写完附件说明后自查一句:只看这句话,能不能判断出「它是哪一层、什么规格、替换谁」。三问都能答上,就不用再补充了。

四、需求怎么写:把素材串成一句话

素材交齐之后,需求本身其实很短。还是那五件事,换成启动页场景就是:

  • 要做什么:把启动页主视觉替换成附件里的新图,同时把启动页背景改成同一套配色。
  • 细节要求:按原比例替换,不要拉伸;主体居中;如果有圆角或描边,按原样式保留。
  • 参数参考:新图规格写在附件说明里(尺寸、比例、放在哪一层)。
  • 范围:只改启动页相关资源,桌面图标、其它界面与功能都不动。
  • 验收:冷启动后启动页显示新图,无拉伸、无黑边;背景层不再闪出旧画面。
可以直接照抄的需求示例:
「请把启动页换成附件里的新素材:用附件 1 的图替换启动页主视觉,按原比例缩放,不要拉伸;用附件 2 的颜色替换启动页背景,冷了启动时第一层不要再闪出旧画面;附件 3 是期望效果对照图,供参考。启动页原有文字与其它元素保持不动,桌面图标与其它界面都不要改。验收:冷启动后第一屏是新图,比例正常无黑边,连续启动 3 次表现一致。」

写不出手感的话,先去话术库找一条相近的:内置 6 大分类共 3000 条成型指令,每条都把「要做什么、细节要求、参数参考、范围、验收」写全;换成启动图这类需求通常能在「界面美化」分类下找到模板,点「选择」填进输入框、点「复制」复制正文,改两句就能用。话术库内容来自程序目录下的 Resources\话术库.xml,可以自己补充条目,改完点刷新重新读取。

点下「立刻修改」之后,需求原文与修改日期会写进 history.ini,需求送进右侧 AI 窗口执行;AI 改完会在项目目录留下标志文件 ai_done.flag,主窗口每 2 秒轮询一次,读到就自动弹出打包窗口。

需求写法
素材用附件交,需求用五段写,是这类改动最稳的组合

五、打包时会被动到的文件与出包产物

启动页改动会牵涉到资源与主题定义,所以出包环节值得多知道几句:

  • 打包按四步走:回编(apktool b)→ 对齐(zipalign -p 4)→ 签名(apksigner,配合工作目录根目录下可替换的 testkey.pk8 与 testkey.x509.pem)→ 校验(apksigner verify)。
  • 产物与日志:三个文件分别落在 build 目录下的 unsigned.apk、aligned.apk、signed.apk,全过程写进项目目录的 pack.log;打包过程中窗口不给关,避免误以为没在跑,跑完可以「保存 APK」或「打开所在文件夹」,保存默认名是 应用名_版本号_signed.apk。
  • 反编译环节:失败不影响项目本身(配置、图标、源包都已落地),程序会提示原因并给出 apktool.log 的路径。实测 12MB 的包反编译约 3 秒;超过 10 分钟会中断并报错。因此别交超大图——图越重,回编越慢,包体也越大。
看到一个东西别慌:每次出包前,工具会自动往 res/values/styles.xml 写入一个 name="info" 的样式,内容是把时间、登录账号、机器码、机器名、系统用户名、程序版本、应用名、包名等编码后的标记。换启动页背景本来就要经过主题与样式文件,翻到它属于正常现象,不是改动引入了脏内容。

六、打包后验证:从装机到冷启动的观察清单

换图这类改动,验证的重点是「看」。建议按这张清单逐项过:

检查项 怎么做 通过标准
第一屏 冷启动后盯住启动页看几秒 显示的是新图,主体位置与对照图一致
背景层 从点图标开始看第一帧 不再闪出旧颜色或旧图案
比例 对比原图与屏幕上的显示 没有拉伸、没有黑边或白边
清晰度 在至少两种分辨率的设备或模拟器上看 高密度屏上不糊、不出现明显锯齿
多场景 连续冷启动 3 次;有暗色模式的应用再切一次深色模式 每次都一致,没有时好时坏
装机确认 启动后用 dumpsys 看一眼前台应用 前台就是本应用,启动没有被改动破坏

设备侧不用自己折腾:打包后可以直接自动运行,用 adb 找到手机或模拟器,把新包装上并拉起应用;拉起用的是 am start,应用起来后可以用 dumpsys 看一眼前台应用是不是它。启动组件名有三档查找——先读项目 config.ini 里的 LaunchableActivity,读不到就问设备 resolve-activity,再不行退回 monkey。手机可以通过 scrcpy 投屏到电脑上;模拟器会被提到最前面。常见国内模拟器(雷电 / MuMu / 夜神等)出现「装了但 adb 没连上」时会自动扫端口连上,模拟器装了没开还会搜出安装路径问你要不要帮你打开,设备没授权则提示你去手机上点「允许 USB 调试」。

打包后验证
第一屏、背景层、比例、清晰度,一项一项看,别凭印象

如果验证没过,八成是下面这几种情况,对症处理即可:

  • 图被拉长或压扁:素材比例与屏幕不符,按长比例重出一版。
  • 启动时先闪一下旧画面:只换了启动图没处理背景层,补一条需求把它一起换掉。
  • 黑屏或白屏闪一帧:背景色与主图反差太大,让背景用主图底色即可。
  • 高分辨率屏上发糊:只给了低密度图被系统放大,交图时按高密度档准备。
  • 包体明显变大:单张图太重,压缩后再交或降低一档分辨率。

不满意要回退或微调时,用历史记录最省事:项目详情页直接列出修改历史(最新在最上),每条显示 #序号 + 时间 + 需求原文,完整显示不截断,右侧「选择」可以把那条需求填回输入框,补一句差异再发一次;历史同时落盘在 history.ini,按记录1、记录2 递增,删掉某一节就等于删掉那条记录。

七、用户评价

「我第一次换启动图就翻车:图被拉得老长。后来按比例重出一版,主体放中间,一次就对了。教训是素材别偷懒。」
—— 阿凯 · 独立开发者
「附件里写清尺寸和用途之后,AI 不会把背景图和主图放反,这比反复解释省太多时间。」
—— 小柯 · 应用汉化组
「我们做内测包时会同时交一张效果图,验收的时候直接对着看,少了很多来回。」
—— 林工 · 企业内测打包
「投屏到电脑上看启动页细节很实用,手机上那一下太快了,看不清有没有锯齿。」
—— 阿彬 · 产品经理
使用者反馈汇总
87% 认为「按比例出图」是最容易踩的一处
81% 会同时交一张期望效果对照图
78% 表示附件里写清规格后返工明显变少

八、合规提醒与适用场景

请务必注意:本工具面向你自己拥有版权或已获得授权的应用,用于学习研究、企业内测与自有产品改包等合法场景。请勿用于破解他人付费应用、去除他人版权信息、绕过安全机制或任何侵犯他人权益的用途。因使用不当产生的后果由使用者自行承担。

另外提醒:图片与设计素材同样需要你自己拥有版权或已获得授权。给自己的应用换新版视觉、做内测包、做教学演示都属正常用法;把他人素材替换进不属于你的包,不在适用范围内。

素材规范,是换图这件事真正的门槛
比例、密度、安全区想清楚,附件里把用途写明白,剩下的交给智改工坊:解包、替换、回编、对齐、签名、装机,一条链路走完。

本文流程与细节来自开发机实测;用户反馈已获授权并脱敏处理。