JP6482204B2 - 情報処理端末、その制御方法及びプログラム - Google Patents

情報処理端末、その制御方法及びプログラム Download PDF

Info

Publication number
JP6482204B2
JP6482204B2 JP2014162997A JP2014162997A JP6482204B2 JP 6482204 B2 JP6482204 B2 JP 6482204B2 JP 2014162997 A JP2014162997 A JP 2014162997A JP 2014162997 A JP2014162997 A JP 2014162997A JP 6482204 B2 JP6482204 B2 JP 6482204B2
Authority
JP
Japan
Prior art keywords
data
web browser
local data
web
information processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2014162997A
Other languages
English (en)
Other versions
JP2016038802A (ja
Inventor
中澤 紀之
紀之 中澤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2014162997A priority Critical patent/JP6482204B2/ja
Priority to US14/819,215 priority patent/US20160044137A1/en
Priority to CN201510475703.4A priority patent/CN105373575A/zh
Publication of JP2016038802A publication Critical patent/JP2016038802A/ja
Application granted granted Critical
Publication of JP6482204B2 publication Critical patent/JP6482204B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/986Document structures and storage, e.g. HTML extensions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、HTML(HyperText Markup Language)5におけるウェブブラウザ内のデータストレージの仕組みを実装したウェブブラウザを提供する際の技術に関する。
ウェブアプリケーションの高機能化に伴い、HTML5では各種拡張がなされている。特に、スマートフォンやタブレット等のモバイル端末の普及により、オフラインでウェブアプリケーションを動作させるための拡張が多くなされている。
例えば、情報処理端末内のウェブブラウザのための記憶領域に対して、ウェブサーバ上のファイルをキャッシュするアプリケーションキャッシュ機能がある。それ以外にも、ウェブブラウザのための記憶領域に対して、データを格納するためのWebStorageやIndexedDB機能がある。また、ウェブブラウザのための記憶領域内のファイルを操作するためのFile System API機能がある。更に、ウェブブラウザが動作する情報端末のネットワークとの接続状態(オンライン/オフライン)を管理してウェブアプリケーションから参照可能とし、その状態の変化を、ウェブアプリケーションに対して通知する仕組みも提供している。
ここで、ブラウザ間のデータの共有システムを開示した従来技術として、例えば特許文献1がある。具体的に特許文献1では、ユーザ識別情報とURL情報とを含む情報をサーバに送信する。サーバは受信したデータをユーザ識別情報と対応付けてデータベースに保存する。携帯端末は、ブックマークの参照時にユーザ識別情報を含む情報をサーバに送信し、サーバは、データベースに保存されたURL情報を携帯端末に送信することにより、ブックマークの共有を実現している。
特開2008−097201号公報
上述したウェブブラウザ内のデータストレージ機能は、ユーザのデータを、ウェブアプリケーションを提供するサーバのデータ保存機能を用いずに、ウェブブラウザ内で保存させることでウェブアプリケーションを実現するために利用される。例えば、ウェブアプリケーションは、ユーザが入力したデータをウェブブラウザのための記憶領域に記憶する。そして、次回、同ウェブアプリケーションが開かれた際には、その記憶領域に保存されたデータを利用することにより、あたかも、ウェブアプリケーションを提供するサーバ上にデータが保存されているかのうように動作することも可能となる。
ここで、特許文献1に記載の技術によれば、ウェブブラウザの登録情報(ブックマークなど)の共有を開示しているに過ぎない。つまり、上記のデータストレージ機能によりウェブブラウザのための記憶領域に保存されたウェブアプリケーションへの操作入力に係るデータについて、異なるウェブブラウザと共有することまでは考慮していない。そのため、例えば、同じウェブアプリケーションを、PCと携帯端末とで利用していても、それぞれで当該アプリケーションに対して入力したデータまでは共有されない。また、PCや携帯端末をユーザが交換した場合も、交換前のPCや携帯端末でウェブブラウザを介してウェブアプリケーションへ入力したデータを、新しいPCや携帯端末に移行することができない。
そこで、本発明は、ウェブブラウザのための記憶領域に記憶されたウェブアプリケーションへの入力などについてのデータを、異なるウェブブラウザとも共有するための仕組みを提供することを目的とする。
上記解題を解決するために、本発明における情報処理端末は、機能をもつウェブブラウザが動作する情報処理端末であって、前記ローカルデータの送信を制限する条件として、スキーマ、ホスト、及びポートの組合せが特定される情報を前記ウェブブラウザに設定する設定手段と、前記ウェブアプリケーションとは異なるネットワーク上のストレージサービスに対して、前記設定手段により設定された条件に合致する1以上のウェブアプリケーションに対応するローカルデータを除く、格納済みのローカルデータの少なくとも一部のデータを送信する送信手段と、前記ストレージサービスから取得したデータを用いて、前記ローカルデータを更新する更新手段と、を有し、前記ストレージサービスでは、前記ウェブブラウザを介して取得されるアカウント情報とウェブアプリケーションの情報とに関連付けて、前記送信手段により送信されてきた前記データが管理されていることを特徴とする。
本発明によれば、ウェブブラウザのための記憶領域に記憶されたウェブアプリケーションへの入力などについてのデータを、異なるウェブブラウザとも共有することができる。
ウェブブラウザのモジュール構成の例を示す図 モバイル端末のハードウェア構成の例を示す図 PCのハードウェア構成の例を示す図 実施例1で想定するシステム構成の例を示す図 ストレージサーバが提供する機能を利用する際に表示される画面の例を示す図 ウェブブラウザが動作する情報処理端末における、ウェブページのロード時に実行される同期処理を説明するためのフローチャート ウェブブラウザがウェブアプリケーションを実行している際に行われる処理について説明するためのフローチャート 図7のS703で呼び出される同期処理を説明するためのフローチャート ウェブブラウザにより同期処理の際に提供される警告画面の例 実施例2で想定するシステム構成の例を示す図 実施例2におけるウェブページのロード時の処理のシーケンス図 実施例2におけるウェブアプリケーションを実行している際に行われる処理のシーケンス図 実施例2におけるウェブアプリケーションを実行している際に行われる同期処理について説明するためのフローチャート 実施例2における拡張機能モジュールによるウェブブラウザのローカルデータへの初回アクセス時の警告画面の例 ウェブブラウザが提供するデータの同期機能の設定に係る画面の例 実施例2でウェブページのロード時に実行される同期処理を説明するためのフローチャート 実施例2でウェブブラウザが提供する警告画面の例
以下、本発明を実施するための最良の形態について図面を用いて説明する。
(実施例1)
図4は、本実施例で想定しているシステム内の構成要素の例を示す図である。
201は、モバイル端末であり、402は、同端末上で動作するウェブブラウザである。301は、パーソナルコンピュータ(以下、PC)であり、403は、同PC上で動作するウェブブラウザである。401は、ネットワークであり、例えばインターネット網を想定している。
407は、3GやLTE等の移動体通信の基地局であり、モバイル端末201は、移動体通信時は基地局407を介してインターネット網401に接続する。406は、WiFiのアクセスポイントである。モバイル端末201は、WiFi通信時、アクセスポイント406を経由してインターネット網401に接続する。PC301はルータ等(図示せず)を経由してインターネット網401に接続する。
404は、ウェブアプリケーションを提供するアプリケーションサーバ、405は、ストレージサービス機能を提供するストレージサーバである。ウェブブラウザ402及び403は、ネットワーク上のアプリケーションサーバ404及びストレージサーバ405に接続できる。本実施例では、例えば、ウェブブラウザ402及び403の開発ベンダと、ストレージサーバ405で提供されるストレージサービスの提供元とが、同じ、または相互に提携していることを想定している。具体的には、ウェブブラウザ402において登録されたアカウント情報を、そのままストレージサービスへのアカウント情報として利用するといった、簡易な認証などが実現できる。また、ユーザが意識しなくとも、ストレージサービス、またはウェブブラウザで対応している種類のデータのみを、後述する同期処理の対象とするといったことも可能となる。
なお、本発明は、モバイル端末201やPC403以外にも、後述するウェブブラウザで提供する機能が実行できる機器であれば適用可能である。具体的には、タブレットやスマートフォン、カーナビやカメラ、メガネや腕時計といった形態のウェアラブル端末、テレビや冷蔵庫といった家電製品などが適用対象として挙げられる。本発明では、これら機器のことを総称して、情報処理端末と呼ぶ。
図1は、ウェブブラウザ101の機能として提供されるモジュール構成の例を示すブロック図である。図4で示したウェブブラウザ402、403は、ここで説明するような構成を備えるものとする。
102は、ユーザーインターフェース(以下、UI)であり、アドレスバーや戻る/進むボタン等、ブラウザ画面のうち、ページが表示されるメインウィンドウを除くすべての部分を提供する。103は、ブラウザエンジンであり、UI102とレンダリングエンジン104の間の処理を整理する。104は、レンダリングエンジンであり、要求されたコンテンツの描画及び表示を行う。例えば、要求されたコンテンツがHTMLの場合、HTMLとCSSを解析し、解析されたコンテンツを画面に表示する。105は、ネットワーキングであり、HTTPリクエストなどのネットワークの呼び出しに使用される。106は、UIバックエンドであり、コンボボックスやウィンドウなどの基本的なウィジェットの描画に使用される。UIバックエンド106は、プラットフォームに依存しない汎用的なインターフェースを公開し、その下ではオペレーティングシステム(以下、OS)固有の描画用メソッドを呼び出す。107は、JavaScript(登録商標)インタプリタ(以下、JSインタプリタ)であり、JavaScript(登録商標)コードの解析と実行に使用される。JSインタプリタ107は、プロットフォームに依存しないJavaScript(登録商標)実行部と、位置情報やオンライン情報を含むネットワーク情報等にアクセスする部分より構成される。108は、データストレージであり、ウェブブラウザ101のために用意された後述する記憶装置205上の記憶領域に、データを保存する。保存対象のデータとしては、クッキーといった情報のほかに、HTML5の機能拡張に対応するローカルストレージデータ(例えば、localStorage、ファイルシステム、IndexedDBといったデータ等)やアプリケーションキャッシュを想定している。
なお、本発明では、図1で示す機能モジュールをウェブブラウザ101で提供する例を説明する。しかしながら、同様の機能モジュールを機器内のOSで提供することも可能であるし、OSとウェブブラウザとの協調動作によりそれら機能モジュールを適用することも可能である。また、OS上に同様の機能モジュールをどうさせるための独自のプラットフォームを提供することで、実現することも可能である。
図2は、ウェブブラウザ101が動作するモバイル端末201のハードウェア構成を示すブロック図である。モバイル端末201は、アプリケーションプロセッサ(以下APと記す)202、ROM203、RAM204、記憶装置205を備える。
AP202は、ROM203や記憶装置205に記憶されたソフトウェアを実行し、AP202に接続された各デバイスを総括的に制御する。RAM204は、AP202の主メモリあるいはワークエリアなどとして機能する。記憶装置205はフラッシュメモリ等からなり、オペレーティングシステム、ウェブブラウザ等の各種アプリケーション、データベースデータ、ユーザファイル等を記憶する。さらに、モバイル端末201において、206はタッチスクリーンコントローラであり、同コントローラに接続されたタッチスクリーン207を制御する。さらにモバイル端末201において、208は無線LAN制御部、209は移動体通信制御部、210は近距離無線通信制御部であり、それぞれ、無線LAN通信、移動体通信、近距離無線通信の制御を行う。さらにモバイル端末201において、211は電源制御部であり、充電池212への充電制御や電池残量の管理等を行う。
図3は、PCのハードウェア構成を示すブロック図である。同図において、PC301は、CPU302、RAM303、ROM304、外部記憶装置309を備える。
CPU302は、ROM304や外部記憶装置309に記憶された、或いはLAN403よりダウンロードしたソフトウェアを実行し、システムバス311に接続された各デバイスを総括的に制御する。RAM303は、CPU302の主メモリあるいはワークエリアなどとして機能する。外部記憶装置309は、ハードディスク(HD)、フロッピー(登録商標)ディスク(FD)等からなる。外部記憶装置309は、ブートプログラム、オペレーティングシステム、認証サーバ、認証クライアント、ウェブブラウザを含む各種のアプリケーション、データベースデータ、ユーザファイル等を記憶する。さらにPC301において、306はキーボードコントローラ(KBDC)であり、キーボード(KBD)305や図示しないポインティングデバイスからの入力情報をCPU302に送る。308はビデオコントローラ(VC)であり、CRTやLDC等からなる表示装置307の表示を制御する。310はディスクコントローラ(DKC)であり、外部記憶装置309とのアクセスを制御する。312は通信コントローラ(COMM I/F)であり、これを介してネットワーク313に接続される。図示しないが、ネットワーク313は、ルータ等を介してインターネット401に接続される。
なお、アプリケーションサーバ404及びストレージサーバ405を構成するコンピュータについても、図3で示すようなCPU、RAM、ROM、ディスクコントローラ、外部記憶装置、通信コントローラなどといった同様のバードウェア構成を備えるものとする。アプリケーションサーバ404では、CPUがウェブアプリケーションやウェブサーバ機能を提供する所定のプログラムが実行される。また、ストレージサーバ405では、CPUがストレージサービスやウェブサーバ機能を提供する所定のプログラムが実行されることになる。
図5は、ストレージサーバが提供するストレージサービス機能を利用する際に用いる画面表示の例を示す。ここで、ウェブブラウザ101のデータストレージ108により格納されたデータを、ストレージサーバ405に保存(同期)するためには、ストレージサーバ405にアクセスするための利用者アカウントが必要である。
図5(a)は、ストレージサーバ405に、利用者アカウントを作成するための画面の例である。同画面は、ウェブブラウザ101から、ストレージサーバ405内のアカウント作成用URLにアクセスすることにより、ウェブブラウザ101の画面に表示される。或は、ウェブブラウザ101とストレージサーバ405が連携している場合は、ウェブブラウザ101の設定メニューの選択により画面が表示される。
501は、ユーザの識別子としてのメールアドレス入力用のテキストボックスである。502は、ユーザ認証用パスワードの入力用のテキストボックスである。「アカウント作成」ボタン503の押下を検出すると、ウェブブラウザ101は、ストレージサーバ405に対し、入力されたメールアドレスとパスワードと共に、アカウント作成要求を送信する。ストレージサーバ405は、受信したメールアドレスを持つユーザが既に存在しないことを確認し、ストレージサーバ405内に、要求されたアカウントを作成する。或は、入力されたメールアドレスに対し、要求されたアカウントを有効にするためのURLを含むメールを送信する。
図5(b)は、ウェブブラウザ101がストレージサーバ405にアクセスするためのアカウント情報をウェブブラウザ101に設定するための画面の例である。
504はユーザの識別子としてのメールアドレス入力用のテキストボックス、505はユーザ認証用パスワードの入力用のテキストボックスである。「サインイン」ボタン506の押下を検出すると、ウェブブラウザ101はストレージサーバ405にこれらの情報を送信し、アカウントの認証結果を受け取る。認証結果が正しい場合、ウェブブラウザ101は、アカウント情報(メールアドレスとパスワード)を記憶装置(205、309)に保存する。アカウント情報が正しくない場合、その旨を表示し、再度、図5(b)のアカウント情報の入力画面を表示する。
以降、ウェブブラウザ101は、データストレージ108内のデータをストレージサーバ405と同期する際に、上記保存されたアカウント情報を用いて、ストレージサーバ405にアクセスする。
図6は、ウェブブラウザ101が動作するモバイル端末201などの情報処理端末における、ウェブページのロード時に実行される同期処理を説明するためのフローチャートを示す。本処理は、ウェブブラウザ(プログラム)をAP202、CPU302が読み出して、実行することで実現される処理である。
S601にて、ウェブブラウザ101は、現在のネットワークへの接続状態を確認する。確認の結果、ネットワークへ接続されている状態(オンライン状態)であればS602に進む。また、オフライン状態、即ちネットワークを介してアプリケーションサーバ404やストレージサーバ405と接続していない状態である場合には、本同期処理を終了する。なお、前述した通り、ウェブブラウザ101は、オフライン状態であっても、ローカルストレージデータやアプリケーションキャッシュを利用することで、ウェブアプリケーションを実行することが可能である。
S602にて、ウェブブラウザ101は、ストレージサーバ405へのアクセスの可否についての状態を確認する。具体的には、図5(b)で設定したアカウント情報を用いた、ストレージサーバ405へのサインインの状態を確認する。ここで、アカウント情報が保存されていない、或は保存されたアカウント情報を用いたストレージサーバ405へのアクセスに失敗している場合には、本同期処理を終了する。一方で、保存済みのアカウント情報によりストレージサーバ405へのアクセスに成功している場合にはS603に進む。
なお、ストレージサーバ405で管理されるアカウント情報と、URLとに関連付くデータを「リモートデータ」と呼ぶ。ここで、リモートデータには、ウェブブラウザ101のデータストレージ108による格納対象となる当該URLが示すウェブアプリケーションに対応するローカルストレージデータやアプリケーションキャッシュの少なくとも一部が含まれる。アカウント情報と、URL以外にも、さらに、オリジンと呼ばれるプロトコルとホスト名とポートの組み合わせ毎にデータを管理してもよい。一方で、ストレージサーバ405に対して同期処理のために送信される情報処理端末のウェブブラウザ101のための記録領域に格納されたデータを「ローカルデータ」と呼ぶ。ローカルデータには、リモートデータと同様に、ウェブブラウザ101のデータストレージ108による格納対象となるローカルストレージデータやアプリケーションキャッシュの少なくとも一部が含まれる。
S603にて、ウェブブラウザ101は、タイムスタンプの比較処理として、リモートデータの最終更新日時と、ローカルデータの最終更新日時を比較する。そのために、ウェブブラウザ101は、ストレージサーバ405から、アカウント情報と、指定URLをもとに、リモートデータの最終更新日時の情報を取得する。ここで、リモートデータとローカルデータの最終更新日時が等しい場合、或は、リモートデータとローカルデータが共に存在しない場合には、本同期処理を終了する。また、リモートデータの最終更新日時がローカルデータの最終更新日時よりも新しい場合、或は、リモートデータは存在するがローカルデータが存在しない場合、S605に進む。また、ローカルデータの最終更新日時がリモートデータの最終更新日時よりも新しい場合、或は、ローカルデータは存在するがリモートデータが存在しない場合、S604に進む。
S605にて、ウェブブラウザ101は、リモートデータで情報処理端末側のローカルデータを更新する。即ち、ウェブブラウザ101は、ストレージサーバ405よりリモートデータを取得し、取得したデータを、データストレージ108を介して所定の領域に上書き保存する。さらに、ローカルデータの最終更新日時に対して、リモートデータの最終更新日時に設定する。その後、本同期処理を終了する。
また、S604にて、ウェブブラウザ101は、ローカルデータでストレージサーバ405側のリモートデータを更新する。即ち、ウェブブラウザ101は、格納済みのローカルデータをストレージサーバ405に送信する。その後、ストレージサーバ405から、送信されてくる最終更新日時でローカルデータの最終更新日時を更新して、同期処理を終了する。一方、ストレージサーバ405は、情報処理端末からウェブブラウザ101を介してデータを受信すると、アカウント情報と、指定URLを確認して対象となるリモートデータを、受信データで上書きする。そして、リモートデータの最終更新日時を現在時刻に設定し、リモートデータの最終更新日時をウェブブラウザ101に返す。
図7は、ウェブブラウザ101がウェブアプリケーションを実行している際に行われる処理について説明するためのフローチャートである。
図7(a)は、実行中のウェブアプリケーションがデータストレージ108を介して、ローカルデータを読み込む際の処理を示している。
S701、S702での処理は、図6のS601、S602で説明した処理と同じであるため詳細な説明を省略する。ここで、S701でNO(オフライン状態)、或は、S702でNO(ストレージサーバ405へのアクセスができない)と判定された場合は、S704に進む。S701とS702でともにYESと判定された場合は、S703に進む。
S703にて、ウェブブラウザ101は、同期処理を実行する。同期処理の詳細は図8で後述する。
S704では、ウェブブラウザ101は、ウェブアプリケーションから要求されたローカルデータの少なくとも一部(主に、ローカルストレージデータ)を、データストレージ108を介して所定の記憶領域から取得する。取得されたデータをウェブアプリケーションに渡す。
図7(b)は、実行中のウェブアプリケーションがデータストレージ108を介して、ローカルデータとして、データを書き込む際の処理を示している。S701〜S703までの処理は、図7(a)と同様のため、その説明を省略している。ここで、S701でNO(オフライン状態)、或は、S702でNO(ストレージサーバ405へのアクセスができない)と判定された場合は、S711に進む。
S710では、ウェブブラウザ101は、ウェブアプリケーションから要求された書込みデータをストレージサーバ405に対して送信して、そのデータの書き込み処理を要求する。ここで書込み要求の対象となるデータは、ローカルデータの少なくとも一部(主に、ローカルストレージデータ)である。ストレージサーバ405では、この書き込み要求に対して、依頼されたデータの書き込み処理が行われ、さらに書き込みを行ったタイミングで、最終更新日時が更新される。その後、更新日時をウェブブラウザ101に返す。
S711では、ウェブブラウザ101は、データストレージ108を介して、ウェブアプリケーションから要求された書込みデータをローカルデータとして、所定の記憶領域に書き込む。この際に、S710にてストレージサーバ405から最終更新日時を取得していた場合には、その値で更新する。一方で、S701またはS702から直接S711に処理を進めた場合は、ウェブブラウザ101は、情報処理端末内で提供される現在日時で、最終更新日時を更新する。
図8は、図7のS703で呼び出される同期処理を説明するためのフローチャートである。
S801で、ウェブブラウザ101は、タイムスタンプの比較処理として、リモートデータの最終更新日時と、ローカルデータの最終更新日時を比較する。そのために、ウェブブラウザ101は、ストレージサーバ405から、アカウント情報と、ウェブアプリケーションに対応するURLをもとに、リモートデータの最終更新日時の情報を取得する。ここで、リモートデータとローカルデータの最終更新日時が等しい場合、或は、リモートデータとローカルデータが共に存在しない場合には、本同期処理を終了する。また、ローカルデータの最終更新日時がリモートデータの最終更新日時よりも新しい場合、或は、ローカルデータは存在するがリモートデータが存在しない場合、S802に進む。また、リモートデータの最終更新日時がローカルデータの最終更新日時よりも新しい場合、或は、リモートデータは存在するがローカルデータが存在しない場合、S803に進む。
S802では、ウェブブラウザ101は、ローカルデータでストレージサーバ405側のリモートデータを更新する。即ち、ウェブブラウザ101は、ローカルデータをストレージサーバ405に送信する。その後、ストレージサーバ405から、送信されてくる最終更新日時でローカルデータの最終更新日時を更新して、同期処理を終了する。一方、ストレージサーバ405は、情報処理端末からウェブブラウザ101を介してデータを受信すると、アカウント情報と、指定URLを確認して対象となるリモートデータを、受信データで上書きする。
S803では、ウェブブラウザ101は、UI102を介して警告メッセージの表示(図9)を制御する。図9で示すメッセージは、別の端末のウェブブラウザなどにより同じウェブアプリケーションを実行したことで、当該ウェブアプリケーションが利用するローカルストレージデータなどに変更があった旨を通知することを意図している。図9で示す表示画面では、さらに、ユーザに対して、ローカルデータを採用することを指示するための「OK」ボタン901と、より新しいリモートデータを採用することを指示するための「キャンセル」ボタン902とを提供している。
S804では、ユーザ入力を受付け、「OK」ボタン901が押下されたか否かを判断する。ここで、「OK」ボタン901が押下された場合には前述のS802に進み、そうでない場合にはS805に進む。
S805では、ウェブブラウザ101は、ウェブアプリケーションで提供するページの再ロードを行い、処理を終了する。この際、再ロード後には、ウェブブラウザ101により図6に示す処理が実行される。この場合、リモートデータの更新日時がローカルデータの更新日時よりも新しいため、ローカルデータがリモートデータで更新されたうえで、ウェブブラウザ101でウェブページが再構成されることになる。
図15は、ウェブブラウザ101が提供するデータの同期機能の設定に係る画面の例を示す。
図15(a)は、データストレージ108により格納されるデータの同期機能に関して、ウェブブラウザ101が提供する設定画面の例である。
チェックボックス1501は、同期処理の対象としないウェブサイト(ウェブアプリケーション)を指定するか否かを切り換えるためのコントロールである。チェックボックス1501が未チェック(無効)の場合には、ウェブブラウザ101は、いずれのサイトであっても、データストレージ108を介して格納されたローカルデータを用いたストレージサーバ405との前述の同期処理を実行する。
一方で、ユーザにより、チェックボックス1501がチェックされた場合には、1502〜1505のコントロールが有効になる。1502は、現在指定されている同期処理を制限するウェブサイトのリストを示す。このリストに含まれるURL(スキーマ、ホスト、ポート)で始まるウェブアプリケーションに対しては、ウェブブラウザ101は、前述したデータストレージ108を介して格納されたローカルデータを用いた同期処理を行わない。リストボックス1502でURLを選択した上で「削除」ボタン1503が押下された場合には、当該リストから選択されたURLが削除される。リストボックス1502でURLを選択した上で「編集」ボタン1504が押下された場合には、選択されているURLをユーザが編集するための画面(不図示)を開く。
「追加」ボタン1505の押下を検出すると、ウェブブラウザ101は、リストボックス1502に新規にURLを追加するための画面(不図示)を開く。リストボックス1502に登録するURLにはワイルドカードとして「*」を使用することが可能である。例えば、「http://*.mysite.com:*/」は、「http://www.mysite.com/」「http://app.mysite.com:8080/」等に一致する。このような規則を踏まえたうえで、ユーザにより追加指示されたURLは、リストボックス1502に反映されることになる。
チェックボックス1506は、ウェブブラウザ101による同期処理の実行前に、その同期の可否を確認するための確認画面が必要か否かを設定するためのチェックボックスである。
チェックボックス1506がチェックされている(有効な)場合には、ウェブブラウザ101は、同期の対象となるウェブサイト(ウェブアプリケーション)での同期処理に際して確認画面(図15(b))を表示する。表示のタイミングとしては、図6や図8などの処理前などである。
「キャンセル」ボタン1507の押下を検出すると、ウェブブラウザ101は、設定画面上での変更をすべて破棄し、画面を閉じる。「OK」ボタン1508の押下を検出すると、ウェブブラウザ101は、設定画面上での変更を記憶装置(205、309)に保存し、画面を閉じる。保存された設定内容は、その後のウェブブラウザ101の処理に反映されることになる。
図15(b)は、チェックボックス150が有効な場合にウェブブラウザ101により提供される確認画面の例である。
「同期しない」ボタン1510の押下を検出すると、ウェブブラウザ101は、現在のウェブアプリケーションのURL(例えば、スキーマ、ホストアドレス、ポートなどの組み合わせた情報)を例外リストに追加し、同期処理を行わない。「同期する」ボタン1511の押下を検出した場合、ウェブブラウザ101は、図6及び図8などで説明した同期処理を実行する。
(実施例2)
図10は、実施例2におけるネットワークシステムの構成例を示す図である。ここでは、前述の実施例1と同じ構成要素に関しては、同じ符号としており、その説明を省略する。
1011及び1012は、実施例1で説明した情報処理端末と同様のハードウェア構成を備える端末である。情報処理端末1011、1012では、それぞれウェブブラウザ1001、1003が動作している。ウェブブラウザ1001、1003の両者は、異なるベンダにより開発された異なるウェブブラウザであったり、バージョンの異なる同じベンダにより開発されたウェブブラウザであったりする。また、ウェブブラウザ1001、1003を開発したベンダとは異なる提供元によりストレージサーバ405のストレージサービスが提供されていてもよい。なお、ウェブブラウザ1001、1003の基本構成としては、図1で示すものと同様である。
1002及び1004は、それぞれのウェブブラウザ上で動作する拡張機能モジュールである。拡張機能モジュール1002、1004は、ストレージサーバ405と連携した、それぞれのウェブブラウザのデータストレージにより格納されたデータの同期機能を提供する。拡張機能モジュール1002、1004は、例えば、前述のストレージサービスの提供元により、ウェブブラウザの機能拡張のためのプラグインプログラムとして提供される。
ここで、ウェブブラウザ1001は、ローカルストレージデータとして、WebStorage、FileSystem APIをサポートしている。一方で、ウェブブラウザ1003は、ローカルストレージデータとして、WebStorage、FileSyste APIに加え、IndexedDBをサポートしているものとする。
また、アプリケーションサーバ404が提供するウェブアプリケーションは、ウェブブラウザがIndexedDBをサポートしている場合は、IndexedDBにも、必要なデータの格納を要求するものとする。
ウェブブラウザ1001、1003のそれぞれは、拡張機能モジュール1002、1004に対して、データストレージ108を介したローカルデータに対するアクセスや、イベント発生時の関数の呼び出しのイベント処理を提供する。なお、拡張機能モジュール1002、1004を用いたストレージサーバ405と連携した同期処理に必要なアカウント情報の登録などについては、図5と同様であるため、その説明は省略する。
以降では、ウェブブラウザ1001、1003のそれぞれで行われる本実施例における特有な処理について説明する。両者で共通する処理に関しては、以下、ウェブブラウザ1001及び拡張機能モジュール1002を例に挙げて説明する。
図11は、ウェブページのページロード時のウェブブラウザ1001と拡張機能モジュール1002の処理を説明するためのシーケンス図である。
S1101で、ウェブブラウザ1001は、ユーザからの要求などに従うウェブページのロード処理に応じて、ページロード時のイベント処理を呼び出す。当該イベント処理は、拡張機能モジュール1002がウェブブラウザ1001に対して登録した処理である。S1102で、拡張機能モジュール1002がページロード時のイベント処理を起動し、当該処理の中で、S1103で示すページロード時の同期処理(図16)をさらに呼び出す。
図16は、図11のS1103の同期処理の詳細を説明するためのフローチャートである。
S1601〜S1604については、前述の図6のS601〜604で示すウェブブラウザ101による処理を、拡張機能モジュール1002が実行している。処理の内容としては、前述と同様である。S1603の比較の結果、リモートデータがローカルデータよりも新しい、或は、リモートデータは存在するがローカルデータは存在しない場合、拡張機能モジュール1002の処理が、S1605に進む。
S1605で、拡張機能モジュール1002は、アカウント情報及び現在のURLをもとに、ストレージサーバ405側で管理されているリモートデータと、ローカルデータの比較処理をおこなう。具体的には、ウェブブラウザ1001がローカルストレージデータとしてサポートしていない種類のデータが、リモートデータに含まれるかを検査する。ここで、検査の結果、リモートデータに含まれるデータの種類が、ウェブブラウザ1001で完全にサポートされている場合は、S1606に進む。S1606の処理は、図6のS605の処理と同じであるため、その説明は省略する。S1605での、検査の結果、リモートデータにウェブブラウザ1001でサポートしていない種類のデータ(例えば、IndexedDBの値)が含まれていた場合には、S1607に進む。
S1607で、拡張機能モジュール1002は、ウェブブラウザ1001のUI102を介して警告画面(図17)を提供する。
図17で示す画面を表示する前提として、拡張機能モジュール1002及び1004やウェブブラウザ101は、ストレージサーバ405にデータを書き込む際に、当該データ以外の情報もストレージサーバに登録するものとする。具体的な登録情報としては、ウェブブラウザに関する情報(製品名(または種類)とバージョン情報など)と、ウェブブラウザが動作する環境情報(OSや情報処理端末の識別情報など)が含まれる。
図17の警告画面上では、ストレージサーバ405にリモートデータを書き込んだ他のウェブブラウザに関する登録情報が表示される。また、リモートデータに現在のウェブブラウザではサポートしていないデータが含まれていることと、その対処方法についてもメッセージとして表示されている。さらに、図17の警告画面には、「上書き」ボタン1701、「同期せずに続行」ボタン1702が含まれる。S1608で、拡張機能モジュール1002がユーザの入力を待機して、「上書き」ボタン1701の押下が検出されるとS1604に進む。S1604の処理は、上述した通りだが、ローカルデータが存在しない場合には、リモートデータを削除する要求をストレージサーバ405に送信する。また、「同期せずに続行」ボタン1702の押下が検出されるとS1609に進む。
S1609で、拡張機能モジュール1002は、現在のロードの対象となっているウェブページに対応するウェブサイト(ウェブアプリケーション)の同期の対象外としてウェブブラウザ1001に登録する。ここで登録された場合には、例えば、ウェブブラウザ1001が図15(a)で示すような画面を表示する際には、リスト1502に当該ウェブサイトのURLに係る情報が含まれるようになる。その後、本同期処理が終了する。同期処理の終了後、または同期処理に並行して、ウェブブラウザ1001がロードしたウェブページを、UI102を介して表示する。
以降の処理で、S1609で同期処理の対象外としたURLで始まるウェブアプリケーションから、ローカルデータに対する読み書きを要求された場合、拡張機能モジュール1002はその要求に係る同期処理を行わない。
なお、上述の本処理の実施の形態に限らず、リモートデータにウェブブラウザ1001でサポートしていない種類のデータが含まれていた場合にも、リモートデータの一部のデータを用いたローカルデータの同期処理をおこなってもよい。この処理に用いるデータは、ストレージサーバ405側で安全面を考慮して選択されてもよい。なお、図16に示す処理では、予期せぬ問題が起きないよう安全面などを考慮して、リモートデータにウェブブラウザ1001でサポートしていない種類のデータが含まれていた場合には、そのデータを用いたローカルデータとしての書き込みを抑制している。
図12は、ウェブブラウザ1001でウェブアプリケーションを実行している際に行われる処理のシーケンス図を示す。
S1201で、ウェブアプリケーションが、ウェブブラウザ1001に対して、ローカルデータに対する読み出し処理、または書き込み処理の呼び出しを行う。
S1202では、この呼び出しに応じて、ウェブブラウザ1001が予め拡張機能モジュール1002により登録されていたイベント処理を呼び出す。S1203で、拡張機能モジュール1002が、ローカルデータに対する読み出し処理前、または書き込み処理前のイベント処理を起動し、当該処理の中で、S1204で示す同期処理(図13)をさらに呼び出す。
S1205で、ウェブブラウザ1001は、S1203で呼び出された拡張機能モジュール1002のイベント処理の終了後、データストレージ108を介して、読み出し処理、または書き込み処理を実行する。その後、呼び出し元のウェブアプリケーションに処理を返す。
図13は、S1204の同期処理を説明するためのフローチャートである。
S1301、S1302の処理は、図7で示すS701、S702のウェブブラウザ101による処理を、拡張機能モジュール1002が実行している。処理の内容としては、前述と同様である。また、S1303の処理は、図8で示すS801のウェブブラウザ101による処理を、拡張機能モジュール1002が実行している。処理の内容としては、前述と同様である。
S1303の比較の結果、両者の更新日時が等しい、或は、ローカルデータもリモートデータも存在しない場合には、拡張機能モジュール1002の処理はS1305に進む。
S1303の比較の結果、リモートデータがローカルデータよりも新しい、或は、リモートデータは存在するがローカルデータは存在しない場合、S1305に拡張機能モジュール1002の処理が進む。S1303の比較の結果、ローカルデータがリモートデータよりも新しい、或は、ローカルデータは存在するがリモートデータは存在しない場合、S1304に拡張機能モジュール1002の処理が進む。S1304〜S1307の処理は、図8で示すS802〜S805のウェブブラウザ101による処理を、拡張機能モジュール1002が実行している。処理の内容としては、前述と同様である。
ここで、S1305での処理でウェブブラウザ1001のUI102を介して提供される警告メッセージ(図9)で、「キャンセル」ボタン902の押下が検出された場合には、機能拡張1002がS1309で、ウェブページの再ロードを実行する。この再ロードに際しては、実行後に処理が呼び出し側であるウェブアプリケーションに戻らず、図11のシーケンス図に示す処理が実行される。この処理によりローカルデータは、リモートデータで更新され、この更新データを使って、呼び出し元のウェブアプリケーションに対応するウェブページが再構成される。
S1308で、拡張機能モジュール1002は、ウェブアプリケーションからの要求が書き込み要求か否かを検査する。ここで、書き込み要求であった場合にはS1309に進み、書き込み要求でなく読み出し要求の場合には本同期処理を終了する。
S1309、S1310の処理は、図7(b)のS710、S711のウェブブラウザ101による処理を、拡張機能モジュール1002が実行している。処理の内容としては、前述と同様である。
図14は、拡張機能モジュール1002が、ウェブブラウザ1001で管理されるローカルデータに最初にアクセスする際に、ウェブブラウザ1001がUI012を介して提供する警告画面の例である。
図14で示す警告画面では、拡張機能モジュール1002によりローカルデータへのアクセスが行われようとしている旨のメッセージが含まれる。なお、拡張機能モジュール1002のプログラム名をこのメッセージに表示してもよい。
データストレージ108により格納されるローカルデータには、個人情報や機密情報が含まれる可能性がある。ウェブブラウザ1001は、拡張機能モジュール1002がローカルデータにアクセスするためのAPIを最初に呼び出した際に、この画面を表示することにより、拡張機能モジュール1002がユーザに無許可でローカルデータにアクセスすることを防止する。
ウェブブラウザ1001は、「はい」ボタン1401の押下を検出すると、拡張機能モジュール1002のローカルデータへのアクセスが許可された旨を記憶すると共に、呼び出されたAPIの実行を継続する。
一方で、「拡張機能を無効にする」ボタン1402の押下を検出すると、ウェブブラウザ1001は、拡張機能モジュール1002を無効にし、APIを実行しない。さらに、ローカルデータへのアクセスの契機となったイベントに対応する処理の呼び出しを強制終了した後、他の処理を継続する。例えば、図12で示すシーケンスでは、S1204の処理中に図14で示す警告画面が表示される。ここで、ユーザによる「拡張機能を無効にする」ボタン1402の押下を検出すると、ウェブブラウザ1001は、直ちにS1203の処理を強制終了し、S1202の、S1203の終了時点へと遷移する。即ち、拡張機能モジュール1002によるローカルデータへのアクセスは実行されないが、ウェブアプリケーションによるローカルデータへのアクセスは実行されることになる。
(応用例)
実施例1及び2に記載のウェブブラウザについては、それぞれの種類に応じて、ローカルデータとして格納可能なデータサイズに上限がある。
ストレージサービス側にリモートデータとして格納可能なデータであっても、同期処理のタイミングでウェブブラウザのローカルデータとして格納しようとしても、その上限により格納できない場合があるかもしれない。
そこで、ウェブブラウザ101や拡張機能モジュール1002が、リモートデータを取得する際に、上限サイズを超えるようならば、ローカルデータの中で更新日時が古いデータを削除することで同期処理を継続してもよい。なお、このような場合には、UI102を介して、確認画面を表示して、ユーザにローカルデータの削除を促してもよい。
(他の実施例)
本発明は、上述した実施形態を適宜組み合わせることにより構成された装置あるいはシステムやその方法も含まれるものとする。
ここで、本発明は、上述した実施形態の機能を実現する1以上のソフトウェア(プログラム)を実行する主体となる装置あるいはシステムである。また、その装置あるいはシステムで実行される上述した実施形態を実現するための方法も本発明の一つである。また、そのプログラムは、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給され、そのシステム或いは装置の1以上のコンピュータ(CPUやMPU等)によりそのプログラムが読み出され、実行される。つまり、本発明の一つとして、さらにそのプログラム自体、あるいは該プログラムを格納したコンピュータにより読み取り可能な各種記憶媒体も含むものとする。また、上述した実施形態の機能を実現する回路(例えば、ASIC)によっても、本発明は実現可能である。
101 ウェブブラウザ
201 モバイル端末
301 パーソナルコンピュータ

Claims (14)

  1. 複数のウェブアプリケーションにより要求されたデータをローカルデータとして格納する機能をもつウェブブラウザが動作する情報処理端末であって、
    前記ローカルデータの送信を制限する条件として、スキーマ、ホスト、及びポートの組合せが特定される情報を前記ウェブブラウザに設定する設定手段と、
    前記ウェブアプリケーションとは異なるネットワーク上のストレージサービスに対して、前記設定手段により設定された条件に合致する1以上のウェブアプリケーションに対応するローカルデータを除く、格納済みのローカルデータの少なくとも一部のデータを送信する送信手段と、
    前記ストレージサービスから取得したデータを用いて、前記ローカルデータを更新する更新手段と、を有し、
    前記ストレージサービスでは、前記ウェブブラウザを介して取得されるアカウント情報とウェブアプリケーションの情報とに関連付けて、前記送信手段により送信されてきた前記データが管理されていることを特徴とする情報処理端末。
  2. 前記送信手段によるデータの送信は、前記ウェブアプリケーションに係るページのロード時、前記ウェブアプリケーションによるローカルデータの書き込み要求、及び前記ウェブアプリケーションによるローカルデータの読み出し要求の少なくとも何れかのタイミングで行われることを特徴とする請求項1に記載の情報処理端末。
  3. 前記更新手段による更新は、前記ウェブアプリケーションに係るページのロード時、前記ウェブアプリケーションによるローカルデータの書き込み要求、及び前記ウェブアプリケーションによるローカルデータの読み出し要求の少なくとも何れかのタイミングで行われることを特徴とする請求項1または2に記載の情報処理端末。
  4. 前記ローカルデータの更新日時と、当該ローカルデータに対応する前記ストレージサービスで管理されたデータの更新日時との比較を行う比較手段を更に有し、
    前記比較の結果、前記ローカルデータの更新日時の方が新しい場合には、前記送信手段によるデータの送信が行われ、
    前記比較の結果、前記ストレージサービスで管理されたデータの更新日時の方が新しい場合には、前記更新手段による前記ストレージサービスから取得したデータを用いた前記ローカルデータの更新が行われることを特徴とする請求項1乃至3のいずれか1項に記載の情報処理端末。
  5. 前記比較の結果、前記ストレージサービスで管理されたデータの更新日時の方が新しい場合に、前記ストレージサービスで管理されたデータを用いた前記ローカルデータの更新を行うかどうかを確認するための第1の画面を提供する第1の提供手段を更に有し、
    前記第1の画面を介した入力に応じて、前記更新手段による前記ストレージサービスから取得したデータを用いた前記ローカルデータの更新が行われることを特徴とする請求項4に記載の情報処理端末。
  6. 前記送信手段によるデータの送信を確認するための第2の画面を提供する第2の提供手段を更に有することを特徴とする請求項1乃至5の何れか1項に記載の情報処理端末。
  7. 前記ストレージサービスから取得したデータをローカルデータとして格納するために、格納済みのローカルデータに含まれる一部のデータを削除する削除手段を更に有することを特徴とする請求項1乃至6の何れか1項に記載の情報処理端末。
  8. 前記ストレージサービスから取得したデータに、前記ウェブブラウザがサポートしていない種類のデータが含まれていた場合に、警告を示す第3の画面を提供する第3の提供手段を更に有することを特徴とする請求項1乃至7の何れか1項に記載の情報処理端末。
  9. 前記更新手段は、前記ストレージサービスから取得したデータに前記ウェブブラウザがサポートしていない種類のデータが含まれていない場合に、当該取得したデータを用いた更新を行うことを特徴とする請求項1乃至8の何れか1項に記載の情報処理端末。
  10. 前記送信手段及び前記更新手段が、前記ウェブブラウザのプラグインによる拡張された機能として実現されることを特徴とする請求項1乃至9の何れか1項に記載の情報処理端末。
  11. 前記拡張された機能により、最初に前記ローカルデータにアクセスする際に確認を促すための第4の画面を提供する第4の提供手段を更に有することを特徴とする請求項10に記載の情報処理端末。
  12. 前記ローカルデータには、localStorage、ファイルシステム、及びIndexedDBの少なくとも何れかのデータが含まれることを特徴とする請求項1乃至11の何れか1項に記載の情報処理端末。
  13. 複数のウェブアプリケーションにより要求されたデータをローカルデータとして記憶装置の所定の領域に格納する機能をもつウェブブラウザによる制御方法であって、
    前記ローカルデータの送信を制限する条件として、スキーマ、ホスト、及びポートの組合せが特定される情報を前記ウェブブラウザに設定する設定工程と、
    前記ウェブアプリケーションとは異なるネットワーク上のストレージサービスに対して、前記設定工程で設定された条件に合致する1以上のウェブアプリケーションに対応するローカルデータを除く、格納済みのローカルデータの少なくとも一部のデータを送信する送信工程と、
    前記ストレージサービスから取得したデータを用いて、前記ローカルデータを更新する更新工程と、を有し、
    前記ストレージサービスでは、前記ウェブブラウザを介して取得されるアカウント情報とウェブアプリケーションの情報とに関連付けて、前記送信工程で送信された前記データが管理されていることを特徴とする制御方法。
  14. 請求項1乃至12の何れか1項に記載の手段としてコンピュータを機能させるためのプログラム。
JP2014162997A 2014-08-08 2014-08-08 情報処理端末、その制御方法及びプログラム Expired - Fee Related JP6482204B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2014162997A JP6482204B2 (ja) 2014-08-08 2014-08-08 情報処理端末、その制御方法及びプログラム
US14/819,215 US20160044137A1 (en) 2014-08-08 2015-08-05 Information processing terminal and control method therefor
CN201510475703.4A CN105373575A (zh) 2014-08-08 2015-08-05 信息处理终端及其控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014162997A JP6482204B2 (ja) 2014-08-08 2014-08-08 情報処理端末、その制御方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2016038802A JP2016038802A (ja) 2016-03-22
JP6482204B2 true JP6482204B2 (ja) 2019-03-13

Family

ID=55268347

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014162997A Expired - Fee Related JP6482204B2 (ja) 2014-08-08 2014-08-08 情報処理端末、その制御方法及びプログラム

Country Status (3)

Country Link
US (1) US20160044137A1 (ja)
JP (1) JP6482204B2 (ja)
CN (1) CN105373575A (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6701038B2 (ja) * 2016-09-08 2020-05-27 アズビル株式会社 監視装置
US10931675B2 (en) * 2018-04-10 2021-02-23 Microsoft Technology Licensing, Llc Local API access authorization
KR20200119601A (ko) * 2019-04-10 2020-10-20 현대모비스 주식회사 차량의 바이너리 데이터 처리 장치 및 방법
US11366879B2 (en) * 2019-07-08 2022-06-21 Microsoft Technology Licensing, Llc Server-side audio rendering licensing
CN112685487B (zh) * 2021-01-15 2022-09-16 金现代信息产业股份有限公司 在浏览器环境下通过IndexedDB模拟关系型数据库的方法和装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006092116A (ja) * 2004-09-22 2006-04-06 Canon Inc Webサーバ及びその制御方法
US20070112814A1 (en) * 2005-11-12 2007-05-17 Cheshire Stuart D Methods and systems for providing improved security when using a uniform resource locator (URL) or other address or identifier
US7912916B2 (en) * 2006-06-02 2011-03-22 Google Inc. Resolving conflicts while synchronizing configuration information among multiple clients
US7873748B2 (en) * 2007-11-30 2011-01-18 International Business Machines Corporation Synchronization of locally and remotely stored browser data
JP5528229B2 (ja) * 2010-06-23 2014-06-25 キヤノン株式会社 文書生成装置、文書生成システム、文書アップロード方法及びプログラム
US8224823B1 (en) * 2010-06-30 2012-07-17 A9.Com, Inc. Browsing history restoration
JP2012185651A (ja) * 2011-03-04 2012-09-27 Canon Inc 情報処理装置、情報処理システム、情報処理装置の制御方法、及びプログラム
JP5476326B2 (ja) * 2011-03-08 2014-04-23 株式会社日立製作所 ウェブ操作記録・再現方法および装置
US8621091B1 (en) * 2011-12-15 2013-12-31 Google Inc. System and method for synchronizing settings and state information for a browser component
US9535755B2 (en) * 2012-03-09 2017-01-03 Google Inc. Tiers of data storage for web applications and browser extensions
CN103379115B (zh) * 2012-04-28 2018-01-05 盛乐信息技术(上海)有限公司 一种本地存储与网络存储的数据同步方法和设备
EP2847686B1 (en) * 2012-05-07 2019-10-30 Digital Guardian, Inc. Enhanced document and event mirroring for accessing content
JPWO2013171858A1 (ja) * 2012-05-16 2016-01-07 株式会社Synclogue 同期プログラム及び同期方法
WO2013183159A1 (ja) * 2012-06-08 2013-12-12 株式会社Synclogue 同期プログラム及び同期方法

Also Published As

Publication number Publication date
CN105373575A (zh) 2016-03-02
JP2016038802A (ja) 2016-03-22
US20160044137A1 (en) 2016-02-11

Similar Documents

Publication Publication Date Title
US10282522B2 (en) Cross-application authentication on a content management system
US11340961B2 (en) Dynamically integrating a client application with third-party services
US10102306B2 (en) Patching base document object model (DOM) with DOM-differentials to generate high fidelity replay of webpage user interactions
JP2019012529A (ja) ドキュメント管理及びコラボレーション・システム
US20130262696A1 (en) Proxy server apparatus, client terminal apparatus, remote access system, transfer control method, access method, and recording medium
US10108787B2 (en) View-based expiration of shared content
JP6482204B2 (ja) 情報処理端末、その制御方法及びプログラム
WO2013169827A1 (en) Enhanced document and event mirroring for accessing content
US11882154B2 (en) Template representation of security resources
WO2015154666A1 (zh) 桌面展示网页片段的方法及截取网页片段至桌面展示系统
US10341346B2 (en) Information processing method, information processing apparatus, and storage medium
CN104978378B (zh) 一种网页访问方法和装置
US10481792B2 (en) Secure authenticated connected keyboard
JP2016051329A (ja) コンテンツ管理装置及びその制御方法
US9537850B2 (en) Information processing apparatus, information processing method, and storage medium
US10084881B2 (en) Information processing terminal and browser storage management method
JP2011118626A (ja) 情報処理システム、ファイル管理サーバ、制御方法、プログラム。
US10193950B2 (en) Network system and control method
US20200404004A1 (en) Browsing management server, browsing management method, and browsing management system
US9621630B2 (en) Distribution method, distribution apparatus, and terminal apparatus
JP6358049B2 (ja) ローカルストレージ同期方法、ローカルストレージ同期装置およびローカルストレージ同期プログラム
WO2013088534A1 (ja) クライアントからネットワークを介して携帯端末にアクセスするためのサーバ、方法、及び、コンピュータを該サーバとして機能させるプログラム
CN118377630A (zh) 远程控制设备的方法、装置、计算机设备和存储介质
JP5504452B1 (ja) 営業情報同期システム
JP2015031977A (ja) データ表示システム及びデータ表示方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170720

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180515

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180626

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180822

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190115

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190212

R151 Written notification of patent or utility model registration

Ref document number: 6482204

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees