0

アプレットを介してすべてのブラウザーで実行される 1 つの Web アプリケーションを開発しました (コアは c で記述されています)。

今、Android 用に同じアプリケーションを開発する予定でしたが、Android は Java アプレットをサポートしていません。ブラウザ経由でアプリケーションを呼び出したいので、アプレットや ActiveX などを使用してアプリケーションを呼び出す必要がありますが、どちらも Android でサポートされていませんか?これを行う方法について何か考えがありますか?

4

3 に答える 3

1

Android ブラウザはアプレットをサポートしていません。私は、モバイルブラウザはそうではないと信じています。iOS や Windows Phone とは異なり、Android には Java VM がありますが、Sun のものとバイナリ互換でも API 互換でもありません。

たとえば、Android では、まったく異なるレイアウト モデルと異なる UI ウィジェットのセットが導入されています。

そのため、Android アプリをゼロから作成するしかありません。幸いなことに、Android は標準の JNI を使用しているため、C コードを再利用できる可能性が高くなります (Android NDK でコンパイルする必要があります)。

Android は、Intent と呼ばれるアプリケーション間の相互作用の高度なメカニズムを使用します。これらにより、インストール済みのアプリを登録して、特定の種類の URL を処理できます。これが、Android ブラウザーのリンクが YouTube アプリを呼び出してビデオをフルスクリーンで再生する方法です。Web ページも同様の仕組みでブラウザから専用アプリに切り替え、元の Web ページに戻る操作も自然に処理できます。

また、アプリは Web ビューを使用して、HTML ページ (アプリの一部としてインストールされたローカル コンテンツ、または任意の Web サイトから取得した動的コンテンツ) を表示できることにも注意してください。このビューは、javascript を含む完全なブラウザー エンジンを使用し、Java コードと対話できますが、javascript がアプレットと対話するのと同じ API とは対話できません。

于 2012-09-14T17:48:52.167 に答える
1

私はあなたがここに一人でいることを恐れています。異なる Android デバイスおよびバージョンとの互換性を少なくともある程度確保したい場合は、次のオプションがあります。

  • ネイティブ Android アプリ (NDK ではなく Java の方が優れています - プラットフォーム機能へのフル アクセス、互換性はスキル次第です)
  • ブラウザーのクロスプラットフォーム JavaScript (Android の機能とハードウェアへのアクセスが制限されている、読み込みが遅い、互換性があるかどうかは、クロスプラットフォーム ツールキット プロバイダーのスキルに依存します)

ブラウザで任意のバイナリ コードの実行をサポートすることはセキュリティ上の悪夢であり、Android のほとんどのブラウザでは発生しません。

于 2012-09-14T09:47:53.873 に答える
0

コードに基づいてネイティブ アプリケーションを作成するか、アプリケーションをよりサーバー側または Web アプリケーションにしてドロップ アプレットにする

于 2012-09-14T09:47:14.843 に答える