Skip to content

Releases: LangYa466/PhoneApp

v2.1

Choose a tag to compare

@github-actions github-actions released this 20 Jun 20:57

release: 2.1 通话记录 / 拨号器 / In-call 大改版 + 一堆 bug 修复

通话记录页 (CallLog)

  • 整页改 MD3 list-item 风格 干掉每行 MaterialCardView, 改成整行 ripple + 字母头像圆
  • 字母头像按号码 hash 在 primary/secondary/tertiary container 三色轮转, 同号码颜色固定
  • 联系人有头像时异步加载 (ContactAvatars: 单线程 IO + 4MB LruCache + tag 防回收串图)
  • 日期分组 header: 今天 / 昨天 / 更早
  • 顶部 MD3 Filter ChipGroup: 全部 / 未接 / 来电 / 已拨 (单选必选)
  • 未接电话方向 icon + 副文本走 colorError 突出
  • 同号码连续多通自动折叠 显示 "(N)" 次数
  • 折叠组点击行展开 显示组内每次时间 (Wed 4:36 PM 绝对时间格式 + 时长)
  • 展开面板下方两个 Tonal action: Message (smsto:) / Contact (有联系人跳详情 没有就新建)
  • 整行点击: 单通直接回拨 多通切换展开/折叠 右侧 IconButton 始终回拨最新一通

拨号器页 (Dialer)

  • 整页重构: 顶部 ScrollView 可滚 + 底部固定拨号区 Y 不变
  • 拨号区背景 colorSurfaceContainer 顶部圆角 28dp 视觉上和上方滚动区分开
  • 号码显示行移到拨号区顶部: overflow icon 左 / EditText 居中 / backspace 右
  • 顶部命中区按输入数字搜:
    • 「All contacts」联系人 (Phone.NUMBER 归一化后 contains digits)
    • 「Not in your contacts」通话记录里命中但不在通讯录的号码
  • 匹配号码段加粗 (SpannableString StyleSpan), 例 "Mobile 11451<b>4</b>"
  • 命中行带联系人头像 + 字母 fallback + 直接呼叫按钮
  • DialerMatchRepository: ContactMatch + OtherMatch records 限 8 / 4 条

In-call 页

  • 「更多」面板每行 Add call / Hold 改用圆角 28dp surfaceContainerHigh ripple 背景
  • 行内 icon 圆从 colorSecondaryContainer (紫调) → colorSurfaceContainerHighest (中性灰)
  • 「More」标题字号 TitleMedium → TitleLarge
  • Dock 按钮圆角 30dp (胶囊) → 16dp (圆角方块) 跟 Pixel Dialer 一致

ContactsRepository

  • 新增 lookupPhotoUri(): PhoneLookup 查 PHOTO_THUMBNAIL_URI 回退到 PHOTO_URI
  • 新增 lookupContactUri(): 解出真正可 ACTION_VIEW 的 Contacts lookup uri
    (之前直接拿 PhoneLookup CONTENT_FILTER_URI 去 VIEW 必然 ActivityNotFoundException)

Bug 修复

  • More 面板 Add call / Hold icon 暗色模式下显示黑色:
    IconicsImageView 不会自动跟随主题色 必须显式声明 app:iiv_color
  • 展开面板 Contact 按钮 toast「no app available」:
    1. PhoneLookup CONTENT_FILTER_URI 不能直接 ACTION_VIEW 改走 Contacts.getLookupUri
    2. ACTION_INSERT_OR_EDIT 改成 ACTION_INSERT + CONTENT_TYPE 跟 DialerFragment 对齐
  • AndroidManifest 补 queries 声明 (Android 11+ package visibility):
    smsto VIEW / SENDTO, contacts INSERT, contacts VIEW (item/contact + item/person)
  • Monochrome launcher icon 在 Pixel Launcher 不被主题化:
    去掉 <group> scale/translate 变换 路径坐标 ×2.5 +24 烤进 108×108 viewport 直填

代码规范统一

  • 去掉所有 inline 完整类名 (io.langya.module.R.string.xxx / android.R.attr.xxx)
  • material / framework R 用 static import 个别属性常量 避免和项目 R 命名冲突
  • import 分组: java → 第三方 (android/androidx/com/timber) → io.langya, 空行分隔
  • 删未使用 import, 散落 magic dp 提取成常量

v2.0

Choose a tag to compare

@github-actions github-actions released this 17 Jun 09:01

release: 2.0 拨号器输入栏改成 EditText 支持复制粘贴

  • tvDisplay 从 TextView 换成 EditText inputType=phone
    代码里 setShowSoftInputOnFocus(false) 禁掉系统软键盘 (依然走本地拨号盘)
  • 加 TextWatcher 监听粘贴/手动编辑: sanitize 后剥掉 -/空格/括号
    只留 digits + + * #, 再 reformat
  • updatingDisplay flag 避免 setText 触发自身的 watcher 死循环
  • 光标自动放在末尾, 长按可粘贴 / 选择 / 复制

v1.9

Choose a tag to compare

@github-actions github-actions released this 17 Jun 08:50

release: 1.9 在线号码识别全换百度网页抓取

  • 干掉 TaobaoLookup (实测从来没识别出过东西)
  • BaiduWebLookup: 主线程起离屏 WebView 跑 m.baidu.com/s?wd=NUMBER
    onPageFinished 后 evaluateJavascript 拉 document.body.innerText
    正则扫 '号码归属/标记为/用户标记/...XX快递/外卖/中介' 等子串
    全程 try-catch 失败回 null 不挂主流水线
  • IO 线程 CountDownLatch 等结果 8 秒超时, 不阻塞 UI
  • 不需要 SYSTEM_ALERT_WINDOW (WebView 不上屏只跑网络 + JS)
  • 流水线: BUILTIN_DB → cache → 离线号段 → 百度网页抓取
  • About 里 API 条目从淘宝换成百度

v1.8

Choose a tag to compare

@github-actions github-actions released this 17 Jun 08:38

release: 1.8 修复通话页按钮 icon 不居中 + 更新截图

  • MaterialButton icon-only 时默认 gravity 把 icon 推到左边
    Hangup/Reject/Answer/DockIcon 四个样式加 gravity=center
    • paddingStart/End=0 让 icon 真正居中
  • 更新 calling / setting 截图

v1.7

Choose a tag to compare

@github-actions github-actions released this 17 Jun 08:34

release: 1.7 加 GitHub Releases 在线更新检查

  • UpdateChecker 走 api.github.com/repos/LangYa466/PhoneApp/releases/latest
    比 tag_name 和 BuildConfig.VERSION_NAME, 按 . 分段数字比较
  • MainActivity onCreate 自动检查 (12 小时一次), 有新版弹 MD3 对话框直跳 release 页
  • 设置「关于」分类加「检查更新」入口, 手动触发不受频率限制

v1.6

Choose a tag to compare

@github-actions github-actions released this 17 Jun 08:16

release: 1.6 Pixel 风格拨号器 + MD3 完整对齐 + 签名发布流水线

  • Pixel 风格 DialerFragment: AsYouTypeFormatter 实时格式化, 字母 sublabel,
    联系人建议行 (新建/添加联系人/发短信)
  • MainActivity toolbar 设置齿轮和通话记录 btnCallBack 右边对齐
  • 启用 enableOnBackInvokedCallback, 关闭 OnBackInvokedCallback 警告
  • ContactsRepository 去掉 no-match 日志噪声
  • ci: release: 前缀触发 GitHub Action 自动出签名 APK + 发 release
  • 配置 signingConfigs.release 走环境变量, 本地无 env 时回退不签名