使用 detox test --configuration ios.sim.debug
通过以下方式在代码中启动应用程序 await device.launchApp({ permissions: { location: 'always', notifications: 'YES' } })
完成登录流程,直到应用程序通过反应本机权限请求位置 Permissions.request('location', { type: 'always' })
(事先检查以查看位置权限检查是否已设置为"始终"(在这种情况下,应用程序不会询问(
查看系统警报弹出窗口,要求确认位置权限
排毒看不到弹出的系统警报,因此无法单击按钮始终选择位置权限
应该能够点击位置权限系统按钮中的"始终允许"按钮。但不能。
请参阅我的代码:github.com/wix/Detox/issues/1330。
before(async () => {
await device.launchApp({
permissions: {
location: 'always',
},
});
});
在测试前启动具有所需权限的应用
问题不在于排毒方面。我正在使用排毒版本:17.14.6。问题出在苹果上。请升级您的苹果: brew upgrade applesimutls
.我目前的版本是0.9.2。此外,如果您的应用未提供"始终"使用位置的选项,请在 e2e/init.js 文件中将其设置为"inuse"。 beforeAll(async () => { await detox.init(config, { launchApp: false }); await device.launchApp({ permissions: { notifications: 'YES', location: 'inuse' } }); });