我在通过 App Center 分发给我的测试人员的 iOS 构建时遇到以下问题Microsoft。
安装并打开后,应用程序会显示登录屏幕。登录后,它会将您带到另一个屏幕,要求推送通知。这两个屏幕按预期工作并正确显示。
现在,在该推送通知屏幕上,我是否启用它们似乎并不重要,无论如何,用户将被推送到"应用程序"堆栈,该堆栈仅在整个电话中显示白屏(没有状态栏(。此应用堆栈是不同的导航堆栈(见下文(。
我在其他任何地方都没有这个问题,不是在 iPhone 模拟器或带有npm run ios
的物理 iPhone 上,使用 xCode 构建时也不行,甚至在使用 xCode 构建发布版本并在物理设备上运行它时也是如此。这仅发生在应用中心生成时。
唯一想到的可能相关的代码如下,但如前所述,其他任何地方都没有问题。
根导航器:
const createRootNavigator = () => createAppContainer(createSwitchNavigator(
{
// entry point, checks if logged in, pushes then either to Auth or App, works
AuthLoading: AuthLoadingScreen,
// login/signup, works as described above, pushes then to App
Auth: AuthStack,
// after pushing here, the white screen appears
App,
},
// ...
}
应用程序是一个选项卡导航器:
const App = createBottomTabNavigator(
{
Home: HomeStack,
// ... more
}
我发现了这个问题。它与另一个库有关,该库在应用程序的启动过程的早期就存在一些内部错误。我是通过为Android构建它来发现的,该应用程序甚至无法启动。然后我调查了应用中心的崩溃日志。因此,此问题与App Center无关,而是与全新安装相关的代码。