4

Android 2.x で実行できるように変換したい Delphi 5 で作成されたアプリがあります。アプリはとてもシンプルです。Modbusシリアルリンクを介して別のマイクロプロセッサに構成ファイルをアップロード/ダウンロードするために使用されます。(ターボディーゼルエンジンの馬力アップに使用するエンジン管理チップです)。私は大学でのパスカル時代からプログラミングをしていないので、ほぼ完全な初心者ですが、これに時間を投資したいと思っています。もちろん、ソースコードも持っています。

私がこれまでに行った読書から、Java でアプリを書き直すことが最も一般的な解決策のように見えますが、モノドロイドの使用を提案する人もいますか? 私が本当に感謝しているのは、これを行うためにどのバージョンとツールを組み合わせる必要があるかについての決定的なアドバイスです。たとえば、Java SDK をインストールしますか、それとも Monodroid を見て既存のコードを変換するだけですか? 私が最も難しいと思うのは、適切なアプローチ/環境設定を取得することです。ここでの情報と選択肢に圧倒されます! 正しいアプローチができていることを確認したら、詳細を調べていきますが、1 つのアプローチをいじくり回して何時間も費やし、後でそれが無駄だったことを知ることほど悪いことはありません。

ここでの私の目的は、既存のコードの機能をできるだけ簡単に Android に複製することであり、ルック アンド フィールを完全に複製することではなく、Android プログラミングの第一人者になることでもありません :)

これに関するガイダンスを本当に感謝します...

マーカス

4

7 に答える 7

1

Dalvik (Android VM) で実行できる他のプログラミング言語のリストについては、この Stackoverflow の質問を参照してください。

Android Dalvik で使用できるプログラミング言語は?

開発者が C および C++ を使用して Android ソフトウェア コンポーネントを構築できる Android Native Development Kit (Android NDK) もあります。

于 2010-11-16T08:16:24.337 に答える
1

アプリケーションを Android に移植することのみを計画している場合は、Java のみを使用することをお勧めしますが、iPhone や WP7 などの他のプラットフォームでアプリケーションを取得することを計画している場合は、Monodroid を使用することをお勧めします。

私が疑問に思っていることの 1 つは、使用するデバイスがどのように通信するかということです。Modbus プロトコルをカプセル化する WiFi 経由で接続しますか、それともシリアル接続を可能にするデバイスを接続しますか? すべてのデバイスがすぐに使用できる USB ホスト モードをサポートしているわけではなく、他のファームウェアでフラッシュする必要がある場合があるため、これが最大の問題になる可能性があります。

于 2011-09-29T11:21:17.997 に答える
1

ここで言及していないオプションが 1 つあります。私はそれについてあまり知りませんし、まだ開発中であると思いますので、まだ十分に安定していないか、十分な機能を備えていない可能性がありますが、Delphi For Android クロスコンパイラを調べましたか? それがうまくいくのであれば、すべてを Java や CLR 言語に変換するよりも間違いなく簡単です。

于 2010-11-16T03:57:31.570 に答える
1

私も Delphi のファンですが、Android を扱うには Java が必要だと思います。Android は Java をベースにしているので、その方法を使用する必要があります。または、mjustin が言ったように、Scala を使用します。みんな喜んでくれたようです。

私の意見です。

よろしくお願いします、

于 2010-11-16T08:27:40.013 に答える
0

EmbarcaderoWebサイトでこのディスカッションをご覧ください。

AlexMogurenkoブログもご覧ください。。FreePascalコンパイラでそれを行う方法を示しています

于 2010-11-16T07:06:22.560 に答える
0

Free Pascalは、Javaプラットフォーム用のコードを生成できるようになりました。そのため、FPCを使用してJavaバイトコードにコンパイルしてDalvikVM用に変換できるDelphiコードを作成できる可能性があります。

Java仮想マシン(JVM)のFPCバックエンドは、JDK 1.5(およびそれ以降)の仕様に準拠するJavaバイトコードを生成します。JVMをターゲットとするときにすべてのFPC言語機能が機能するわけではありませんが、ほとんどの機能が機能し(または将来的に機能します)、可能な限り少ない違いを導入するために最善を尽くしました。

このFPCJVMバックエンドは、RemObjectsによるProject Cooperとは関係がなく、FPCは現在Oxygene言語をサポートしていません。

于 2011-09-30T13:34:37.697 に答える
0

Lazarus/FreePascalを使用して、Delphi アプリケーションを Android に簡単に移植できます。

于 2011-09-30T10:41:01.087 に答える