2017-05-23 3 views
0

AndroidおよびiOSプラットフォーム用の機能を提供するCordovaプラグインを開発中です。私はまたデモアプリケーションにインストールされているプラ​​グインは、アンドロイドプラットフォームのためにうまく動作するが、プラグインをテストするデモのCordovaアプリがありますが、プラグインがインストールされているときに構築するiOSプラットフォームのために構築するデモアプリケーションを取得できません。コードバプラグインをインストールするとiosフレームワークのシンボリックリンク

私は

"fatal error:'TestPlugin/TestPlugin.h' file not found"

はデモアプリでpluginsフォルダを点検、このエラーが発生します。私は、プラグインが使用しているiOSフレームワークのシンボリックリンクが完全に見当たらず、フレームワークが適切に動かなかったと私に信じさせていることに気付きました。また、問題のフレームワークをデモアプリケーションのプラグインフォルダに手動で移動して、Xcodeからアプリを実行することで、デモアプリケーションを起動できます。私は解決策を試してみました

hereを説明したが、それは(私はそれが唯一のウィンドウで壊れたシンボリックリンクを固定するかもしれないと思う)問題が解決しない、私は、MacランニングMacOSのシエラ(バージョン10.12)、Xcodeの8.31とコルドバの午前バージョン7.

+0

** after_plugin_add **と** before_plugin_install *の両方で[this](https://stackoverflow.com/questions/28974791/plugman-framework-skips-mac-os-x-symbolic-links)をテストしました。 *フォルダがフックしますが、シンボリックリンクは "platfors/ios/PROJECT_NAME/Plugins/.."フォルダ内で壊れています。 プラグインを開発していて、私のフレームワークからファイルを複製せずにこの問題を解決する方法を見つけられません。 – martin

+0

これをテストするときに何か問題がありました。私は私のために働いた答えを加えました。 – martin

答えて

0

Thisが実際に私のために働いています。私は何か違ったことをしました。私はbefore_plugin_installフォルダの下に私のスクリプトを入れて、次のようにフォルダ内のシンボリックリンクを作成しました:

私はスクリプトを与えた
#!/bin/sh 
cd plugins/MY_PLUGIN/src/ios/MY_FWK.framework/ 
ln -s -f Versions/A/Headers/ Headers 
ln -s -f Versions/A/MY_FWK MY_FWK 
ln -s -f Versions/A/ Current 
cd - 

は、実行権限を、プラグインを削除して、再度これを追加しました。 Cordovaはプロジェクト内で(シンボリックリンクを保持する代わりに)フレームワークのファイル全体をコピーしてしまいましたが、プロジェクトは現在動作しています。

[UPDATE]フックフォルダを使用するdeprecatedあること

注意。

関連する問題