3

Codename One を評価する必要がありますが、展開が内部でどのように機能し、最終結果が実際にどうなるかについての情報を見つけることができませんでした。彼らは私の Java コードを RoboVM に似た実際のネイティブ コードにクロスコンパイルしますか? Gluon に似た JVM を使用しますか? それとも独自の JVM を持っていますか?

4

1 に答える 1

1

追加の詳細については、ここで私の回答を参照してください。

バイトコードを C に変換し、xcode を使用してネイティブにコンパイルします。したがって、完全にネイティブなアプリを取得し、ソース コードを取得して自分でコンパイルすることもできます。ネイティブ C/Objective-C コードは、多くのアプリ/ゲームで使用される iOS への公式にサポートされているパスであるため、常に動作することが保証されています。

RoboVM は Java の LLVM フロントエンドです。これはかなり野心的で、Apple が公式にはサポートしていません。過去に、iOS 9 への移行がいかに困難であったかを説明する RoboVM 従業員からのこの投稿など、彼らにとってかなりの困難な状況を生み出しました。最近の 64 ビットへの移行などについても同様でした。

私たちにとって、iOS 9 と 64 ビットへの移行は比較的簡単でした。移植性のために JDK の使用をサポートされているクラスのセットに制限しているため、コード ベースも小さくなっています。

完全な VM は、ここの vm ツリーの下にあるオープン ソースであることに注意してください。最初は XMLVM を使用していましたが、RoboVM がリリースされたときに XMLVM に切り替えることを検討しましたが、独自の VM を作成することでリスクを軽減できると判断しました。

VM 部分は私たちのソリューションの非常に小さな部分です。たとえば、JavaScript のスレッドをサポートするTeaVMのおかげで、JavaScript アプリを含むあらゆるものにアプリを変換できます。RoboVM Codename One とは異なり、真の Write Once Run Anywhere ソリューションです。

于 2015-11-02T03:26:05.503 に答える