2016-08-26 15 views
13

Xcode 8.0 beta 5または6で空のスワッププロジェクトを作成し、Firebaseのガイドラインのような使用しているcocoapodsを使用してFirebaseをインポートします。インポートプロセス中は、すべての細かい。 firebaseをFIRApp.Configure()コメントで設定します。私は認証で扱うことができますが、私がデータベースにアクセスしようとすると動作しませんでした。またXcode 8.0 betaがインポート後にエラーを起こすFirebase

"Conflicting nullability specifier on return types, 'nullable' conflicts with existing specifier 'non null'" 

Screenshot of FIRApp.h Build-time error

コンソールでエラーのこれらの種類::ようFIRApp.h

ビルド時エラーが

2016-08-26 13:00:32.719: <FIRInstanceID/WARNING> STOP!! Will reset deviceID from memory. 
2016-08-26 13:00:32.719: <FIRInstanceID/WARNING> Failed to fetch default token Error Domain=com.firebase.iid Code=6 "(null)" 

2016-08-26 13:02:08.329: <FIRInstanceID/WARNING> Failed to retrieve the default GCM token after 5 retries 

私はこの問題を解決することができませんでした。

+0

私はほとんど同じ警告をしています。私はすべてのことが完璧に働いているので、ただ無視してきました。 –

+0

@TarvoMäeseppログインするか、新しいユーザーを登録しようとしたときにこのエラーが発生しました。 – Alexander

+0

http://stackoverflow.com/questions/38456471/secitemadd-always-returns-error-34018-in- xcode-8-in-ios-10-シミュレータそれはわたしを助ける。 – Alexander

答えて

12

ビルド時の警告は、null可否宣言のチェックにおけるXcode 8の更新に関するものです。これは、今後のリリースで無害で修正されるべきです。

FIRInstanceIDエラーは、Xcode 8ベータ版のキーチェーンバグに関連しています。このradarを参照してください。キーチェーンの問題は、シミュレータの実行にのみ影響します。ベータが終了する前に修正が必要です。その間の回避策は、キーチェーンの共有を有効にするか(Benjaminの回答を参照)、実際のデバイスを使用することです。

Xcode 8.2ではキーチェーンバグが修正されています。

9

実際にはバグはありませんが、Keychain Sharingはデフォルトではオフであり、有効にする必要があります。

Project Navigatorより、ターゲットを選択します。 機能タブキーチェーン共有をオンにします。これはすべての問題を取り除くはずです。

+0

ドキュメントによると:「キーチェーン共有を有効にすると、あなたのアプリはあなたのチームによって開発された他のアプリとキーチェーン内のパスワードを共有できます。私たちは他のアプリを作っていないので、なぜそれを有効にする必要がありますか? – Leon

+0

これはあまり明確ではないかもしれませんが、実際にFirebaseで共有できるようにしています。合意して、自分でFirebaseを開発したわけではありませんが、Firebaseはあなたのプロジェクトに固有の「アプリケーション」(リポジトリ)を作成します。 – Benjamin

+0

私はFirebaseを使用していません。 – Leon

0

このようにして、ビルド時の警告を修正できます。
Pods -> Build Settings -> Use Legacy Swift Language Versionに移動してNoに設定してください。

プロジェクトを整理してビルドします。

私は警告を再現し、複数の機会に修正することができました。

関連する問題