少し前の話ですが、Facebook CEOのマーク・ザッカーバーグ氏の発言が話題となりました。2012年9月11日に行われた米TechCrunchのイベントで同氏は、モバイル端末向けアプリを提供するプラットフォームとしてHTML5に賭けたのは同社始まって以来の戦略上最大の失敗だった、と発言したのです。 TechCrunch Disrupt SF 2012で話すマーク・ザッカーバーグ氏 ネイティブかHTML5かという対立軸 モバイルアプリの世界では現在、「ネイティブアプリか、HTML5か」という構図で技術が語られることが少なくありません。実際、両者には一長一短があり、ケース・バイ・ケースで使い分けられています。機能面や応答性ではネイティブアプリが有利ですが、HTMLを取り巻く開発環境は急速に進化していて、中長期的にはHTML5の普及が進むと見るのが一般的です。それだけに、ザッカーバーグ氏の発
はじめに AndroidにはWebViewと呼ばれるクラスが用意されています。簡易的なブラウザの機能を提供しているクラスで、URLを渡してHTMLをレンダリングさせたり、JavaScriptを実行させたりすることができます。内部ではWebKitを使用しておりAndroidの標準ブラウザと同じような出力結果を得ることができるため、このクラスを使用することで簡単にWebブラウザの機能を持ったアプリケーションを作成できます。 しかし、その簡単さ故、使い方を誤ったり仕様をよく把握していなかったりすると、脆弱性の元になります。今回はこのWebViewクラスの使い方に起因する脆弱性について見ていくことにしましょう。 WebViewクラスとJavaScript WebViewクラスを使用した場合、注意しなければならないのはJavaScriptを有効にした場合です。デフォルトではJavaScriptの機能
現在表示されているページをリロードして再読み込みする方法を確認します。「WebView」クラスで用意されている「reload」メソッドを使います。 reload public void reload() -- メソッドの説明は特にありませんが、メソッドを実行すると現在表示しているURLをリロードします。 具体的には次のように記述します。 @Override protected void onCreate(Bundle icicle) { super.onCreate(icicle); WebView webview = new WebView(this); /* ... */ String url = webview.reload(); } サンプルプログラム それでは実際に試してみます。プロジェクトを作成しソースコードを次のように変更しました。 Test10_01.java packag
ネットワーク越しにWebサイトを表示するとなった場合、表示の高速化にはキャッシュ戦略は外すことができません。 といってもWebViewの場合、裏側にいるWebKitがキャッシュ処理を行ってくれるのでそれほど独自で実装する事は無いかもしれません。 ◯WebViewのキャッ...
公式リファレンスはこちら "WebView | Android Developers" ・AndroidManifest.xml にパーミッションの設定を忘れずに! <uses-permission android:name="android.permission.INTERNET" /> ・onCreate でインスタンスを作る WebView webview = new WebView(this); setContentView(webview); ・layout xml で定義する setContentView(R.layout.main); webview = (WebView) findViewById(R.id.webview); main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:androi
Getting <input type="file" /> to work on Android in WebView of custom app is pain, but doable. I have googled for hours and found nothing about this, eventually I got Android's stock browsers source from their git repository, and found out they are using undocumented method of WebCrhomeClient to support this functionality. Note this method is hidden with @hide annotation which means it is not supp
前回、HttpClientでリクエスト→クッキー保存→Webviewで共有のパターンを書いたが、 今回はその逆のパターンでWebViewでリクエスト→Cookie保存→HttpClientで共有の方法を紹介する。 WebViewでログインしてから、HttpClientでWebViewと同一サイトで認証が必要な処理等がある場合に そのHttpClientのリクエストが認証をパスする時に使えたりする(あまり需要はなさそうだが)。 今回のパターンの共有には以下のクラスを使う。 ■共有に使うクラス WebViewClient - WebViewのクライアント CookieManager - Cookie管理のクラス(取得/設定等) BasicClientCookie - ユーザが作成可能なCookieクラス CookieStore - HttpClientのクッキーの保管場所 ■ソース 1. まず
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く