我正在编写一个 Flutter 插件,用于检查 Play Store 或 App Store 以查看应用程序是否需要更新。我正在使用该package_info包来确定用户拥有的应用程序版本。我的代码如下所示:
getVersionStatus() {
PackageInfo packageInfo = await PackageInfo.fromPlatform();
localVersion = packageInfo.version;
...
}
Run Code Online (Sandbox Code Playgroud)
我想测试这个方法,但如果它作为单元测试运行它,fromPlatform调用就会挂起并超时测试。有没有比传testing入布尔值更优雅的方法来解决这个问题?IE:
if (testing) {
PackageInfo packageInfo = await PackageInfo.fromPlatform();
localVersion = packageInfo.version;
} else {
localVersion = '0.0.0'
}
Run Code Online (Sandbox Code Playgroud)
package_info包是否应该提供一种捕获错误的方法?有没有办法判断该方法是否正在由测试运行?
我刚收到用于开发的iPhone XS,但是在使用它在Android Studio中运行Flutter应用程序时遇到了问题。
当我插入旧的iPhone 6s时,Android Studio会显示出,只是iPhone的正常名称。
但是,当我插入XS时,它显示了这一点,一个巨大的字符串看起来像在显示ideviceinfo的命令行工具。尝试安装应用程序时,这还会导致错误:
Installing and launching...
error: module importing failed: ('invalid syntax', ('temp.py', 1, 27, 'import fruitstrap_00008020-001C50503488002E\n'))
backtrace unavailable
Run Code Online (Sandbox Code Playgroud)
奇怪的是,我仍然可以在Xcode中运行该应用程序。因此,我假设这是一个尚未解决的Android Studio错误。任何人都遇到这样的事情吗?