UI要素を必要とするポータブルプラグインを実装する最良の方法は何ですか?
私の最初の質問は、「移植可能なプラグインが必要ですか?」ということだと思います。
ViewModel レイヤー以下で実際に必要なインターフェイスは何ですか?
私の推測では、ViewModel が表示するクロスプラットフォーム インターフェイスには次のものが含まれている可能性があります。
- いくつかの制御コマンド (開始/停止など)
- 要約情報 - ビデオの長さなど
- ファイルアクセスレイヤー - これはファイルパスと同じくらい小さいかもしれません?
その場合は、ほとんどのロジックを UI の Controls/Views/UIViews 内に実装し、関連するコマンドと値をそれらの ViewModel プロパティにバインドします。
したがって、これをプラグインとして個人的に実装することはまったくありません。
以前、ビデオ ビューを使用するアプリをいくつか作成しました。1 つはビデオ キャプチャ用 (Android のみ)、もう 1 つはバーコード スキャン用です。
利用可能な基本的なサンプルが非常にうまく機能することがわかりました。しかし、私がそれらを拡張しようとすると、すぐに壊れやすくなり、動作させるのが難しくなり、開発するのに非常にイライラしました!
現在の開発を UI View コードとして開始することを心からお勧めします。それが機能するようになった後、コントロールとインターフェースをプラグインに分割する良い方法を見つけるかもしれませんが、これはほとんどの時間を費やす場所ではないと思います.
たとえば、次の QR コード アプリでは、https://github.com/Redth/ZxingSharp.Mobileで別の UI コントロールを使用する予定です。 QR 文字列。