Flutter NSException: сбой конфигурации. Это может быть вызвано неверным GOOGLE_APP_ID в GoogleService-Info.plist или задано в настраиваемых параметрах.
Файл GoogleService-Info.plist добавляется через опцию "Добавить файлы в Runner". Итак, он находится в каталоге Runner.
Я уже проверил множество ответов о переполнении стека, но не смог понять проблему.
Еще перепроверяю GOOGLE_APP_ID в GoogleService-Info.plist
В конфигурации GoogleService-Info.plist нет проблем.
Я также добавил атрибуты CFBundleURLTypes ниже в файл [my_project]/ios/Runner/Info.plist.
CFBundleURLTypes - CFBundleTypeRole - Редактор - CFBundleURLSchemes -com.googleusercontent.apps.861823949799-vc35cprkp249096uujjn0vvnmcvjppkn
ПРОТОКОЛ ОШИБКИ:
2020-07-08 09:57:50.535551+0545 Sefyl [63114:5254473] flutter: Observatory listening on http://127.0.0.1:53595/jh2o62kCyXk=/
2020-07-08 09:57:50.815919+0545 Sefyl [63114:5254485] 6.25.0 - [Firebase/Analytics][I-ACS023007] Analytics v.60501000 started
2020-07-08 09:57:50.851101+0545 Sefyl [63114:5254418] 6.25.0 - [Firebase/Analytics][I-ACS023008] To enable debug logging set the following application argument: -FIRAnalyticsDebugEnabled
2020-07-08 09:57:50.851571+0545 Sefyl [63114:5254418] 6.25.0 - [Firebase/Analytics][I-ACS031025] Analytics screen reporting is enabled. Call +[FIRAnalytics setScreenName:setScreenClass:] to set the screen name or override the default screen class name. To disable screen reporting, set the flag FirebaseScreenReportingEnabled to NO (boolean) in the Info.plist
2020-07-08 09:57:51.366223+0545 Sefyl [63114:5254423] 6.25.0 - [Firebase/Analytics][I-ACS800023] No pending snapshot to activate. SDK name: app_measurement
2020-07-08 09:57:51.500886+0545 Sefyl [63114:5254426] 6.25.0 - [Firebase/Core][I-COR000004] App with name test does not exist.
2020-07-08 09:57:51.508053+0545 Sefyl [63114:5254426] 6.25.0 - [Firebase/Core][I-COR000009] The GOOGLE_APP_ID either in the plist file 'GoogleService-Info.plist' or the one set in the customized options is invalid. If you are using the plist file, use the iOS version of bundle identifier to download the file, and do not manually edit the GOOGLE_APP_ID. You may change your app's bundle identifier to 'com.sefyl.goflutter'. Or you can download a new configuration file that matches your bundle identifier from https://console.firebase.google.com/ and replace the current one.
2020-07-08 09:57:51.581320+0545 Sefyl [63114:5254055] *** Terminating app due to uncaught exception 'com.firebase.core', reason: 'Configuration fails. It may be caused by an invalid GOOGLE_APP_ID in GoogleService-Info.plist or set in the customized options.'
*** First throw call stack:
.....
...
libc++abi.dylib: terminating with uncaught exception of type NSException
(lldb)
3 ответа
Наконец решено!
Просто настройте GoogleService-Info.plist и GoogleService.json в соответствии с его платформой, например:
// config acc to platform
final FirebaseOptions firebaseOptions = (Platform.isIOS || Platform.isMacOS)
? const FirebaseOptions(
googleAppID: '1:926446789922:ios:e1628wrtecf870f0717b',
gcmSenderID: '2564624562546',
apiKey: 'AIzaSyChk3KEG7QYrs4kQfgNxBTbwerwrfCAdgg',
projectID: 'project-23f',
storageBucket: 'gs://project-23f.appspot.com',
databaseURL: 'https://project-23f.firebaseio.com/',
)
: const FirebaseOptions(
googleAppID: '1:926446789922:android:056bd6d9f0717b',
gcmSenderID: '2564624562546',
apiKey: 'AIzaSyDBq2tJ82wO0RKzfsguGCp7e6uh3Ko',
projectID: 'project-23f',
storageBucket: 'gs://project-23f.appspot.com',
databaseURL: 'https://project-23f.firebaseio.com/',
);
final FirebaseApp app =
await FirebaseApp.configure(name: 'test', options: firebaseOptions);
Какое совпадение! У меня тоже проблема с нашим приложением flutter. Я просто получаю ошибку SIGABRT. Он соберется и перейдет к стартовому экрану, но потом без кубиков.
Обновлять :
Сначала вам нужно добавить свой google-info.plist в xcode,
затем
main() async{
await Firebase.initializeApp(
name: 'RamadanApp',
options: (Platform.isIOS || Platform.isMacOS)
? const FirebaseOptions(
apiKey: "CHECK VALUE IN INFO.PLIST",
appId: "CHECK VALUE IN INFO.PLIST",
messagingSenderId: "CHECK VALUE IN INFO.PLIST",
projectId: "CHECK VALUE IN INFO.PLIST")
: const FirebaseOptions(
apiKey:
"CHECK VALUE IN FIREBASE CONSOLE",
appId: "CHECK VALUE IN FIREBASE CONSOLE",
messagingSenderId: "CHECK VALUE IN FIREBASE CONSOLE"",
projectId: "CHECK VALUE IN FIREBASE CONSOLE"),
);
}