v0.7.0 接上真实服务器:登录 / 设备会话 / 全量同步与各模块真实数据
从「演示数据壳子」走到「真的能连家里的服务器用」。
登录(用户 2026-10-17「完整的登录功能」)
· 首次启动先填服务器地址 → /api/v1/ping 自报门户(认得出"这地址上真是家书")
· 手机号或用户名 + 密码 → 拿令牌;失败提示统一,不泄露账号是否存在
· FbDeviceStore:首次启动生成并持久化设备 UUID(三方应用拿不到 UDID),
设备名取机型(marketName),并上报 platform / app_version
设备会话(v57,用户 2026-10-17)
· 一把令牌 = 一台设备的一条会话;每次启动打一次 /me(有网就验)
· 两种锁分开:need_login(401/被踢 → 清令牌)与 offline_expired
(离线超 24h → 只锁界面、不清数据、联网自动恢复)——
混成一种就会违背用户要的"一直联网就不用每天输密码"
· 运行期任何请求 401 → 网络层全局回调立刻锁定跳登录页(FbHttp 的 authProbe
让登录/校验类请求跳过,避免"两个地方同时跳登录页")
· 退出登录:先清本地令牌(主防线),再尽力通知服务端
· 设置页显示版本号与「这台设备」
数据层
· FbDb / FbSchema / FbParse / 各 Repo(日程 / 名册 / 观影 / 模块)+ FbSyncAll
· 首页改为服务端 /home(农历/节气/纪念日/生日/天气/统计/往年的今天)
· 日程页用 FbDayEventPanel,与网页端显示方式/红线/并排三处一致
验证:ArkTS 静态守卫 231/0;hvigor 编译 BUILD SUCCESSFUL(entry-default-signed.hap)。
This commit is contained in:
@@ -14,6 +14,15 @@
|
||||
},
|
||||
{
|
||||
"name": "ohos.permission.GET_NETWORK_INFO"
|
||||
},
|
||||
{
|
||||
// 🔴 质感握姿(左手/右手握持)—— 用户 2026-10-16 第 4 条。
|
||||
// `multimodalAwareness.motion` 的 `holdingHandChanged` 要求此权限。
|
||||
// ⚠️ 它是 `system_grant` + `availableLevel: normal` + `provisionEnable: false`
|
||||
// (在 SDK 的权限定义里核过)⇒ **安装即获得,不会弹授权框**。
|
||||
// ⚠️ API 20 起才有;低版本设备会抛 801(能力不支持)——
|
||||
// 代码里已 try/catch 兜住,拿不到就退回默认方向。
|
||||
"name": "ohos.permission.DETECT_GESTURE"
|
||||
}
|
||||
],
|
||||
"deliveryWithInstall": true,
|
||||
@@ -24,7 +33,16 @@
|
||||
"name": "EntryAbility",
|
||||
"srcEntry": "./ets/entryability/EntryAbility.ets",
|
||||
"description": "$string:EntryAbility_desc",
|
||||
"icon": "$media:layered_image",
|
||||
// 🔴 v45 修:原为 `$media:layered_image`(分层图标),导致桌面图标
|
||||
// 外面有一圈米色底、且图案显得小。原因:
|
||||
// · `background.png` 是**纯米色满幅图**(512²)⇒ 那圈底色;
|
||||
// · `foreground.png` 的图案**只占 44%**,系统还要留安全区
|
||||
// ⇒ 图案被缩得更小。
|
||||
// 另一个真 bug:`app.json5` 的分层图在 **AppScope** 下找,
|
||||
// 但 `background/foreground.png` **只在 entry 里**,AppScope 里没有
|
||||
// ⇒ 引用落空。
|
||||
// ⇒ 直接改用与应用内左上角**同一个** `fb_logo`(图案几乎铺满)。
|
||||
"icon": "$media:fb_logo",
|
||||
"label": "$string:EntryAbility_label",
|
||||
"startWindowIcon": "$media:startIcon",
|
||||
"startWindowBackground": "$color:start_window_background",
|
||||
|
||||
Reference in New Issue
Block a user