申し訳ありませんが、私の英語はあまり上手ではありません。私はコルドバ1.6.1を使用しています。新しい Cordova ベースのプロジェクトを作成し、それを拡張してプラグインを追加しました。作成したプラグインを使用して静的ライブラリをビルドし、このライブラリを含むプロジェクトを実行しようとしました (ライブラリは xcode のビルド設定にあります)。 plugins フォルダーにソースがない場合
アプリケーションを実行すると、次のエラーが発生します。
[INFO] ClientChannel(1) 初期化中... CDVPlugin クラス MNClientChannelPlugin (pluginName: MNClientChannelPlugin) が存在しません。エラー: プラグイン 'MNClientChannelPlugin' が見つからないか、CDVPlugin ではありません。Cordova.plist でプラグインのマッピングを確認してください。
これらのエラーに関するいくつかのコメント: 1) 最初の行は、私が書いた JavaScript コードのログです。これは、「初期化」機能が起動されたことを示しています。この関数は、MNClientChannelPlugin という名前のプラグインの init 関数を呼び出します。2) & 3) これらのログは、ネイティブの iOS cordova SDK から取得されます (CDVViewController.mm の getCommandInstance (2) および execute (3) 関数から呼び出されます)。
Codova.plist では、MNClientChannelPlugin をキーと値として配置します。この構成では、MNClientChannelPlugin ソース (.mm & .h) を Plugins フォルダーに配置すると機能しますが、MNClientChannelPlugin.mm で静的ライブラリを作成すると機能しません。(このライブラリをプロジェクトに含め、.h ヘッダーを Plugins フォルダーに入れました)。Cordova はライブラリでソースを見つけられないようです...
Cordova プラグインは Cordova.Framework にあり、.m および .h ファイルを含む Plugins フォルダーにはないため、プラグインを作成してライブラリにパッケージ化し、cordova ベースのプロジェクトで使用することは可能ですが、私はそうではありません私のために働きます...アーカイブとコミットを見てきましたが、解決策が見つかりませんでした。何が問題なのか誰か知っていますか?