关于为什么对 android 设备的"flutter install"不显示任何内容但"flutter run"工作正常的任何想法



我有一个大型/相当复杂的Flutter应用程序,我们已经写了几个月了。Soo——我们一直在模拟器等上运行,并在各种Android设备上使用flutter运行(通过usb电缆(,没有出现问题。。

然而,要发布,我们显然必须创建一个APK包等。这就是它变得奇怪的地方——

与"flutter run"运行良好的构建相同的"flutter install"不会在设备上显示任何工件,无论是模拟器还是物理设备。没有图标显示(我们的自定义图标(--"应用程序列表"中没有应用程序显示。。但是,在"设置"->"应用程序"中,确实可以看到我们的应用程序列表。。但它在敲击时什么都不做。。。

我们的智慧到此为止——哦,有了iOS,一切都很好。。我们可以用TestFlight发布,没有问题。。所以问题是纯粹的安卓系统。。

我们确信这一定和Manifest.xml文件有关。。但我们一直在观察它,没有任何东西能对我们解释这种行为。为什么"颤振运行"有效而"颤振安装"无效?

这不仅仅是我的环境——其他三个程序员中的任何一个都有完全相同的问题。。"flutter doctor-v"全部为绿色,"flutter run"按预期工作(即安装、启动并运行应用程序(。。

有人看到这个吗?关于如何调试软件包中Android不喜欢的东西,有什么想法吗?我们是安卓系统的新手开发人员,只知道足够的危险知识:(

TIA!

好吧——这是实际的答案——问题是清单。。当我添加深层链接并创建了一个永远无法满足的"不可能"意图时,我的意图过滤器部分错了。

旧Manifest.xml意图:

<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
<!-- Deep Links -->
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="missionmode4" />
</intent-filter>

意图过滤器是AND逻辑。。创造了一个不可能的意图。。新的工作版本是:

<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
<!-- Deep Links -->
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="missionmode4" />
</intent-filter>

这将创建两个独立的意向过滤器。。一个用于启动器,然后一个用于深度链接。

哇!

最新更新