Chrome アプリはウェブ プラットフォームを使用していますが、ウェブ機能の一部が無効になっているか、別の方法で使用されている。これは主に、セキュリティの問題の回避とプログラミングの改善を目的としています。ウェブ プラットフォームで無効になる機能と考えられる回避策の概要を以下に示します。
無効 | 回避策 |
---|---|
alert | カスタムのライトボックス/ポップアップを使用する。 |
ブラウザの Chrome API | 該当なし。 |
confirm | カスタムのライトボックス/ポップアップを使用する。 |
document.cookie | パッケージ化されたアプリのページはサーバーでレンダリングされないため、使用する必要はありません。 |
document.close | 該当なし。 |
document.open | 該当なし。 |
document.write | document.createElement を使用します。 |
外部リソース | iframe には webview タグを使用します。コンテンツの埋め込みと Webview Tag API をご覧ください。動画と音声にはローカル以外の URL を含めることができます。 |
フラッシュ | HTML5 プラットフォームを使用する。 |
フォームの送信 | JavaScript を使用してフォームのコンテンツを処理します(送信イベントをリッスンし、サーバーに送信する前にローカルでデータを処理します)。 |
JavaScript: URL | アンカーのインライン JavaScript でブックマークレットを使用することはできません。代わりに従来のクリック ハンドラを使用してください。 |
localStorage | IndexedDB または Storage API を使用します(これもクラウドと同期します)。 |
ナビゲーション | システムのウェブブラウザでリンクが開きます。window.history と window.location が無効になっています。 |
サンドボックス化されていないプラグイン | 該当なし。 |
showModalDialog | カスタムのライトボックス/ポップアップを使用する。 |
同期 XMLHttpRequest | 非同期のみの XMLHttpRequest を使用する: 同期 XXR を削除する |
ユーザー テキストの選択 | デフォルトでは、ユーザーはウェブページ上で行うようにテキストを選択することはできません。アプリのテキストの領域を選択可能にするには、CSS スタイル -webkit-user-select: text; を適用します。 |
webSql | IndexedDB または Filesystem API を使用します。 |