2017-02-13 10 views
0

スタティックフレームワークを作成してiOSアプリケーションに追加しました。私はフレームワークを再構築し、私は私のアプリでは、このプロトコルを使用することはできませんiOSアプリケーションでフレームワークの公開プロトコルが表示されない

public protocol ProtocolName 
{ 
    func methodName1(arg1: Int) 
} 

: は、フレームワークでは、私は新しい公共のプロトコルを作成しました。

import FrameworkName 

class ClassName: ProtocolName 
{ 
    func methodName1(arg1: Int) 
} 

(クラス定義でエラーが発生しました:宣言されていない型「ProtocolName」の使用は)

アプリは他のプロトコル、他のクラスとビューを見ています。また、私のフレームワークの変更を見ています(いくつかのテストプリントを追加し、フレームワークを再構築して、新しくビルドされたバージョンを使用しているかどうかを確認しています)。

プロトコルを持つファイルは、フレームワークの対象メンバーシップにあります。 フレームワーク全体を削除してもう一度リンクしようとしましたが、XCodeを閉じて再オープンし、両方のプロジェクトを数回クリーンアップしましたが、何も機能しません。

私も次のプロトコルを追加しようとしました - また、アプリケーションで認識されません(しかし、他の古いプロトコルです)。

私はアプリでフレームワークの定義を確認しました(モジュールを右クリックして定義にジャンプ) - 新しいプロトコルの記述はありません。

フレームワークメタデータ(クラスとメソッド定義)の生成に何か問題があると思いますが、修正する方法が見つかりません。

ご意見やご感想をお寄せください。

答えて

2

OK、私は同じ問題を抱えている人にこの質問を残すことができます(おそらく3〜4時間節約します)。

解決策は非常に簡単でした。プロジェクトとフレームワークの派生データを削除しました(おそらくアプリの派生データを削除するだけで十分ですが、私は両方を削除しましたのでわかりません)。

XCode 8での操作方法:https://stackoverflow.com/a/39495772/5226328

関連する問題