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

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

ただいまの
回答率

90.47%

  • Swift

    7466questions

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

  • Xcode

    4208questions

    Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

  • Swift 2

    1334questions

    Swift 2は、Apple社が独自に開発を行っている言語「Swift」のアップグレード版です。iOSやOS X、さらにLinuxにも対応可能です。また、throws-catchベースのエラーハンドリングが追加されています。

  • Xcode 7

    615questions

    Xcode 7は、ソフトウェア開発のためのアップルの統合開発環境であるXcodeのバージョン。UIを作成するために用いるグラフィカルツールです。iOS9/OS X El Capitan/watchOS2に対応。Swift 2コンパイラーが搭載されています。

SwiftでChat API の SendBirdをプロジェクトに入れるとエラーが起こる

受付中

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 721

YoheiFusayasu

score 14

前提・実現したいこと

Swiftで自分のプロジェクトにSendBirdを実装しようとしています。
SendBird

チュートリアルの通りに進めている途中で、SendBird実装に必要なファイルをXcodeに読み込んだ後ビルドエラーが発生します。

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

チュートリアル : Set up with sample UI
の通りに進めています。

sendbird-sampleをダウンロードしたのち、チュートリアルの通り

Drag and drop the source files (SendBirdCommon.swift, SendBirdCommon.swift, SendBirdMessaging/*.swift, SendBirdChat/*.swift) on to Project navigator to add to your project.

を自分のプロジェクトに追加した時に

  • ChattingTableViewController.swift
  • MessagingViewController.swift
    の同様の箇所で以下のエラーが発生します。
    Error

このブロックで呼び出されていないmessageDeliveryBlockを追加で記述しても続々と次の不足引数がエラーとして表示されてしまいます。

上記のサンプルプロジェクト内ではこのようなエラーは発生しません。
自分のプロジェクトに

  • ChattingTableViewController.swift
  • MessagingViewController.swift
    のファイルを入れた場合のみ発生します。

解決できずに困っています。
どなたか回答をよろしくお願いします。プロジェクトに

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

0

v2.0.26で、

Added received events for muted message and file to setEventHandler

だそうですので、追加されたハンドラを実装しないといけません。
(サンプに含まれているSendBirdは最新版じゃないのでエラーにならない)

追加されたのはmutedMessagesReceivedBlockmutedFileReceivedBlockですので、

SendBird.setEventHandlerConnectBlock({ (channel) -> Void in
    :
    }, messageDeliveryBlock: { (send, message, data, messageId) -> Void in
        if send == false && self.messageInputView?.isInputEnable() == true {
            self.messageInputView?.messageTextField?.text = message
            self.messageInputView?.showSendButton()
        }
        else {
            self.messageInputView?.messageTextField?.text = ""
            self.messageInputView?.hideSendButton()
        }
    }, mutedMessagesReceivedBlock: { (message) -> Void in
        /* 何か実装しないといけない? */
    }) { (fileLink) -> Void in
        /* 何か実装しないといけない? */
}

とりあえずこれでエラーは出なくなります。
これらのハンドラの実装についてよく分からないなら、v2.0.25以前のバージョンを使えばいいと思います。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

関連した質問

  • 受付中

    【swift】SVProgressHUDをswiftで使いたい

    objective-Cのライブラリ、SVProgressHUDをswiftで使いたいと思っています。 しかし、以下のサイトに従って導入してみてもうまくいきません。 (2つとも試し

  • 解決済

    Firebaseの使用方法について

    SwiftでFirebaseを使いたくて、import Firebase まで手順通りにやっているのですが、 「“No such module” 」とエラーが出てしまいます。

  • 解決済

    Swift 宣言されていない変数を引数に利用

    下記のコードはクイズアプリで結果画面に遷移する処理なのですが、instantiateViewControllerWithIdentifierメソッドの引数の"result"なんてい

  • 解決済

    Swift Info.plist?

    参考書のサンプルアプリを作っているとInfo.plistに〇〇項目を追加して…という文章が出てくるのですがInfo.plistはどこの事でしょうか?また何なのでしょうか?

  • 解決済

    ラベルの値が全て表示されない

    ラベルの値が全て表示されません。 のように記載したのですが... どこを直せば良いのでしょうか?

  • 解決済

    Swiftでアプリから画像を取得したい

    shareExtensionを使用して、他のアプリ(例えばDropbox, EverNoteなど)から 共有ボタン->自作アプリを選択->Post でその画像をUserDefau

  • 解決済

    【Swift】ボタン4つを押した際にそれぞれ別の音を鳴らしたいです。

    実現したいこと 4つのボタンを用意し、それぞれのボタンを押した際に押されたボタンに応じて用意したそれぞれのmp3を流すプログラム 発生している問題 ビルドまでできるものの

  • 解決済

    ViewControllerのInterfaceについて

    アプリ開発初心者です。 [目的]新たなViewControllerに機能を加えるためのファイルの場所を知る。 [現在の状況]ViewControllerを新規作成しましたが

同じタグがついた質問を見る

  • Swift

    7466questions

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

  • Xcode

    4208questions

    Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

  • Swift 2

    1334questions

    Swift 2は、Apple社が独自に開発を行っている言語「Swift」のアップグレード版です。iOSやOS X、さらにLinuxにも対応可能です。また、throws-catchベースのエラーハンドリングが追加されています。

  • Xcode 7

    615questions

    Xcode 7は、ソフトウェア開発のためのアップルの統合開発環境であるXcodeのバージョン。UIを作成するために用いるグラフィカルツールです。iOS9/OS X El Capitan/watchOS2に対応。Swift 2コンパイラーが搭載されています。