2015-09-16 19 views
5

C#でWindows(8.1/10)用のCordovaプラグインを記述することはできますか?あるいは、C#で書かれたライブラリコンポーネントをCordovaプラグインとしてラップすることはできますか?私が何かを見逃していない場合は、MSDNApacheドキュメントは唯一のWindows Phone 8用のC#を使用する方法を示し(JSの実装は、「Windowsのユニバーサル」が期待されている)Windows用C#でのCordovaプラグインの開発8.1/Windows 10

+0

このガイドでは、Windows Phone 8とWindows Universalの両方のプラグインを作成する方法について説明します。https://taco.visualstudio.com/en-us/docs/create-plugin-windows-phone/ – andreszs

答えて

0

はいすることができますし、1コルドバの窓10の実装は、すでに提供されていますギターでここにリンクははい..すべての必要書類も利用可能..です

Cordova-Windows

1

であるが、いくつかの要件があります。まず、ライブラリはWindowsランタイムコンポーネントプロジェクトでなければなりません。プラグインでwinmdまたはcsprojを参照できます(https://cordova.apache.org/docs/fr/latest/guide/platforms/win8/plugin.html参照)。あなたのプラグインが有効で、実行時にアプリケーションに正しくロードされていれば、C#クラスをJavaScriptで直接使用することができます(WinJSだけです)。プラグインでC#ライブラリのJavaScriptラッパーを公開するのはあなたの責任ですが、必須ではありません(プラグインの他のプラットフォーム実装とのコード共有を最大限にするのが一般的です)。

+0

そのようなプロジェクトはリリースモードですか?私は理解しているように.netネイティブを使う必要があり、良い結果を生み出すことができないので、現在、アプリパッケージを作成している間に問題を抱えています。単に.applファイルに必要な.dllファイルをパックしません。 – stipe

+0

はい、WindowsランタイムコンポーネントはC++で書かれているため、特定のアーキテクチャ(x86、x64、ARM)ごとにパッケージを1つずつ作成する必要があります。 .NETのネイティブが必要な場合、CPUモードはオプションではありません。しかし、標準のC#Cordovaプラグインの場合、.NETネイティブは不要で、1つのパッケージ(任意のCPUモード)を構築できます –

+0

.NETネイティブコンパイルなしでビルドすると、ストアはサポートされていないAPIについて不平を言います。例えば、 "API OpenSemaphoreこのアプリケーションタイプではapi-ms-win-core-synch-l1-1-0.dllはサポートされていません.System.Threading.dllはこのAPIを呼び出します。奇妙なことですが、このユースケースが店舗提出プロセスでもカバーされているかどうかはわかりません。それにもかかわらず、私はJSですべてを実装し、Windowsランタイムコンポーネント、.NETのネイティブおよび.dllを処理しないことで、この問題を回避しました。 – stipe

関連する問題