15

Android用のより良いWebビューはありますか? Google 自身のドキュメントには、webview オブジェクトに依存しないことが記載されています。

しかし、Webkit を使用する場合、同等のハードウェアを備えたモバイル デバイスで使用される他の Webkit ブラウザーと比較して、制限があるのは奇妙に思えます。

これは、jquery モバイル実装、または同様に Web アプリ用の sencha touch 実装で明らかです。Android バージョンは、速度低下、レンダリングの問題、ユーザー エクスペリエンスの低下に悩まされていますが、iPhone などの他のモバイル デバイスでは問題なく動作します。どちらも webkit を使用します。アプリの外では、実際の Android ブラウザーは問題なく動作します。

より低いレベルで、Androidの問題に実際に対処する方法はありますか? Android 用のより包括的な Web オブジェクトを作成した人はいますか?

洞察をありがとう

4

4 に答える 4

15

CQM、

Commonswaresと、提供された回答に記載されているほぼすべてに同意することを理解してください。しかし、この質問は、あなたが(理解または概念のいずれかで)抱えている問題があり、あなたのニーズに対してより適切な解決策を見つけて開発したいということを暗示しているようです。

おそらく受け取る予定の質問と回答に対処する:

Commonswaresの正当な批判は、提供されたプラットフォームオブジェクトが不十分である理由方法を述べていないという事実、またはGoogleがそのオブジェクトが信頼できないと言った理由時期を述べていないという事実によるものだと思います。より良いフィードバックが必要な場合は、質問を適切に編集してこれを伝えてください。そうすれば、ここでの問題が少なくなります。

さらに、以下でさらに説明するように、これはAndroidプラットフォームの問題であり(実際にはほとんど直接述べられています)、そうではないことを意味します。Webブラウジングの広い範囲にはあまりにも多くの考慮事項があり、WebViewなどの単純なコントロールで完全に対処することはできません。Microsoftは、90年代に組み込みIECOMオブジェクトで同じ問題に直面していました。それはどのグループにも属さない大きな問題です。

暗黙の質問への対処:

オブジェクトは基本的に、WebView専用ブラウザとはまったく異なるパラメータに基づいた非常に柔軟なレンダリングコードを利用したミニブラウザです。これには、単純なレンダリングから、そのようなページで使用されるリンクなどの対話可能な(sp?)オブジェクトまですべてが含まれます。このプロセスは、(より良い言葉がないために)毎回異なるレイアウト構造とパラメーターを持つ可能性のあるさまざまなアプリに埋め込むための機能が均一になるように小型化することは非常に困難です。ちなみに、このようなエンジンは、専用のブラウジングエンジンを使用しても均一にプログラムするのが難しく、現在の主要なブラウザ全体で多くの違いが生じます。

そのWebViewため、は専用ブラウザの全機能を提供することを意図したものではありませんが、他のことを行うことが多いアプリケーション内でWeb配信コンテンツを表示する最も便利な側面です。これは、Javascript機能を追加したり、コンテンツから配信されるクライアントベースの処理を追加したりすることによるセキュリティへの影響を考慮する場合に特に当てはまります。それに加えて、各デバイスは、異なるレンダリングエンジンまたは同じレンダリングエンジンの異なるバージョンを持つ可能性があります。これは、異なるデバイスがSQLiteを利用する異なる機能(つまり、外部キーのサポート)を持っているのとほぼ同じです。

そのため、WebViewは、信頼できる標準に準拠したHTMLコードを純粋に表示(および場合によっては反応)するために使用しない限り、その拡張性や使いやすさを保証せずにWeb配信コンテンツを表示するソリューションとして提供されます。実際のWebサイトの実際の慣行に入ると、HTMLは非常に柔軟に作成されていることがわかります。これは、各標準がさまざまな開発者によってさまざまなレベルで順守されているためです。HTMLの主な信条は、HTMLが機能する(コンテンツを表示する)ことであるため、潜在的なあいまいさにもかかわらず、完全に包括的なアプリ埋め込みオブジェクト指向ソリューションの開発の問題は、開発がさらに困難になります。

...他のモバイルデバイス(iPhoneなど)が正常に動作する場所

これは内容によって異なります。また、Appleデバイスの開発哲学はAndroidのそれとはまったく異なります。Appleにはほんの一握りのデバイスしかないので、デバイス全体の均一性を保証し、機能を追加する時期と時期を選択できます。たとえば、最初のiPhoneはFlashをネイティブでサポートしていませんでした。あなたの質問の意味に基づいて、私はこれが「包括的な」テストに失敗すると信じています。

