228 字
1 分钟
通讯录与通话记录采集:Flutter 端的权限与上报

双采集源#

flutter_contacts: ^2.5.0 # 通讯录
call_log: 6.0.1 # 通话记录(仅 Android)

通话记录没有 iOS 版——苹果不开放,这是平台天花板,产品设计时就要接受“iOS 只能采通讯录”。跨平台开发的第一课:先看 API 在双端存不存在

权限是体验#

permission_handler 逐项申请:通讯录、通话记录、网络。被拒一次就少一份数据,申请文案要讲清用途(上架审核同样看这个)。kit_webviewzikzak_inappwebview)做壳内 H5,animated_text_kit 做引导动效——工具类 App 也要有呼吸感。

上报:分批、可追溯#

data_uploader.dart + upload_api.dart:按批次传,对应后端的 DataUploadRecord。弱网断点续传、失败重试,批次状态本地可查。采集端三指标:采全(权限)、传到(重试)、可查(批次)

端侧采集的尊严:权限文案写清楚,失败重试做扎实,批次记录可追溯。