uni-app ios离线打包时 google登陆报错
uni-app ios离线打包时 google登陆报错
开发环境 | 版本号 | 项目创建方式 |
---|---|---|
Mac | 14 | HBuilderX |
产品分类:uniapp/App
PC开发环境操作系统:Mac
HBuilderX类型:正式
HBuilderX版本号:4.13
手机系统:iOS
手机系统版本号:iOS 17
手机厂商:苹果
手机机型:iphone 14
页面类型:vue
vue版本:vue3
打包方式:离线
示例代码:
uni.login({
provider: 'google',
success: async function (event: any) {
console.log("success", event);
},
fail: async function (err) {
console.log("err", err);
}
});
操作步骤:
uni.login({
provider: 'google',
success: async function (event: any) {
console.log("success", event);
},
fail: async function (err) {
console.log("err", err);
}
});
预期结果: 成功登录google账号
实际结果: 返回信息“{“errMsg”:“login:fail Invalid parameter,https://ask.dcloud.net.cn/article/282","code”:-1}”
bug描述: 使用uni.login登录google账号,返回信息“{“errMsg”:“login:fail Invalid parameter,https://ask.dcloud.net.cn/article/282","code”:-1}”,参数错误,5+API传入的参数不正确,我使用的uni.login属于uni-app项目,不属于5+ App项目,且自定义基座正常能登陆。
更多关于uni-app ios离线打包时 google登陆报错的实战教程也可以访问 https://www.itying.com/category-93-b0.html
更多关于uni-app ios离线打包时 google登陆报错的实战教程也可以访问 https://www.itying.com/category-93-b0.html
在使用 uni-app 进行 iOS 离线打包时,如果遇到 Google 登录报错,可能是由于以下原因导致的。以下是一些常见的排查和解决方法:
1. 检查 Google 登录配置
- Google Sign-In SDK:确保在 Xcode 项目中正确集成了 Google Sign-In SDK。
- 在
Podfile
中添加pod 'GoogleSignIn'
,然后运行pod install
。
- 在
- Google 开发者控制台配置:
- 确保在 Google 开发者控制台中创建了 OAuth 2.0 客户端 ID,并配置了 iOS 的 Bundle ID。
- 下载
GoogleService-Info.plist
文件,并将其添加到 Xcode 项目中。
- URL Scheme 配置:
- 在 Xcode 中,检查
Info.plist
是否配置了正确的 URL Scheme,格式为com.googleusercontent.apps.<CLIENT_ID>
。
- 在 Xcode 中,检查
2. 检查 uni-app 插件配置
- 确保在
manifest.json
中正确配置了 Google 登录插件。{ "app-plus": { "oauth": { "google": { "client_id": "YOUR_CLIENT_ID", "scope": "email profile" } } } }
- 如果使用的是第三方插件(如
uni-id
),确保插件版本兼容并正确配置。
3. 检查代码实现
- 确保调用 Google 登录的代码正确,例如:
uni.login({ provider: 'google', success: function (res) { console.log('Login success:', res); }, fail: function (err) { console.log('Login failed:', err); } });
- 检查错误信息,确认是 SDK 初始化问题、权限问题还是其他问题。
4. 检查 iOS 项目配置
- Capabilities:在 Xcode 中,确保启用了
Keychain Sharing
和Sign In with Apple
(如果需要)。 - Info.plist:检查
Info.plist
是否添加了以下内容:<key>CFBundleURLTypes</key> <array> <dict> <key>CFBundleURLSchemes</key> <array> <string>com.googleusercontent.apps.YOUR_CLIENT_ID</string> </array> </dict> </array>
5. 检查网络权限
- 确保在
Info.plist
中添加了网络权限:<key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> </dict>