2017-01-05 17 views
0

私はXamarinを検討しています。私はC#の背景から来て、ネイティブiOS & Androidアプリを構築する経験があります。Xamarin iOSとAndroidを使用するサードパーティライブラリ

私が作成するアプリのほとんどは、iOS & Android用のサードパーティライブラリを大量に使用しています。 Xamarinでは、iOSやAndroidのライブラリを使用するためには、「バインディング」プロセスを経なければならないようです。

これはXamarinで問題がありますか?

どのような問題や制限がありますか?

+0

私はXamarinに非常に精通しているわけではないので答えとして投稿するつもりはないが、私は、単一のアプリケーションが最小限の変更で複数の環境で動作するはずだと信じている。iOSまたはAndroid固有の依存関係を使用すると、必然的にデバイス固有の保守がさらに必要になります。 –

+0

ネイティブライブラリをバインドする複雑さは、ライブラリの設計とそれに精通していることに大きく依存します。 1つのクラスと5つのパブリックメソッドを持つAPIは、50の異なるクラスにまたがる500のメソッドを持つものよりもバインドが簡単です。 – Jason

+0

@Jason - ありがとう、それは意味をなさない。広告ネットワークライブラリなどを追加すると、隠された警告はありますか? – AlexVPerl

答えて

2

Xamarinには、最も人気のあるサードパーティ製ライブラリのいくつかの品質バインディングを作成/維持するように設計されたコンポーネントチームがあります。

https://github.com/xamarin/XamarinComponents

注:これらは唯一のオープンソースコンポーネントであるあなたは、ここで自分の仕事の大半は見ることができます。個人のギブスには、さまざまなチームメンバーによって構築されたバインディングが多数あります。

あなたはXamarinで働く人気のあるサードパーティのライブラリを検索することができ、完全なコンポーネントの店もあります:

https://components.xamarin.com/

そうでなければ、あなたがXamarin互換性のあるパッケージのNuGetを検索することができます。悲しいことに、私が気づいているNuGetでこれを行うための素晴らしいフィルターはありません。

https://www.nuget.org/

コンポーネントチームによって拘束されていないライブラリがある場合

は、通常、コミュニティは、すでにA)Xamarin C#のポート、またはB)バインディングプロジェクトのいずれかを作成しました。これらのライブラリの多くへのリンクを持っている人気の awesome-xamarinリポジトリがあります。最悪の場合

https://github.com/benoitjadinon/awesome-xamarin

は、Xamarinはあなたのための仕事の90%の+を行うためのバインディングツールを提供します。

アンドロイド - https://developer.xamarin.com/guides/android/advanced_topics/binding-a-java-library/

のiOS - https://developer.xamarin.com/guides/ios/advanced_topics/binding_objective-c/

あなたがこのケースに取得する場合は、Java(登録商標)/ Objective-Cの、どのように言語はそれぞれのC#の同等物に変換する必要がありますを知ることなどの注意点があります。

たとえば、ここにあなたがさらに問題に遭遇した場合はXamarin.Android結合ガイドです:

https://gist.github.com/JonDouglas/dda6d8ace7d071b0e8cb

注:公式Xamarinのドキュメントは、ちょうど約すべての問題のトラブルシューティングが含まれますが、考えることができます。文書化されていない、または混乱していることがある場合は、トピックに関するStack OverflowまたはXamarin Forumsの質問をいつでも開くことができます。

+0

ありがとう、これは役立ちます。 – AlexVPerl

関連する問題