[当我启动信标广播时,我正在使用一个名为beacon_broadcast
的库,它在控制台中输出一个错误,但是我无法捕获它(beacon_broadcast
,try
,并且使用.catchError
不会不起作用。
控制台输出:
.then
D/BeaconParser( 7318): Parsing beacon layout: blah_blah_blah
D/BluetoothAdapter( 7318): isLeEnabled(): ON
D/BluetoothAdapter( 7318): isLeEnabled(): ON
E/BeaconTransmitter( 7318): Advertisement start failed, code: 2
我认为我不需要为此显示源代码,因为这似乎不是我的代码有问题,而是有关在特定情况下如何执行操作的问题。
检查您的try子句是否完全包装了负责该错误的代码部分,但我怀疑这不是您现在可以解决的问题。
查看库的存储库,我看到它需要首先处理平台特定代码(在本例中为Android / iOS / Web)中发生的错误,然后处理Flutter。尤其是,错误应该从平台传播到Flutter,以便他处理并最终引发异常。有时开发人员会忘记这些检查,这就是为什么您不能直接从dart处理异常的原因。