対照的に、Androidには、はるかに幅広いデバイスのレパートリーがあります。Androidのコードは、これらのデバイスのメーカーによって調整および変更され、特定のデバイスのニーズに対してより適切なサポート可能なソリューションを作成できるようになっています。Googleは、特定のデバイスがそのコードの一部またはすべてを何らかの方法で同じに保つことを保証できません。これはさらなる制限を生み出しますが、他の非常に素晴らしい自由を生み出します。

...どちらもWebkitを使用しています。

ChromeとSafariはどちらもWebkitを使用しています。多くの開発者は、両者が異なる方法でそれを利用する方法のわずかな違いに悩まされてきました。

...アプリの外では、実際のAndroidブラウザは問題なく動作します。

これは上記で対処されています。

より低いレベルで、Androidの問題に実際に対処する方法はありますか?

繰り返しますが、これはAndroidの問題ではありません。現在の実装で特定の問題が発生している場合は、別のソリューションを自由にコーディングできます。また、Webコンテンツはブラウザで閲覧できるように作成されており、提供されています。ベストプラクティスは、具体的に何をする必要があるかを定義することです。WebページWebViewを表示するためにが必要ですか?それともあなただけですか?現在のレンダリングに関する問題は何ですか?クライアント側のスクリプトが必要ですか?

すべてのツールは、特定のニーズを念頭に置いて作られています。これは、いわゆる「より良い」リストビューにも当てはまります。これらの見解は、複数の開発者が必要とする可能性のある特定のニーズに対応するために作成されました。プログラミングの世界(特にOOP)では、包括的なものはほとんどありません。もしあれば、そもそもオブジェクトを拡張する必要はありません。そのようなツールを見るときは、それが具体的に対処しようとしていたニーズを考慮してください。

Android用のより包括的なWebオブジェクトを作成した人はいますか?

はい。これらは通常、デバイスにダウンロードできる他の専用ブラウザに表示されます。それらがアクセス可能かどうかについては、個人的にはわかりませんし、見たくもありません。

最終声明

あなたが提起した問題は、真の解決策を提供するのに十分具体的ではありませんでした。また、言葉の選択が不十分なため、敵対的な立場を取っているようでした。CommonsWareの回答または私自身の回答のいずれでも問題が解決されなかった場合は、質問を編集して、より具体的なニーズを追加することを検討してください。そうは言っても、私たちの両方の回答があなたにいくつかの洞察を提供することができたことを願っています。

お役に立てれば、

FuzzicalLogic

于 2012-06-08T22:16:58.403 に答える
1

誰もCocoonJSについて言及していないことに驚いています。

標準の WebView (Webview+) を再実装しています。パッケージ化された Webview であるため、アプリはデバイス間で一貫して実行されます (ただし、Android 4 以降と iOS 8 以降に限定されます)。

Canvas+ for WebGL という環境もありますが、WebView+ とは完全に別物です。つまり、DOM とキャンバスを同時に表示するには、Canvas+ の上に WebView+ をオーバーレイする必要があります。これらは同じ JS 環境を共有していませんが、両者の間でメッセージを送信するためのメッセージング システムがあります。

CocoonJS は、OS のサポートが限られているため、運用レベルのソリューションとしては適していないように見えますが、将来的にはそうなるでしょう。

横断歩道もあります。Android 4+ と Tizen で動作します。

于 2015-01-14T16:46:49.417 に答える
0

これは、トピックから外れた、あなたの暴言を他の場所に送ってください、一種の「質問」に非常に近いです。

Android用のより良いWebビューはありますか?

「webview」が組み込み可能な Web レンダリング エンジンを意味する場合、おそらくそうではありません。そのようなエンジンを作成するのは難しいからです。Firefox Mobile の分派として利用できるものがあるかどうかを確認できます。または、AOSP 版を出発点として使用して、WebKit を Android に独自に移植することもできます。どちらもアプリのサイズが大幅に増加する可能性があることに注意してください。

Google 自身のドキュメントには、webview オブジェクトに依存しないことが記載されています。

引用してください。

Android 用のより包括的な Web オブジェクトを作成した人はいますか?

それは、「より包括的な Web オブジェクト」の定義に依存します。特に、あなたはこのフレーズに何らかの定義を提供することを怠っていました.

于 2012-06-08T21:11:47.500 に答える