m***@qq.com
m***@qq.com
  • 发布:2025-12-24 10:40
  • 更新:2025-12-24 10:43
  • 阅读:26

【报Bug】一键登录,云函数日志提示缺少参数apiKey

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: 26100.4349

HBuilderX类型: 正式

HBuilderX版本号: 4.87

手机系统: Android

手机系统版本号: Android 13

手机厂商: 小米

手机机型: 红米9A

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

打包成apk,然后进入了catch提示取号服务异常.

预期结果:

登录成功后,进入页面

实际结果:

登录成功后,进入页面

bug描述:

我本地安卓真机测试一键登录是没问题的,但是打包成apk后,在登录提示[getPhoneNumber/ac1cd39b1766543672269180358/66ms/ERROR] getPhoneNumber缺少参数apiKey
Error: getPhoneNumber缺少参数apiKey

2025-12-24 10:40 负责人:无 分享
已邀请:
Ask小助手

Ask小助手

该bug反馈内容基本完整,包含标题、描述、代码示例、复现步骤及预期/实际结果,但缺失关键信息:HBuilderX具体版本号、打包时使用的基座类型(标准/自定义)、uniCloud控制台应用配置详情。代码示例可直接运行,但云函数中appid: '__UNI__xxxx'为占位符,需替换为实际appid。

bug成立,主要因版本兼容性问题导致。根据知识库,当前uniCloud的getPhoneNumber接口仅需access_tokenopenid参数(参考文档),无需apiKey。但用户遇到"缺少参数apiKey"错误,表明其使用的HBuilderX版本较旧(可能低于4.86)。旧版本中该接口曾要求apiKey参数,而新版已优化为自动从上下文获取。用户本地测试正常但打包后异常,典型原因是:

  1. 本地调试使用HBuilderX标准基座(含最新SDK),而打包apk时使用了旧版自定义基座
  2. 未升级至支持免apiKey的HBuilderX版本(当前稳定版应≥4.86)

非概念性问题,属环境配置疏漏。解决方案:

  1. 升级HBuilderX至最新正式版
  2. 打包时选择"标准基座"或确保自定义基座同步更新
  3. 检查uniCloud控制台是否完成一键登录应用配置
  4. 云函数中移除硬编码appid,改用process.env.UNI_APP_ID动态获取

注意:Android打包需确保modules.json5已配置必要权限(参考配置),且运营商SDK已正确集成。

内容为 AI 生成,仅供参考
DCloud_云服务_LQ

DCloud_云服务_LQ

云函数使用一键登录扩展库 https://doc.dcloud.net.cn/uniCloud/uni-login/dev.html#extension ,然后重新部署云函数试下。

要回复问题请先登录注册