質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

解決済

1回答

1072閲覧

Swiftで「signal SIGABRT」が発生する

takahiro00

総合スコア84

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2019/07/17 10:08

編集2019/07/17 10:30

前提・実現したいこと

Swiftで簡単なプログラムを作成してるのですが、ビルドした際に、
AppDelegate.swiftで「Thread 1: signal SIGABRT」が発生してしまいます。
原因が分からず、ご教授頂ければと思います。

ソースは以下を参考にしています。
https://qiita.com/Simmon/items/dc3490be59acea7fbe0c

ボタンを押すことで、テキストボックスに入力したnameがFirebaseに登録される簡単なプログラムです。
------補足-----------
色々調べた結果、
DBRef = Database.database().reference()
↑の部分でエラーになっているようです。(解決策が見つかりません。)

Outlet接続は以下のようになっています。
イメージ説明

発生している問題・エラーメッセージ

イメージ説明

該当のソースコード

swift

1import UIKit 2import Firebase 3 4class ViewController: UIViewController { 5 6 @IBOutlet weak var TextField: UITextField! 7 // インスタンス変数 8 var DBRef:DatabaseReference! 9 10 override func viewDidLoad() { 11 super.viewDidLoad() 12 13 //インスタンスを作成 14 DBRef = Database.database().reference() 15 } 16 17 @IBAction func add(_ sender: Any) { 18 let data = ["name": TextField.text!] 19 DBRef.child("user/01").setValue(data) 20 } 21} 22

補足情報(FW/ツールのバージョンなど)

Swift4.0
Xcode9.3.1

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

AppDelegate内でFirebaseの初期化がされていないのが原因ではないでしょうか?

application:didFinishLaunchingWithOptions:メソッド内で初期化を行ってください。
公式ドキュメントにも例があるので参考にしてみてください。

投稿2019/07/17 12:37

hayabusabusash

総合スコア767

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

takahiro00

2019/07/22 12:43

ご回答ありがとうございます。 AppDelegateでFirebaseの初期化をすることで解決いたしました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問