新增 docs/android/ 目录: - README.md 总入口(快速上手 + 决策摘要 + 数据流) - 01-architecture.md 模块划分 + 数据流 + 选型理由 - 02-api-contract.md 每个接口的请求/响应 + DTO 字段映射 - 03-build-run.md Gradle/SDK/网络安全白名单/真机调试 - 04-milestones.md 7 天里程碑 + DoD + E2E 测试场景 新增 assets/: - logo/: 主图标 master + adaptive icon + 5 DPI launcher (方/圆) - splash/: 启动屏 logo + 完整背景预览 + 5 DPI 资源 - android_resources/: 集成所需的 XML(adaptive icon/主题/颜色/字符串/drawable/layout) - INTEGRATION.md 集成指南 - logo.svg + _make_logo.py 设计源 设计风格:参考用户提供的木质方块字母积木图,米色木纹底 + 深棕色字母 D,代表 'Diary',温暖私人日记感。 服务器体检:所有容器/API/DB/翻译主链路正常,TMT 本月已用 0.37%。 MaaS 备用通道上次已验证可用。
99 lines
3.7 KiB
XML
99 lines
3.7 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!--
|
|
Diary News — App Logo
|
|
风格:木质方块字母积木(参考用户提供的图)
|
|
设计:单个大方块 + 字母 "D",代表 "Diary"
|
|
颜色:米色底 (#F5E9D0) + 深棕字母 (#3E2A1E) + 浅色高光
|
|
用途:Android adaptive icon foreground (108x108dp, 安全区 66dp)
|
|
-->
|
|
<svg xmlns="http://www.w3.org/2000/svg"
|
|
viewBox="0 0 108 108"
|
|
width="108" height="108">
|
|
|
|
<defs>
|
|
<!-- 木纹渐变(米色基调,顶部亮、底部暗)-->
|
|
<linearGradient id="woodBase" x1="0" y1="0" x2="0" y2="1">
|
|
<stop offset="0%" stop-color="#F5E9D0"/>
|
|
<stop offset="50%" stop-color="#E8D4A8"/>
|
|
<stop offset="100%" stop-color="#C9A876"/>
|
|
</linearGradient>
|
|
|
|
<!-- 木纹纹理(横向纹理线)-->
|
|
<pattern id="grain" patternUnits="userSpaceOnUse" width="108" height="3">
|
|
<rect width="108" height="3" fill="url(#woodBase)"/>
|
|
<line x1="0" y1="1.5" x2="108" y2="1.5" stroke="#A8825A" stroke-width="0.3" opacity="0.3"/>
|
|
</pattern>
|
|
|
|
<!-- 字母 D 的木色(比底色更深的实木色)-->
|
|
<linearGradient id="letterWood" x1="0" y1="0" x2="0" y2="1">
|
|
<stop offset="0%" stop-color="#5C3D24"/>
|
|
<stop offset="100%" stop-color="#3E2A1E"/>
|
|
</linearGradient>
|
|
|
|
<!-- 顶面(轻微高光)-->
|
|
<linearGradient id="topHighlight" x1="0" y1="0" x2="0" y2="1">
|
|
<stop offset="0%" stop-color="#FFFFFF" stop-opacity="0.4"/>
|
|
<stop offset="100%" stop-color="#FFFFFF" stop-opacity="0"/>
|
|
</linearGradient>
|
|
|
|
<!-- 侧面(更暗,营造立体感)-->
|
|
<linearGradient id="sideShadow" x1="0" y1="0" x2="0" y2="1">
|
|
<stop offset="0%" stop-color="#8B6B45"/>
|
|
<stop offset="100%" stop-color="#6B4F30"/>
|
|
</linearGradient>
|
|
|
|
<!-- 圆角遮罩 -->
|
|
<clipPath id="blockShape">
|
|
<rect x="14" y="14" width="80" height="80" rx="14" ry="14"/>
|
|
</clipPath>
|
|
</defs>
|
|
|
|
<!-- 整组外发光阴影(模拟方块落在桌面)-->
|
|
<ellipse cx="54" cy="92" rx="32" ry="3" fill="#000000" opacity="0.15"/>
|
|
|
|
<!-- 方块主体(底面/侧面/正面三层)-->
|
|
<!-- 底面(从左下到右下的厚度)-->
|
|
<path d="M 14 88 L 14 94 Q 14 98 18 98 L 90 98 Q 94 98 94 94 L 94 88 Z"
|
|
fill="url(#sideShadow)" opacity="0.6"/>
|
|
|
|
<!-- 正面 -->
|
|
<rect x="14" y="14" width="80" height="80" rx="14" ry="14"
|
|
fill="url(#grain)"/>
|
|
|
|
<!-- 木纹细节:几条横向纹路 -->
|
|
<g clip-path="url(#blockShape)" opacity="0.4">
|
|
<line x1="14" y1="28" x2="94" y2="28" stroke="#A8825A" stroke-width="0.4"/>
|
|
<line x1="14" y1="38" x2="94" y2="38" stroke="#A8825A" stroke-width="0.3"/>
|
|
<line x1="14" y1="54" x2="94" y2="54" stroke="#A8825A" stroke-width="0.5"/>
|
|
<line x1="14" y1="68" x2="94" y2="68" stroke="#A8825A" stroke-width="0.3"/>
|
|
<line x1="14" y1="82" x2="94" y2="82" stroke="#A8825A" stroke-width="0.4"/>
|
|
</g>
|
|
|
|
<!-- 圆角描边(加深轮廓)-->
|
|
<rect x="14" y="14" width="80" height="80" rx="14" ry="14"
|
|
fill="none" stroke="#6B4F30" stroke-width="1.5" opacity="0.5"/>
|
|
|
|
<!-- 顶面高光(轻微内阴影 + 顶部反光)-->
|
|
<rect x="14" y="14" width="80" height="40" rx="14" ry="14"
|
|
fill="url(#topHighlight)" opacity="0.6"/>
|
|
|
|
<!-- 字母 "D" — 用粗体衬线感字体 -->
|
|
<text x="54" y="74"
|
|
font-family="Georgia, 'Times New Roman', serif"
|
|
font-size="58"
|
|
font-weight="900"
|
|
text-anchor="middle"
|
|
fill="url(#letterWood)"
|
|
stroke="#2A1B10"
|
|
stroke-width="0.8">D</text>
|
|
|
|
<!-- 字母上的高光(让字母也有木纹感)-->
|
|
<text x="54" y="74"
|
|
font-family="Georgia, 'Times New Roman', serif"
|
|
font-size="58"
|
|
font-weight="900"
|
|
text-anchor="middle"
|
|
fill="#FFFFFF"
|
|
opacity="0.08">D</text>
|
|
|
|
</svg> |