私は現在Androidアプリケーションを開発するためにMonodroidを使用しています。私は携帯電話のアプリにかなり新しいですので、カップルの事の上に混乱しています:定義によってアンドロイドライブラリですAndroidアプリのC#.dllライブラリ
何?私はMonoテンプレートを使ってアンドロイドライブラリを作成します:Android Class LibraryのMonoを作成する=>コードを書いて.dllにビルドする=> Visual Studioのエミュレータで実行するとエミュレータで正常に動作します。しかし、.dllファイルはアンドロイドライブラリですか?または、エミュレータで作業する前にモノで変換され、 'REAL'アンドロイドライブラリがJARである必要がありますか?
このアプリケーションを作成するためにC#で書かれた定義済み.dllを直接使用できますか?私はMonoでそれを自分のアンドロイドアプリで直接参照して試してみました。それはビルドされていますが、エラーはありません。しかし、エミュレータがこのアプリケーションを実行すると、(まだエラーはありません)固まってしまいます - C#.dllをAndroidアプリケーションプロジェクトに使用する正しい方法は何ですか?
私は誰もが任意のヒントを提供することができますので、もし問題を参照して、このライブラリを動き回ることができないC#とアンドロイドの間とモノに関するそれでも私を読んだ後、リンクを議論かなりカップルのトピックがあります実現/思考は以下のようになり、ほとんどの
ここであなたの答えをありがとう!したがって、.NETコードはMonoランタイムに対して実行されるので、dllはAndroidアプリケーションにのみ使用でき、Monodroid SDKがインストールされていることを意味します。私の主な目的はアプリケーションではなく、いくつかのC#ライブラリをアンドロイドライブラリに移植してアンドロイドの開発者に提供することです。その場合、アンドロイドと互換性のあるdllを作成したとしても、Monodroidにはランタイムラッピング? – lynnyilu
これは間違いありません - Android用MonoでコンパイルされたDLLは、Android用Monoで構築されたアプリケーションにのみ役立ちます。 –
ライブラリを開発者に提供したい場合は、そのプラットフォーム用にdllをコンパイルする必要があります。あなたがサポートしているクラスのみを使用する限り、複数のプラットフォームをサポートすることができます。理論的には** Math.Round **はすべてのプラットフォームで全く同じように動作します。これは、Mono実装がすべての入力に対してMicrosoft .NET実装と一致することを前提としています(単体テストを行ったためテストされる可能性が高い)。 –