我有一个Flutter应用程序,我使用远程配置来检索一些信息,但代码在获取数据时引发异常.
这是我设置远程配置的方法.
Future<RemoteConfig> setupRemoteConfig() async { final RemoteConfig remoteConfig = await RemoteConfig.instance; // Enable developer mode to relax fetch throttling remoteConfig.setConfigSettings(RemoteConfigSettings(debugMode: true)); remoteConfig.setDefaults(<String,dynamic>{ 'categories': "food,drink",}); await remoteConfig.fetch(expiration: const Duration(hours: 5)); await remoteConfig.activateFetched(); return remoteConfig; }
此代码抛出以下异常:
Exception: Unable to fetch remote config
在我的控制台中它说:
W/FirebaseRemoteConfig(10456): IPC failure: 6503:NOT_AVAILABLE
我怎样才能解决这个问题?
解决方法
使用Try Catch包装你的fetch()和activateFetched()api调用
try { // Using default duration to force fetching from Remote Server. await remoteConfig.fetch(expiration: const Duration(seconds: 0)); await remoteConfig.activateFetched(); } on FetchThrottledException catch (exception) { // Fetch throttled. print(exception); } catch (exception) { print( 'Unable to fetch remote config. Cached or default values will be ' 'used'); }
请参见此处的官方示例:https://github.com/flutter/plugins/blob/master/packages/firebase_remote_config/example/lib/main.dart