android - 关于为什么将“flutter install”安装到 android 设备上的任何想法都没有显示任何内容,但“flutter run”工作正常
问题描述
我有一个大型/相当复杂的 Flutter 应用程序,我们已经编写了几个月。Soo - 我们一直在针对模拟器等以及在各种 Android 设备上使用 Flutter 运行(通过 USB 电缆)的真实设备运行,没有问题..
然而,要发布我们显然必须创建一个 APK 包等。这就是奇怪的地方——
与“flutter run”工作正常的相同构建的“flutter install”不会在设备上显示任何工件,无论是模拟器还是物理设备。没有显示图标(我们的自定义图标)--“应用程序列表”中没有显示应用程序..但是,在“设置”->“应用程序”中,确实看到了我们列出的应用程序..但是点击时它什么也没做...
我们在这里有点机智 - 哦,一切都很好用 iOS .. 我们可以用 TestFlight 发布没有问题.. 所以问题是纯 Android ..
我们很确定它一定与 Manifest.xml 文件有关.. 但我们一直在查看它并查看它并没有弹出任何东西,对我们来说,解释了这种行为。为什么“flutter run”有效而“flutter install”无效?
这不仅仅是我的环境——其他 3 名程序员中的任何一个都有完全相同的问题/问题.. 并且“flutter doctor -v”都是绿色的,“flutter run”按预期工作(即应用程序已安装并且启动并运行)..
有人见过这个吗?关于如何调试包中不喜欢的 Android 的任何想法?我们有点像新手 Android 开发人员,只知道足够的危险知识 :)
蒂亚!
解决方案
好的-这是实际的答案-问题是清单..当我添加深层链接并创建了一个永远无法满足的“不可能”意图时,我的意图过滤器部分相当错误。
旧 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 .. 新的工作版本是:
<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>
这会创建两个独立的意图过滤器 .. 一个用于启动器,一个用于所需的深层链接。
瞧!
推荐阅读
- asp.net - 除了第一页,fancybox 不适用于 aspxgridview 页面
- vb.net - 如何使用 vb.net 或任何其他方式单击从多个文件夹中打开 .exe 文件?
- linux - 是否有平台独立的非阻塞方式来判断文件描述符是否是磁盘文件(常规/目录)
- java - 将变量从一种方法传递到另一种方法?
- react-native - 我正在使用 EXPO.IO 处理本机项目,今天它给出了错误 Unable to resolve module @babel
- php - 使用数据提供者时压倒性的 testdox 输出(具有大量数据集)
- html - 我正在尝试设置范围输入的拇指样式,但 webkit 不起作用
- c# - 如果 Employee 存在,则使用 ADO.net 返回员工角色
- php - 将 CakePHP 网站升级到 PHP 7
- c# - 将 AllowsTransparency 属性设置为 true 的 WPF 窗口