JP6736130B2 - アンドロイドベースのポップアッププロンプト方法及びデバイス - Google Patents

アンドロイドベースのポップアッププロンプト方法及びデバイス Download PDF

Info

Publication number
JP6736130B2
JP6736130B2 JP2018549247A JP2018549247A JP6736130B2 JP 6736130 B2 JP6736130 B2 JP 6736130B2 JP 2018549247 A JP2018549247 A JP 2018549247A JP 2018549247 A JP2018549247 A JP 2018549247A JP 6736130 B2 JP6736130 B2 JP 6736130B2
Authority
JP
Japan
Prior art keywords
activity
popup
component
onpause
popup component
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.)
Active
Application number
JP2018549247A
Other languages
English (en)
Other versions
JP2019516161A5 (ja
JP2019516161A (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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Publication of JP2019516161A publication Critical patent/JP2019516161A/ja
Publication of JP2019516161A5 publication Critical patent/JP2019516161A5/ja
Application granted granted Critical
Publication of JP6736130B2 publication Critical patent/JP6736130B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Telephone Function (AREA)
  • Stored Programmes (AREA)

Description

本願は、2016年3月16日に提出され「アンドロイドベースのポップアッププロンプト方法及びデバイス」と題された中国特許出願第201610150785.X号の優先権を主張し、上記中国特許出願は参照によってその全体が本願に組み込まれる。
本願は通信分野、特に、アンドロイド(登録商標)ベース(Android(登録商標)−based)のポップアッププロンプト方法及びデバイスに関する。
アンドロイド(登録商標)システムでは、ポップアップをユーザへ出力する必要のあるイベントの場合、システムは、プロンプトテキストで記入されたポップアップをユーザへ出力できる。例えば、イベントは、シングルデバイス(single device)ログインイベントであってもよい。シングルデバイスログインとは、通常、ユーザがアカウントを用いて1つのデバイスにのみログインできることを意味する。ユーザがいったん同じアカウントを使って別のデバイスにログインすると、ユーザは使用中のデバイスのログイン状態から強制的に退去させられる。シングルデバイスログインイベントを検出すると、システムは、現在のログインアカウントが既に他のデバイスへのログインに用いられていることをユーザに示すために、ユーザへポップアップを出力できる。この場合、ポップアップ内のプロンプトテキストには、ユーザがログイン状態から強制的に退去させられる理由が含まれてもよい。しかし、関連技術では、アンドロイド(登録商標)システムがユーザへポップアップを出力すると、出力されたポップアップが別のポップアップ又は別のページによって隠されてしまう可能性があり、アプリケーション(APP)やシステム端末の基本機能の、ユーザによる使用に悪影響を及ぼす。
本願は、アンドロイド(登録商標)ベースのポップアッププロンプト方法を提供するものであって、この方法は:ポップアップによって促されるトリガイベントが検出されると、アクティビティポップアップコンポーネントを起動して前記ポップアップを出力するステップであって、前記アクティビティポップアップコンポーネントの起動モードはシングルタスクモードとして事前設定される、前記出力するステップと;前記アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されているかどうかを特定するステップと;前記アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されている場合、前記アクティビティポップアップコンポーネントを再起動して、前記ポップアップがシステムフロントエンドに表示されるように、前記アクティビティポップアップコンポーネントの、アクティビティスタックの一番上への移動をトリガするステップと;を含む。
オプションとして、前記アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されているかどうかを特定する前記ステップは:前記アクティビティポップアップコンポーネントのonPause又はonStopメソッドが呼び出されたかどうかを特定するステップと;前記アクティビティポップアップコンポーネントの前記onPause又はonStopメソッドが呼び出されると、前記アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されている、と特定するステップと;を含む。
オプションとして、前記アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されている場合、前記アクティビティポップアップコンポーネントを再起動する前記ステップは:前記アクティビティポップアップコンポーネントの前記onPauseメソッドが呼び出されると、前記onPauseメソッドに基づいて前記アクティビティポップアップコンポーネントを再起動するステップと;前記アクティビティポップアップコンポーネントの前記onStopメソッドが呼び出されると、前記アクティビティポップアップコンポーネントの前記onPauseメソッドが既に呼び出されているかどうかを特定し、前記onPauseメソッドが呼び出されていない場合、前記onStopメソッドに基づいて前記アクティビティポップアップコンポーネントを再起動するステップと;を含む。
オプションとして、前記onPauseメソッド又は前記onStopメソッドに基づいて前記アクティビティポップアップコンポーネントを再起動する前記ステップは:前記onPauseメソッド又は前記onStopメソッドの前記呼び出しが前記アクティビティポップアップコンポーネントに対する無効化イベントによってトリガされたかどうかを特定するステップと;前記onPauseメソッド又は前記onStopメソッドの前記呼び出しが前記アクティビティポップアップコンポーネントに対する前記無効化イベントによってトリガされていない場合、前記onPauseメソッド又は前記onStopメソッドに基づいて前記アクティビティポップアップコンポーネントを再起動するステップと;を含む。
オプションとして、前記onPauseメソッド又は前記onStopメソッドの呼び出しが前記アクティビティポップアップコンポーネントに対する前記無効化イベントによってトリガされている場合、前記アクティビティポップアップコンポーネントを通常通り無効化するステップを更に含む。
本願は、アンドロイド(登録商標)ベースのポップアッププロンプトデバイスを提供するものであって、このデバイスは:ポップアップによって促されるトリガイベントが検出されると、アクティビティポップアップコンポーネントを起動して前記ポップアップを出力するように構成され、前記アクティビティポップアップコンポーネントの起動モードはシングルタスクモードとして事前設定される、起動モジュールと;前記アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されているかどうかを特定するように構成された特定モジュールと;前記アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されている場合、前記アクティビティポップアップコンポーネントを再起動して、前記ポップアップがシステムフロントエンドに表示されるように前記アクティビティポップアップコンポーネントの、アクティビティスタックの一番上への移動をトリガするように構成された再起動モジュールと;を含む。
オプションとして、前記特定モジュールは:前記アクティビティポップアップコンポーネントのonPause又はonStopメソッドが呼び出されたかどうかを特定するように;及び、前記アクティビティポップアップコンポーネントの前記onPause又はonStopメソッドが呼び出されている場合、前記アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されていると特定するように;構成される。
オプションとして、前記再起動モジュールは:前記アクティビティポップアップコンポーネントの前記onPauseメソッドが呼び出されている場合、前記onPauseメソッドに基づいて前記アクティビティポップアップコンポーネントを再起動するように;及び、前記アクティビティポップアップコンポーネントの前記onStopメソッドが呼び出されている場合、前記アクティビティポップアップコンポーネントの前記onPauseメソッドが既に呼び出されているかどうかを特定し、前記onPauseメソッドが呼び出されていない場合、前記onStopメソッドに基づいて前記アクティビティポップアップコンポーネントを再起動するように;構成される。
オプションとして、前記再起動モジュールは:前記onPauseメソッド又は前記onStopメソッドの前記呼び出しが前記アクティビティポップアップコンポーネントに対する無効化イベントによってトリガされたかどうかを特定するように;及び、前記onPauseメソッド又は前記onStopメソッドの前記呼び出しが前記アクティビティポップアップコンポーネントに対する前記無効化イベントによってトリガされていない場合、前記onPauseメソッド又は前記onStopメソッドに基づいて前記アクティビティポップアップコンポーネントを再起動するように;更に構成される。
オプションとして、本デバイスは:前記onPauseメソッド又は前記onStopメソッドの前記呼び出しが前記アクティビティポップアップコンポーネントに対する前記無効化イベントによってトリガされている場合、前記アクティビティポップアップコンポーネントを通常通り無効化するように構成された無効化モジュールを更に備える。
本願では、ポップアップによって促されるトリガイベントが検出されると、アクティビティポップアップコンポーネントが起動してポップアップを出力するが、そのアクティビティポップアップコンポーネントの起動モードはシングルタスクモードとして事前設定される。アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されているかどうかが特定される。アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されている場合、そのアクティビティポップアップコンポーネントが再起動されて、ポップアップがシステムフロントエンドに表示されるようにアクティビティポップアップコンポーネントのアクティビティスタックの一番上への移動をトリガする。したがって、アクティビティポップアップコンポーネントが起動してユーザにポップアップが出力された後、ポップアップは隠されることなく、常に、システムのフロントエンドに表示されることを確保できる。
図1は、本願の実施に係る、アンドロイド(登録商標)ベースのポップアッププロンプト方法を示すフローチャートである。
図2は、本願の実施に係る、アンドロイド(登録商標)ベースのポップアッププロンプトデバイスを示す論理ブロック図である。
図3は、本願の実施に係る、アンドロイド(登録商標)ベースのポップアッププロンプトデバイスを含む端末のハードウェアを示す構造図である。
関連技術では、アンドロイド(登録商標)システムは、通常、以下の各実施においてユーザへポップアップを出力できる。
実施において、アンドロイド(登録商標)システムはウィンドウコンポーネントを用いてポップアップを出力できる。
ウィンドウコンポーネントを用いるポップアップ出力は、どのページでも出力でき、別のページによって隠されることはない。しかし、通常、ユーザは、ウィンドウコンポーネントを用いて行うポップアップ出力の設定が可能である。したがって、ユーザがシステム内のポップアップを手動で禁止すると、システムはポップアップを出力できなくなる。
別の実施では、アンドロイド(登録商標)システムはアクティビティ(Activity)コンポーネントを用いてポップアップを出力できる。
アンドロイド(登録商標)システムでは、アクティビティコンポーネントがユーザとの対話を受け持つ。コンポーネントは対話インターフェースを提供し、対話(インタラクション)インターフェースにいくつかの対話ウィジェット(ボタンやポップアップなど)を表示できる。ユーザは、これらの対話ウィジェットを操作して、端末と対話することができる。端末は、バックエンド上でこれらの対話ウィジェットに対するユーザのイベントを検出して現在の対話に対応するタスクを完遂できる。端末はアクティビティコンポーネントを用いてポップアップを出力するので、システム内の任意のアクティビティコンポーネントをポップアップの本体として用いて、任意のページにポップアップを出力できる。しかし、アクティビティコンポーネントは、通常、アクティビティスタック内で管理される。いったんアクティビティコンポーネントが、アクティビティスタック内の別のアクティビティコンポーネントによって隠される、つまり、他のアクティビティコンポーネントがアクティビティスタックの一番上になり、アクティビティコンポーネントがもはやアクティビティスタックの一番上でなくなり、アクティビティコンポーネントによって出力されたポップアップが別のポップアップ又はインターフェースによって隠されると、システムのフロントエンドに表示できず、アプリケーション又はシステムの基本機能の使用に悪影響を及ぼすことになる。
別の実施では、アンドロイド(登録商標)システムは、ポップアップを固定ページへ出力できる。
しかし、ポップアップが固定ページに出力されると、これには柔軟性がなく、対話エクスペリエンスは貧弱になる。例えば、ログインページにポップアップが出力された場合、出力されたポップアップはログインページにのみ表示される。システムがユーザへポップアップを出力した後、システムフロントエンドが別のページを表示した場合、ユーザが能動的にログインページへ切り替えない限り、システムによって出力されたポップアップを見ることができない。その結果、システムによって出力されたポップアップを、出力の時点でユーザに知らせることができない。
これを考慮して、本願はアンドロイド(登録商標)ベースのポップアッププロンプト方法を提供する。ポップアップによって促されるトリガイベントが検出されると、アクティビティポップアップコンポーネントが起動されてポップアップを出力するが、そのアクティビティポップアップコンポーネントの起動モードはシングルタスクモードとして事前設定される。アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されているかどうかが特定される。アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されている場合、そのアクティビティポップアップコンポーネントは再起動されて、ポップアップがシステムフロントエンドに表示されるようにアクティビティポップアップコンポーネントのアクティビティスタックの一番上への移動をトリガする。本願では、アクティビティポップアップコンポーネントがシングルタスクモードになっているため、アクティビティポップアップコンポーネントは、再起動後直ちにアクティビティスタックの一番上へ移すことができる。したがって、アクティビティポップアップコンポーネントが起動してユーザへポップアップが出力された後、ポップアップが隠されることなく、常にシステムのフロントエンドに表示されることを確保できる。
加えて、本願では、ポップアップはもはやアンドロイド(登録商標)システムのウィンドウコンポーネントに基づいては出力されず、ユーザはもはやポップアップを設定できなくなり、これにより、ユーザがシステム内でのポップアップを手動で禁止することが理由でポップアップを出力できない、という問題は回避される。
さらに、本願ではアクティビティポップアップコンポーネントを用いてポップアップを出力するため、システム内の任意のアクティビティコンポーネントを本体として用いて任意のページにポップアップを出力でき、高い柔軟性を実現できる。
本願を、具体的なアプリケーションシナリオを参照に、具体的な実施を用いて、以下説明する。
図1を参照すると、図1は、本願の実施に係る、アンドロイド(登録商標)ベースのポップアッププロンプト方法を示す。この方法は端末に適用され、以下のステップを含む。
ステップ101:ポップアップによって促されるトリガイベントが検出された場合、アクティビティポップアップコンポーネントを起動してポップアップを出力させ、その際アクティビティポップアップコンポーネントの起動モードをシングルタスクモードに事前設定する。
本願において、端末とは、アンドロイド(登録商標)システムを走らせるインテリジェント端末、例えばスマートフォン又はタブレットコンピュータなどの移動端末、を含むことができる。
ポップアップによって促されるトリガイベントは、端末システムによって検出されるイベントを含むことができ、ポップアップを出力することによってユーザが促される必要がある。ポップアップによって促されるトリガイベントは、様々なアプリケーションシナリオにおける様々なタイプのイベントを含むことができる。
例えば、シングルデバイスログインアプリケーションシナリオでは、ポップアップによって促されるトリガイベントには、シングルデバイスログインイベントが含まれている可能性がある。このアプリケーションシナリオでは、ユーザが同じログインアカウントを用いて別の端末にログインすると、使用中の端末はログイン状態を退出し、ユーザにポップアップを出力して、これを、現在のログイン状態からの退出理由とともにユーザに示す。
別の実施例については、着信コール応答アプリケーションシナリオにおいて、ポップアップによって促されるトリガイベントを、着信コールイベントが含むことができる。着信コールを検出すると、端末システムはユーザにポップアップを出力できる。この場合、ユーザは、ポップアップに対する対応操作を実行して着信コールに応答できる又は着信コールを拒否できる(例えば、上又は下へスライドする)。
本願において、端末は、さらに所定のアクティビティポップアップコンポーネントを用いて、ユーザへポップアップを出力できる。ポップアップによって促されるトリガイベントを検出した後、端末は、アクティビティポップアップコンポーネントを起動して、ポップアップを出力するために用いられるアクティビティインスタンスを作成し、次いでインスタンスに基づいてポップアップにプロンプトテキストを入力し、プロンプトテキストをユーザへ出力できる。
アンドロイド(登録商標)システムでは、アクティビティコンポーネントの起動モード(launchMode)には、通常、4種類のモード、即ち、標準モード、singleTopモード、singleTaskモード(つまりシングルタスクモード)、及びsingleInstanceモードが含まれる。
アクティビティコンポーネントがsingleTaskモードにある場合、アクティビティポップアップコンポーネントは一意のアクティビティインスタンスのみを実行できる。
singleTaskモードでは、アクティビティポップアップコンポーネントの起動後、システムはアクティビティスタック内にアクティビティポップアップコンポーネントに対応するアクティビティインスタンスが存在するかどうかを特定する。アクティビティポップアップコンポーネントに対応するアクティビティインスタンスは、現在のアクティビティスタック内に既に存在するので、singleTaskモードでは、システムは新しいアクティビティインスタンスを作成せず、アクティビティスタックからアクティビティポップアップコンポーネントを隠すことになる別のアクティビティコンポーネントを削除し、既存のアクティビティインスタンスに対応するアクティビティポップアップコンポーネントを、アクティビティスタックの一番上へ移す。この場合、アクティビティインスタンスに基づくポップアップ出力は、システムのフロントエンドに再び表示され、隠されることはない。
したがって、本願では、アクティビティポップアップコンポーネントによるポップアップ出力を別のポップアップ又はページによって隠されないように、アクティビティポップアップコンポーネントの起動モードは、初期状態でsingleTaskモードに設定できる。
ステップ102:アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されているかどうかを特定する。
アンドロイド(登録商標)システムでは、アクティビティコンポーネントのライフサイクルには、通常は、running(実行)状態、Pause(一時停止)状態、Stop(停止)状態、及びDestroy(破壊、廃止)状態(無効)が含まれる。
running(実行)状態は、アクティビティコンポーネントを見ることができ、ユーザと対話できる状態である。アクティビティコンポーネントが起動すると、初期状態はrunning状態となる。この場合、アクティビティコンポーネントはアクティビティスタックの一番上に配置され、システムフロントエンド(画面のフロントエンド)に表示される。
Pause(一時停止)状態は、アクティビティコンポーネントが、フルサイズではない、又は半透明である、別のアクティビティコンポーネントによって隠され、もはやアクティビティスタックの一番上にはないが、それでもまだ見ることができ、ユーザと対話ができる状態である。
Stop(停止)状態は、アクティビティコンポーネントが別のアクティビティコンポーネントによって完全に隠され、アクティビティスタックの一番上にはなく、アクティビティコンポーネントの対話インターフェースが完全に隠されている状態である。
Destroy(破壊、廃止)状態は、アクティビティコンポーネントが無効になった状態である。
4つの動作状態は、アクティビティコンポーネントに対するユーザの操作により切り替えることができる。
アンドロイド(登録商標)システムでは、アクティビティコンポーネントの起動後、ユーザが操作を実行することによって新しいアクティビティコンポーネントを起動する場合、新しいアクティビティコンポーネントはアクティビティスタックの一番上に移って、元のアクティビティコンポーネントを隠す。この場合、システムはonPauseメソッドを呼び出して元のアクティビティコンポーネントをPause状態に切り替える。
元のアクティビティコンポーネントが完全に隠れている場合、システムはonStopメソッドを呼び出して、元のアクティビティコンポーネントをStop状態に切り替える。
元のアクティビティコンポーネントがPause状態又はStop状態にあり、システムメモリが不足していると、システムはonDestroyメソッドを呼び出して、アクティビティコンポーネントをDestroy状態に切り替えてアクティビティコンポーネントを無効にする。
したがって、実施において、システムはアクティビティポップアップコンポーネントのonPauseメソッド又はonStopメソッドが呼び出されたかどうかを特定することによりアクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されているかどうかを特定できる。
アクティビティポップアップコンポーネントのonPause又はonStopメソッドが呼び出されると、このアクティビティポップアップコンポーネントは、現在、別のアクティビティコンポーネントによって隠されており、もはやスタックの一番上にはない、と特定できる。
ステップ103:アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されている場合、アクティビティポップアップコンポーネントを再起動して、ポップアップがシステムフロントエンドに表示されるように、アクティビティポップアップコンポーネントの、アクティビティスタックの一番上への移動をトリガする。
この実施では、アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されている、と特定すると、システムはアクティビティポップアップコンポーネントを再起動できる。アクティビティポップアップコンポーネントはsingleTaskモードとして事前に設定されているため、アクティビティポップアップコンポーネントを再起動した後、システムはアクティビティスタックからアクティビティポップアップコンポーネントを隠すことになる別のアクティビティコンポーネントを削除する。
この場合、アクティビティポップアップコンポーネントはアクティビティスタックの一番上へ再び移され、アクティビティポップアップコンポーネントの一意のアクティビティインスタンスに基づいて、ポップアップ出力がシステムのフロントエンドに再表示され、隠されることはない。
実施において、アクティビティポップアップコンポーネントのonPauseメソッドが呼び出された、とシステムが特定した場合、システムは、アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されていることを確認できる。
この場合、アクティビティポップアップコンポーネントを再起動するロジックは、事前にonPauseメソッドにロードできる。例えば、開発者は、onPause()メソッド内でアクティビティポップアップコンポーネントを再起動するために用いられる実行コードを編集できる。onPauseメソッドを呼び出した後、システムはアクティビティポップアップコンポーネントを再起動できる。
別の実施では、アクティビティポップアップコンポーネントのonStopメソッドが呼び出された、とシステムが特定した場合、システムは、アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されていることを確認できる。アクティビティポップアップコンポーネントを再起動するロジックは、事前にonStopメソッドにもロードできる。
アンドロイド(登録商標)システムでは、システムがonPauseメソッドとonStopメソッドとを呼び出すとき、システムは、通常、onStopメソッドの前にonPauseメソッドを呼び出す(呼び出し順序はアンドロイド(登録商標)システムの基本的な処理メカニズムである)。しかし、同時ポップアップシナリオ(つまり、アクティビティポップアップコンポーネントが出力するポップアップ出力は、アクティビティポップアップコンポーネントがポップアップを出力するときだけ、別のアクティビティコンポーネントのポップアップによって隠される)等のアプリケーションシナリオによっては、システムは、onPauseメソッドとonStopメソッドとの呼出し順序の間に異常な作動をする可能性がある。具体的には、システムはonPauseメソッドを無視して、onStopメソッドを直接に呼び出すことができる。
したがって、これらの異常なアプリケーションシナリオでは、onStopメソッドにロードされた再起動ロジックを用いてアクティビティポップアップコンポーネントを繰り返し処理することを避けるため、システムが、アクティビティポップアップコンポーネントのonStopメソッドが呼び出された、と特定した場合、システムは、アクティビティポップアップコンポーネントのonPauseメソッドが呼び出されたかどうかをさらに特定できる。アクティビティポップアップコンポーネントのonPauseメソッドが既に呼び出されている場合、onPauseメソッドにロードされた再起動ロジックを実行することによって、アクティビティポップアップコンポーネントが既に処理されていることを示している。この場合、システムは、onStopメソッドでロードされた再起動ロジックを繰り返し実行して、アクティビティポップアップコンポーネントを繰り返し処理することはもはやできない。
もちろん、アクティビティポップアップコンポーネントのonPauseメソッドが呼び出されていない場合、システムにおいて異常な呼出しを発生することが可能であり、システムは、onStopメソッドにロードされた再起動ロジックを正常に実行し、アクティビティポップアップコンポーネントを再起動できる。
システムが、アクティビティポップアップコンポーネントのクラスファイルに印を追加し、次いでクラスファイルに対応する印があるかどうかをチェックして、アクティビティポップアップコンポーネントのonPauseメソッドが既に呼び出されたかどうかを特定できる点は特に留意すべきである。
例えば、実施中に、onPauseメソッドにロードされた再起動ロジックを呼び出すことによって、システムがアクティビティポップアップコンポーネントを完全に処理した後、アクティビティポップアップのクラスファイルに印を追加できる。この印を用いて、アクティビティポップアップコンポーネントがonPauseメソッドにロードされた再起動ロジックに基づいて既に処理されていることを示す。
アクティビティポップアップコンポーネントのonStopメソッドが呼び出された、とシステムが特定した場合、システムはアクティビティポップアップコンポーネントのクラスファイルに印があるかどうかをさらにチェックして、アクティビティポップアップコンポーネントのonPauseメソッドが既に呼び出されているかどうか確認できる。クラスファイルに印がある場合、アクティビティポップアップコンポーネントがonPauseメソッドにロードされた再起動ロジックに基づいて既に処理されていることを意味し、繰り返し処理する必要はない。
このメソッドを用いることにより、onPauseメソッドとonStopメソッドとを呼び出すシーケンスに異常が発生するというアプリケーションシナリオにおいて、onStopメソッドでロードされた再起動ロジックを用いることによってアクティビティポップアップコンポーネントが繰り返し処理されることを防げることが分かる。
先に述べた実施では、システムがアクティビティポップアップコンポーネントのonPauseメソッド又はonStopメソッドが呼び出されたかどうかを特定して、アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されているかどうか特定できる詳細な工程が説明されている。アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されている、とシステムが特定すると、onPauseメソッド又はonStopメソッドにロードされた再起動ロジックを実行して、アクティビティポップアップコンポーネントを再起動する。そのため、アクティビティポップアップコンポーネントをsingleTaskモードとして事前設定すると、アクティビティポップアップコンポーネントをアクティビティスタックの一番上へ再び移すことができ、出力ポップアップをシステムフロントエンドに再表示でき、隠されることはない。
しかし、アンドロイド(登録商標)システムでは、アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されているときばかりでなく、ユーザがアクティビティポップアップコンポーネントを無効にするために通常の無効化イベント(disabling event)を実行したときにも、システムはonPauseメソッド又はonStopメソッドを呼び出す。
例えば、アクティビティコンポーネントが実行中の状態にあるとき、システムが、アクティビティコンポーネントに対するユーザの無効化イベントを検出する場合、システムはonPauseメソッドとonStopメソッドとを順番に呼び出して、アクティビティコンポーネントをPause状態及びStop状態へ連続的に切り替え、次いで自動的にonDestroyメソッドを呼び出して、アクティビティコンポーネントをDestroy状態へ切り替えてアクティビティコンポーネントを無効にする。
無効化イベントは、ユーザがアクティビティポップアップコンポーネントに対して行った無効化操作に対応するイベントを含むことができる。例えば、アンドロイド(登録商標)システムを走らせるタッチスクリーンスマートフォンに対して、無効化イベントは、携帯電話上のバックキーに対するユーザのタップイベントを含むことができる。具体的には、ユーザは携帯電話のバックキーをタップしてアクティビティポップアップコンポーネントを無効にできる。携帯電話システムは、バックエンドのバックキーに対するユーザのタップイベントを検出すると、onPauseメソッドとonStopメソッドとを順番に呼び出して、アクティビティコンポーネントをPause状態とStop状態へ連続的に切り替え、次いでonDestroyメソッドを自動的に呼び出してアクティビティコンポーネントを無効にできる。
ユーザが普通にアクティビティポップアップコンポーネントを無効にするアプリケーションシナリオでは、onPauseメソッド又はonStopメソッドの呼び出しは、アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されているというイベントによってではなく、ユーザの通常の無効化操作によってトリガされる、ということが分かる。したがって、アクティビティポップアップコンポーネントのonPauseメソッド又はonStopメソッドにロードされた再起動ロジックを実行してアクティビティポップアップコンポーネントを更に再起動すれば、ユーザの誤操作が発生する(具体的には、ユーザはアクティビティポップアップコンポーネントを無効にすることを望むが、代わりに再起動ロジックを用いることでアクティビティポップアップコンポーネントを再起動する)。
このため、誤操作を避けるために、アクティビティポップアップコンポーネントのonPauseメソッド又はonStopメソッドが呼び出された、とシステムが特定すると、システムがonPauseメソッド又はonStopメソッドにロードされている再起動ロジックに基づいてアクティビティポップアップコンポーネントを再起動する前に、システムは、onPauseメソッド又はonStopメソッドの呼び出しがアクティビティポップアップコンポーネントの無効化イベントのためにユーザによってトリガされたものかどうかを更に特定できる。
アクティビティポップアップコンポーネントの無効化イベントのために、ユーザによってonPauseメソッド又はonStopメソッドの呼び出しがトリガされた場合、これはアクティビティポップアップコンポーネントの通常の無効化手順であり、システムは、アクティビティポップアップコンポーネントを通常通り無効にでき、アクティビティポップアップコンポーネントの通常の無効化手順に応答し、アクティビティポップアップコンポーネントのonDestroyメソッドを自動的に呼び出してアクティビティポップアップコンポーネントを無効にできる。
もちろん、アクティビティポップアップコンポーネントの無効化イベントのために、ユーザによってonPauseメソッド又はonStopメソッドの呼び出しがトリガされない場合、システムはonPauseメソッド又はonStopメソッドにロードされた再起動ロジックを正常に実行でき、アクティビティポップアップコンポーネントを再起動し、アクティビティポップアップコンポーネントをアクティビティスタックの一番上へ移す。
システムはアクティビティポップアップコンポーネントのクラスファイルに印(マーク)を追加し、次いでクラスファイルに対応する印があるかどうかをチェックして、onPauseメソッド又はonStopメソッドの呼び出しがアクティビティポップアップコンポーネントの無効化イベントのためにユーザによってトリガされたかどうかを特定できる点は、特に留意すべき事項である。
例えば、実施中に、システムがアクティビティポップアップコンポーネントに対してユーザの無効化イベントを検出し、onPauseメソッドとonStopメソッドとを呼び出した後、システムはアクティビティポップアップコンポーネントのクラスファイルに印を追加できる。この印を用いて、onPauseメソッドとonStopメソッドとの呼び出しが、アクティビティポップアップコンポーネントの無効化イベントのためにユーザによってトリガされたことが示される。
このシステムは、onPauseメソッド又はonStopメソッドが呼び出されたと特定すると、アクティビティポップアップコンポーネントのクラスファイルに印があるかどうかを更にチェックできる。クラスファイルに印がある場合は、onPauseメソッド及びonStopメソッドの呼び出しが、アクティビティポップアップコンポーネントの無効化イベントのためにユーザによってトリガされたことを示す。この場合、システムは、アクティビティポップアップコンポーネントの通常の無効化手順に応答できる。
このメソッドを用いることにより、ユーザが普通にアクティビティポップアップコンポーネントを無効にするアプリケーションシナリオでは、アクティビティポップアップコンポーネントが再起動される場合、onPauseメソッド又はonStopメソッドにロードされた再起動ロジックを実行することによって引き起こされる誤作動の問題を回避できる、ということが分かる。
具体的なアプリケーションシナリオを参照して、先の実施における技術的解決策を以下詳細に説明する。
本願に示されるアプリケーションシナリオは、シングルデバイスログインアプリケーションシナリオと、着信コール応答アプリケーションシナリオとを含むことができる。
シングルデバイスログインアプリケーションシナリオでは、ポップアップによって促されるトリガイベントに、シングルデバイスログインイベントを含めることができる。このアプリケーションシナリオでは、ユーザはログインアカウントを用いて端末にログインすることができ、端末に対応するログインサーバはログインアカウントを検証できる。ログインサーバがログインアカウントを成功裏に検証した後、ユーザは端末にログインできる。
ユーザが同じログインアカウントを用いて別の端末にログインすると、ログインサーバは使用中のログイン端末へ通知メッセージを送信して、使用中のログイン端末をトリガしてログイン状態を終了させる。サーバによって送信された通知メッセージを受信した後、使用中のログイン端末は、シングルデバイスログインイベントが検出されたと見なすことができる。この場合、使用中のログイン端末はログイン状態を終了し、シングルデバイスログインポップアップをユーザへ出力できる。現在のログイン状態を終了する理由とともにユーザに促すために用いられるプロンプトテキストは、ポップアップ内に記入できる。
システムがアクティビティポップアップコンポーネントを起動し、シングルデバイスログインポップアップを出力すると、この出力したポップアップが別のポップアップ又はページによって隠されないように、システムは、アクティビティポップアップコンポーネントのrunning状態をデフォルトでsingleTaskモードに設定できる。
アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されている場合、システムはonPauseメソッド又はonStopメソッドを呼び出す。再起動ロジックは、事前にonPauseメソッド又はonStopメソッドにロードされている。onPauseメソッド又はonStopメソッドで再起動ロジックを実行した後、システムはアクティビティポップアップコンポーネントを再起動できる。
アクティビティポップアップコンポーネントは事前にsingleTaskモードに設定されているため、アクティビティポップアップコンポーネントを再起動すると、システムはアクティビティスタックからアクティビティポップアップコンポーネントを隠すことになる別のアクティビティコンポーネントを削除し、アクティビティポップアップコンポーネントを再びアクティビティスタックの一番上へ移す。この場合、シングルデバイスログインポップアップは再びシステムフロントエンドに表示され、別のポップアップ又はページによって隠されることはない。アクティビティポップアップコンポーネントを隠すことになる他のアクティビティコンポーネントはアクティビティスタックから直接に削除されるので、他のアクティビティコンポーネントに対応する対話インターフェースは表示できず、ユーザはページ変更を認識できない。
シングルデバイスログインアプリケーションシナリオでは、シングルデバイスログインポップアップが隠れているためにプロンプト情報をユーザへ遅れずに知らせることができない、という問題を、この方法を用いることで回避できることが分かる。
着信コール応答アプリケーションシナリオでは、ポップアップによって促されるトリガイベントに着信コールイベントが含まれている可能性がある。このアプリケーションシナリオでは、着信コールを検出すると、端末システムは、着信コールが検出されたことをユーザに知らせるために着信コールポップアップをユーザへ出力できる。着信コールのイニシエータとともにユーザを促すのに用いるプロンプトテキストをポップアップ内に記入できる。ユーザは、ポップアップに対応する操作、例えば、上又は下へスライドして着信コールに応答したり、着信を拒否したりすることができる。
このシナリオでは、着信コールを検出したときにシステムによって出力される着信コールポップアップが別のポップアップ又はページによって隠されている場合、ユーザが着信コールに応答するために着信コールポップアップに対して操作を実行できない、又は着信コールポップアップが隠されたときに端末のキー(ホームキーなど)が機能しなくなるという両立性の問題が起こり得る。
システムが着信コールポップアップを出力するためにアクティビティポップアップコンポーネントを起動すると、出力ポップアップが別のポップアップ又はページによって隠されないように、システムはアクティビティポップアップコンポーネントのrunning状態をデフォルトでsingleTaskモードに設定できる。
アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されている場合、システムはonPauseメソッド又はonStopメソッドを呼び出す。再起動ロジックは、事前にonPauseメソッド又はonStopメソッドにロードされている。onPauseメソッド又はonStopメソッドで再起動ロジックを実行した後、システムはアクティビティポップアップコンポーネントを再起動できる。
アクティビティポップアップコンポーネントは事前にsingleTaskモードに設定されているため、アクティビティポップアップコンポーネントを再起動すると、システムはアクティビティスタックからアクティビティポップアップコンポーネントを隠すことになる別のアクティビティコンポーネントを削除し、アクティビティポップアップコンポーネントを再びアクティビティスタックの一番上へ移す。この場合、着信コールポップアップは再びシステムのフロントエンドに表示され、別のポップアップやページによって隠されることはない。アクティビティポップアップコンポーネントを隠すことになる他のアクティビティコンポーネントは、アクティビティスタックから直接に削除されるため、他のアクティビティコンポーネントに対応する対話インターフェースは表示できず、ユーザはページ変更を認識できない。
着信コール応答アプリケーションシナリオでは、着信コールがポップアップによって隠されているためにユーザが着信コールに応答できない状況での端末キーとの両立性の問題が、この方法を用いることによって回避できることが分かる。
もちろん、上述のアプリケーションシナリオに加えて、説明された実施の技術的解決策は、別の同様のシナリオへ更に適用できる。具体的には、実際のアプリケーションでは、上述のアプリケーションシナリオに加えて、説明された実施における技術的解決策に適用可能なアプリケーションシナリオは、ユーザに促すためにポップアップを出力する必要があり、出力ポップアップが別のポップアップやページによって隠されているとシステム内のアプリや基本機能の使用に悪影響を及ぼす可能性があるすべてのアプリケーションシナリオを更に含むことができる。本願ではそれらを列挙しない。
先に述べた実施では、ポップアップによって促されるトリガイベントが検出されると、アクティビティポップアップコンポーネントが起動してポップアップが出力され、アクティビティポップアップコンポーネントの起動モードはシングルタスクモードとして事前設定される。アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されているかどうかが特定される。アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されている場合、そのアクティビティポップアップコンポーネントが再起動されてポップアップがシステムフロントエンドに表示されるように、アクティビティポップアップコンポーネントの、アクティビティスタックの一番上への移動をトリガする。本願では、アクティビティポップアップコンポーネントがシングルタスクモードになっているので、アクティビティポップアップコンポーネントを、再起動後直ちにアクティビティスタックの一番上へ移すことができる。したがって、アクティビティポップアップコンポーネントが起動されてユーザへポップアップが出力された後、ポップアップは隠されることなく、常にシステムフロントエンドに表示されることを確保できる。
加えて、本願では、ポップアップはもはやアンドロイド(登録商標)システムのウィンドウコンポーネントに基づいて出力されなくなり、ユーザはもはやポップアップを設定することが許されなくなる。これにより、ユーザがシステム内でのポップアップを手動で禁止することが理由でポップアップを出力できない、という問題は回避される。
さらに、本願ではアクティビティポップアップコンポーネントを用いてポップアップを出力するので、システム内の任意のアクティビティコンポーネントを本体として用いて任意のページにポップアップを出力でき、高い柔軟性を実現する。
これまで述べた方法の実施に対応して、本願は、デバイス(装置)の実施を更に提供する。
図2を参照すると、本願は、端末に適用されるアンドロイド(登録商標)ベースのポップアッププロンプトデバイス20を提供する。図3を参照すると、アンドロイド(登録商標)ベースのポップアッププロンプトデバイス20を含む端末のハードウェアアーキテクチャは、通常、CPU、メモリ、不揮発性メモリ、ネットワークインターフェース、内部バスなどを含む。実施例としてソフトウェア実装を用いることによって、アンドロイド(登録商標)ベースのポップアッププロンプトデバイス20は、通常、メモリにロードされたコンピュータプログラムとして理解することができる。CPUがコンピュータプログラムを実行した後、ソフトウェアとハードウェアとを組み合わせた論理デバイスが形成される。デバイス20は:ポップアップによって促されるトリガイベントが検出されると、アクティビティポップアップコンポーネントを起動し、ポップアップを出力するように構成され、アクティビティポップアップコンポーネントの起動モードはシングルタスクモードとして事前設定される、起動モジュール201と;アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されているかどうかを特定するように構成された特定モジュール202と;アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されている場合、そのアクティビティポップアップコンポーネントを再起動して、ポップアップをシステムのフロントエンドに表示するようにアクティビティポップアップコンポーネントのアクティビティスタックの一番上への移動をトリガするように構成された再起動モジュール203と;を含む。
本実施では、特定モジュール202は、アクティビティポップアップコンポーネントのonPause又はonStopメソッドが呼び出されたかどうかを特定するように;及び、アクティビティポップアップコンポーネントのonPause又はonStopメソッドが呼び出されると、アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されていると特定するように;構成される。
本実施では、再起動モジュール203は、アクティビティポップアップコンポーネントのonPauseメソッドが呼び出されると、onPauseメソッドに基づいてアクティビティポップアップコンポーネントを再起動するように;及び、アクティビティポップアップコンポーネントのonStopメソッドが呼び出されるとアクティビティポップアップコンポーネントのonPauseメソッドが既に呼び出されているかどうかを特定し、onPauseメソッドが呼び出されていない場合、onStopメソッドに基づいてアクティビティポップアップコンポーネントを再起動するように;構成される。
本実施では、再起動モジュール203は、更に、onPauseメソッド又はonStopメソッドの呼び出しがアクティビティポップアップコンポーネントに対する無効化イベントによってトリガされているかどうかを特定するように;及び、onPauseメソッド又はonStopメソッドの呼び出しがアクティビティポップアップコンポーネントの無効化イベントによってトリガされていない場合、onPauseメソッド又はonStopメソッドに基づいてアクティビティポップアップコンポーネントを再起動するように;構成される。
本実施において、デバイス20は、onPauseメソッド又はonStopメソッドの呼び出しがアクティビティポップアップコンポーネントの無効化イベントによってトリガされている場合、アクティビティポップアップコンポーネントを通常通り無効にするように構成された無効化モジュール204を更に含む。
当業者は、本明細書を検討し、本明細書に開示された本開示を実施した後に、本願の別の実施解決策を容易に理解できる。本願は、本願の任意の変形、機能、又は適応性のある変更を含むものとする。これらの変形、機能、又は適応性のある変更は、本願の一般原則に従うものであり、本願では開示されていない技術分野における共通知識又は一般的に用いられる技術手段を含む。本明細書及び実施は単なる実施例に過ぎず、本願の実際の範囲及び精神は、以下の特許請求の範囲によって示される。
本願は、上で説明した添付図面に示される正確な構造に限定されるものではなく、本願の範囲から逸脱することなく修正及び変更を行うことができることを理解されたい。本願の範囲は、添付の特許請求の範囲によってのみ限定される。
先の説明は本願の実施の例に過ぎず、本願を限定することを意図したものではない。本願の主旨及び原理から逸脱することなくなされるいかなる改変、均等物による置き換え又は改良も、本願の保護範囲内に含まれる。
以下、本発明の実施の態様の例を列挙する。
[第1の局面]
アンドロイド(登録商標)ベースのポップアッププロンプト方法であって:
ポップアップによって促されるトリガイベントが検出されると、アクティビティポップアップコンポーネントを起動して前記ポップアップを出力するステップであって、前記アクティビティポップアップコンポーネントの起動モードはシングルタスクモードとして事前設定される、前記出力するステップと;
前記アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されているかどうかを特定するステップと;
前記アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されている場合、前記アクティビティポップアップコンポーネントを再起動して、前記ポップアップがシステムフロントエンドに表示されるように、前記アクティビティポップアップコンポーネントの、アクティビティスタックの一番上への移動をトリガするステップと;を備える、
アンドロイド(登録商標)ベースのポップアッププロンプト方法。
[第2の局面]
前記アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されているかどうかを特定する前記ステップは:
前記アクティビティポップアップコンポーネントのonPause又はonStopメソッドが呼び出されたかどうかを特定するステップと;
前記アクティビティポップアップコンポーネントの前記onPause又はonStopメソッドが呼び出されると、前記アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されている、と特定するステップと;を備える、
第1の局面に記載のポップアッププロンプト方法。
[第3の局面]
前記アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されている場合、前記アクティビティポップアップコンポーネントを再起動する前記ステップは:
前記アクティビティポップアップコンポーネントの前記onPauseメソッドが呼び出されると、前記onPauseメソッドに基づいて前記アクティビティポップアップコンポーネントを再起動するステップと;
前記アクティビティポップアップコンポーネントの前記onStopメソッドが呼び出されると、前記アクティビティポップアップコンポーネントの前記onPauseメソッドが既に呼び出されているかどうかを特定し、前記onPauseメソッドが呼び出されていない場合、前記onStopメソッドに基づいて前記アクティビティポップアップコンポーネントを再起動するステップと;を備える、
第2の局面に記載のポップアッププロンプト方法。
[第4の局面]
前記onPauseメソッド又は前記onStopメソッドに基づいて前記アクティビティポップアップコンポーネントを再起動する前記ステップは:
前記onPauseメソッド又は前記onStopメソッドの前記呼び出しが前記アクティビティポップアップコンポーネントに対する無効化イベントによってトリガされたかどうかを特定するステップと;
前記onPauseメソッド又は前記onStopメソッドの前記呼び出しが前記アクティビティポップアップコンポーネントに対する前記無効化イベントによってトリガされていない場合、前記onPauseメソッド又は前記onStopメソッドに基づいて前記アクティビティポップアップコンポーネントを再起動するステップと;を備える、
第3の局面に記載のポップアッププロンプト方法。
[第5の局面]
前記onPauseメソッド又は前記onStopメソッドの呼び出しが前記アクティビティポップアップコンポーネントに対する前記無効化イベントによってトリガされている場合、前記アクティビティポップアップコンポーネントを通常通り無効化するステップを更に備える、
第4の局面に記載のポップアッププロンプト方法。
[第6の局面]
アンドロイド(登録商標)ベースのポップアッププロンプトデバイスであって:
ポップアップによって促されるトリガイベントが検出されると、アクティビティポップアップコンポーネントを起動して前記ポップアップを出力するように構成され、前記アクティビティポップアップコンポーネントの起動モードはシングルタスクモードとして事前設定される、起動モジュールと;
前記アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されているかどうかを特定するように構成された特定モジュールと;
前記アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されている場合、前記アクティビティポップアップコンポーネントを再起動して、前記ポップアップがシステムフロントエンドに表示されるように前記アクティビティポップアップコンポーネントの、アクティビティスタックの一番上への移動をトリガするように構成された再起動モジュールと;を備える、
アンドロイド(登録商標)ベースのポップアッププロンプトデバイス。
[第7の局面]
前記特定モジュールは:
前記アクティビティポップアップコンポーネントのonPause又はonStopメソッドが呼び出されたかどうかを特定するように;及び
前記アクティビティポップアップコンポーネントの前記onPause又はonStopメソッドが呼び出されている場合、前記アクティビティポップアップコンポーネントが別のアクティビティコンポーネントによって隠されていると特定するように;構成された、
第6の局面に記載のポップアッププロンプトデバイス。
[第8の局面]
前記再起動モジュールは:
前記アクティビティポップアップコンポーネントの前記onPauseメソッドが呼び出されている場合、前記onPauseメソッドに基づいて前記アクティビティポップアップコンポーネントを再起動するように;及び
前記アクティビティポップアップコンポーネントの前記onStopメソッドが呼び出されている場合、前記アクティビティポップアップコンポーネントの前記onPauseメソッドが既に呼び出されているかどうかを特定し、前記onPauseメソッドが呼び出されていない場合、前記onStopメソッドに基づいて前記アクティビティポップアップコンポーネントを再起動するように;構成された、
第7の局面に記載のポップアッププロンプトデバイス。
[第9の局面]
前記再起動モジュールは:
前記onPauseメソッド又は前記onStopメソッドの前記呼び出しが前記アクティビティポップアップコンポーネントに対する無効化イベントによってトリガされたかどうかを特定するように;及び
前記onPauseメソッド又は前記onStopメソッドの前記呼び出しが前記アクティビティポップアップコンポーネントに対する前記無効化イベントによってトリガされていない場合、前記onPauseメソッド又は前記onStopメソッドに基づいて前記アクティビティポップアップコンポーネントを再起動するように;更に構成された、
第8の局面に記載のポップアッププロンプトデバイス。
[第10の局面]
前記onPauseメソッド又は前記onStopメソッドの前記呼び出しが前記アクティビティポップアップコンポーネントに対する前記無効化イベントによってトリガされている場合、前記アクティビティポップアップコンポーネントを通常通り無効化するように構成された無効化モジュールを更に備える、
第9の局面に記載のポップアッププロンプトデバイス。
20、30 アンドロイド(登録商標)ベースのポップアッププロンプトデバイス
201 起動モジュール
202 特定モジュール
203 再起動モジュール
204 無効化モジュール

Claims (10)

  1. ポップアップコンポーネントを起動するコンピュータにより実施される方法であって、
    ポップアップウィンドウの表示要求の検出により生成されたトリガイベントを受信するステップと;
    前記受信したトリガイベントに基づいて、前記ポップアップウィンドウを出力するように構成されたアクティビティポップアップコンポーネントを起動するステップであって、前記アクティビティポップアップコンポーネントの起動モードは、ユーザの入力によって提供されるポップアップウィンドウ制限によりポップアップウィンドウ出力を禁止するシングルタスクモードとして事前に設定されている、ステップと;
    前記アクティビティポップアップコンポーネントのonPauseメソッドが呼び出されるかどうかを特定するステップと;
    前記アクティビティポップアップコンポーネントの前記onPauseメソッドが呼び出されたことを特定した場合に、前記アクティビティポップアップコンポーネントによって出力される前記ポップアップウィンドウが、既存のポップアップウィンドウによって隠されていることを特定するステップと;
    前記アクティビティポップアップコンポーネントによって出力される前記ポップアップウィンドウが、既存のポップアップウィンドウによって隠されていると特定した場合に、前記ポップアップウィンドウのアクティビティスタックの一番上への移動をトリガして、前記アクティビティスタックと少なくとも部分的に重なる前記ポップアップウィンドウが隠されることなく表示されることを強制するよう、前記onPauseメソッドに基づいて前記アクティビティポップアップコンポーネントを再起動するステップであって、前記アクティビティポップアップコンポーネントを再起動する前に、前記アクティビティポップアップコンポーネントの無効化イベントに対して前記onPauseメソッドがユーザによってトリガされるかどうかを特定し、前記無効化イベントに対して前記onPauseメソッドがユーザによってトリガされた場合には通常の無効化操作を処理する、ステップと;を備える、
    コンピュータにより実施される方法。
  2. 前記アクティビティポップアップコンポーネントを再起動するステップは、
    前記onPauseメソッドの呼び出しが、前記アクティビティポップアップコンポーネントの前記無効化イベントによってトリガされるかどうかを特定するステップと;
    前記onPauseメソッドの呼び出しが、前記アクティビティポップアップコンポーネントの前記無効化イベントによってトリガされないことを特定した上で、前記onPauseメソッドに基づいて前記アクティビティポップアップコンポーネントを再起動するステップと;を備える、
    請求項1に記載の方法。
  3. 前記onPauseメソッドの呼び出しが、前記アクティビティポップアップコンポーネントの前記無効化イベントによってトリガされると特定すると、通常通り前記アクティビティポップアップコンポーネントを無効にするステップを備える、
    請求項2に記載の方法。
  4. 前記トリガイベントは、アンドロイド(登録商標)デバイスで受信される、
    請求項1に記載の方法。
  5. 前記トリガイベントは、シングルデバイスログインイベントである、
    請求項1に記載の方法。
  6. ポップアップコンポーネントを起動する操作を実行するために、コンピュータシステムによって実行可能な1又は複数の命令を格納する非一時的なコンピュータ読取可能媒体であって、前記操作は、
    ポップアップウィンドウの表示要求の検出により生成されたトリガイベントを受信する操作と;
    前記受信したトリガイベントに基づいて、前記ポップアップウィンドウを出力するように構成されたアクティビティポップアップコンポーネントを起動する操作であって、前記アクティビティポップアップコンポーネントの起動モードは、ユーザの入力によって提供されるポップアップウィンドウ制限によりポップアップウィンドウ出力を禁止するシングルタスクモードとして事前に設定されている、操作と;
    前記アクティビティポップアップコンポーネントのonPauseメソッドが呼び出されるかどうかを特定する操作と;
    前記アクティビティポップアップコンポーネントの前記onPauseメソッドが呼び出されたことを特定した場合に、前記アクティビティポップアップコンポーネントによって出力される前記ポップアップウィンドウが、既存のポップアップウィンドウによって隠されていることを特定する操作と;
    前記アクティビティポップアップコンポーネントによって出力される前記ポップアップウィンドウが、既存のポップアップウィンドウによって隠されていると特定した場合に、前記ポップアップウィンドウのアクティビティスタックの一番上への移動をトリガして、前記アクティビティスタックと少なくとも部分的に重なる前記ポップアップウィンドウが隠されることなく表示されることを強制するよう、前記onPauseメソッドに基づいて前記アクティビティポップアップコンポーネントを再起動する操作であって、前記アクティビティポップアップコンポーネントを再起動する前に、前記アクティビティポップアップコンポーネントの無効化イベントに対して前記onPauseメソッドがユーザによってトリガされるかどうかを特定し、前記無効化イベントに対して前記onPauseメソッドがユーザによってトリガされた場合には通常の無効化操作を処理する、操作と;を備える、
    非一時的なコンピュータ読取可能媒体。
  7. 前記トリガイベントは、アンドロイド(登録商標)デバイスで受信される、
    請求項6に記載の非一時的なコンピュータ読取可能媒体。
  8. 前記トリガイベントは、シングルデバイスログインイベントである、
    請求項6に記載の非一時的なコンピュータ読取可能媒体。
  9. ポップアップコンポーネントを起動するコンピュータにより実施されるシステムであって、
    1又は複数のコンピュータと;
    前記1又は複数のコンピュータと相互運用可能に結合され、前記1又は複数のコンピュータによって実行される1又は複数の操作を実行する1又は複数の命令を格納する有形の非一時的な機械読取可能媒体を有する1又は複数のコンピュータメモリデバイスであって、前記操作は、
    ポップアップウィンドウの表示要求の検出により生成されたトリガイベントを受信する操作と;
    前記受信したトリガイベントに基づいて、前記ポップアップウィンドウを出力するように構成されたアクティビティポップアップコンポーネントを起動する操作であって、前記アクティビティポップアップコンポーネントの起動モードは、ユーザの入力によって提供されるポップアップウィンドウ制限によりポップアップウィンドウ出力を禁止するシングルタスクモードとして事前に設定されている、操作と;
    前記アクティビティポップアップコンポーネントのonPauseメソッドが呼び出されるかどうかを特定する操作と;
    前記アクティビティポップアップコンポーネントの前記onPauseメソッドが呼び出されたことを特定した場合に、前記アクティビティポップアップコンポーネントによって出力される前記ポップアップウィンドウが、既存のポップアップウィンドウによって隠されていることを特定する操作と;
    前記アクティビティポップアップコンポーネントによって出力される前記ポップアップウィンドウが、既存のポップアップウィンドウによって隠されていると特定した場合に、前記ポップアップウィンドウのアクティビティスタックの一番上への移動をトリガして、前記アクティビティスタックと少なくとも部分的に重なる前記ポップアップウィンドウが隠されることなく表示されることを強制するよう、前記onPauseメソッドに基づいて前記アクティビティポップアップコンポーネントを再起動する操作であって、前記アクティビティポップアップコンポーネントを再起動する前に、前記アクティビティポップアップコンポーネントの無効化イベントに対して前記onPauseメソッドがユーザによってトリガされるかどうかを特定し、前記無効化イベントに対して前記onPauseメソッドがユーザによってトリガされた場合には通常の無効化操作を処理する、操作と;を備える、前記1又は複数のコンピュータメモリデバイスと;を備える、
    コンピュータにより実施されるシステム。
  10. 前記トリガイベントは、アンドロイド(登録商標)デバイスで受信される、
    請求項9に記載のシステム。

JP2018549247A 2016-03-16 2017-03-03 アンドロイドベースのポップアッププロンプト方法及びデバイス Active JP6736130B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201610150785.XA CN107203369A (zh) 2016-03-16 2016-03-16 基于Android的弹框提示方法及装置
CN201610150785.X 2016-03-16
PCT/CN2017/075520 WO2017157186A1 (zh) 2016-03-16 2017-03-03 基于Android的弹框提示方法及装置

Publications (3)

Publication Number Publication Date
JP2019516161A JP2019516161A (ja) 2019-06-13
JP2019516161A5 JP2019516161A5 (ja) 2020-04-16
JP6736130B2 true JP6736130B2 (ja) 2020-08-05

Family

ID=59850086

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018549247A Active JP6736130B2 (ja) 2016-03-16 2017-03-03 アンドロイドベースのポップアッププロンプト方法及びデバイス

Country Status (10)

Country Link
US (2) US10678564B2 (ja)
EP (1) EP3432140B1 (ja)
JP (1) JP6736130B2 (ja)
KR (1) KR102194055B1 (ja)
CN (1) CN107203369A (ja)
MY (1) MY192615A (ja)
PH (1) PH12018501968B1 (ja)
SG (1) SG11201807866TA (ja)
TW (1) TW201734790A (ja)
WO (1) WO2017157186A1 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107203369A (zh) 2016-03-16 2017-09-26 阿里巴巴集团控股有限公司 基于Android的弹框提示方法及装置
CN117271027A (zh) * 2018-01-29 2023-12-22 华为技术有限公司 认证窗口的显示方法和装置
CN108829487B (zh) * 2018-06-28 2022-07-29 北京五八信息技术有限公司 一种弹窗的展示方法、装置、存储介质及终端
CN109213582A (zh) * 2018-07-16 2019-01-15 北京奇虎科技有限公司 一种运行服务组件的方法、装置及终端
CN109543407B (zh) * 2018-10-19 2024-04-05 三六零科技集团有限公司 一种Activity劫持的拦截方法及装置
CN110866247B (zh) * 2018-11-23 2022-03-11 北京安天网络安全技术有限公司 一种安全防御方法、装置、电子设备及存储介质
CN109634702B (zh) * 2018-12-10 2020-04-24 北京字节跳动网络技术有限公司 一种信息提示的方法、装置、电子设备及可读介质
CN112230924A (zh) * 2020-11-09 2021-01-15 平安普惠企业管理有限公司 弹框提示方法、装置、计算机设备及存储介质
TWI765706B (zh) * 2021-05-11 2022-05-21 凌華科技股份有限公司 彈出視窗的非侵入式共享處理方法及系統
KR20230019703A (ko) * 2021-08-02 2023-02-09 삼성전자주식회사 화면 제어 방법 및 장치
JP7440669B2 (ja) 2021-08-02 2024-02-28 サムスン エレクトロニクス カンパニー リミテッド 画面制御方法及び装置
CN113722035B (zh) * 2021-08-31 2023-08-22 平安消费金融有限公司 弹框任务管理及弹框展示方法、装置、设备和存储介质
CN115080889B (zh) * 2022-07-26 2023-01-17 阿里巴巴(中国)有限公司 一种显示模式切换方法及装置

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6801230B2 (en) * 2001-12-18 2004-10-05 Stanley W. Driskell Method to display and manage computer pop-up controls
US8484576B2 (en) * 2003-04-17 2013-07-09 Supersonic Aerospace International, Llc System and method for customizing multiple windows of information on a display
US20060070008A1 (en) * 2004-09-29 2006-03-30 Microsoft Corporation Preserving browser window integrity
US20080295025A1 (en) * 2007-05-24 2008-11-27 Gyure Wesley J System and Method for Implementing Adaptive Window and Dialog Management
US8510743B2 (en) * 2007-10-31 2013-08-13 Google Inc. Terminating computer applications
US8745191B2 (en) * 2009-01-28 2014-06-03 Headwater Partners I Llc System and method for providing user notifications
US9152299B2 (en) * 2009-10-08 2015-10-06 Red Hat, Inc. Activity management tool
US8698845B2 (en) 2010-01-06 2014-04-15 Apple Inc. Device, method, and graphical user interface with interactive popup views
US20120072867A1 (en) * 2010-09-17 2012-03-22 Apple Inc. Presenting pop-up controls in a user interface
CN102063325B (zh) * 2011-01-06 2013-04-03 哈尔滨工业大学 一种嵌入51系列单片机的多任务实时操作系统的实现方法
CN102156615B (zh) * 2011-04-01 2015-11-25 北京奇虎科技有限公司 一种悬浮窗显示方法及装置
US9037963B1 (en) * 2011-04-22 2015-05-19 Amazon Technologies, Inc. Secure cross-domain web browser communications
CN102521020B (zh) * 2011-10-26 2014-05-21 华为终端有限公司 用于移动终端的应用屏幕截图方法和装置
CN103729176B (zh) * 2012-10-12 2018-01-26 腾讯科技(深圳)有限公司 应用程序整合方法及装置
US20140136279A1 (en) * 2012-11-14 2014-05-15 Purna Chander Ramini OneClue Software System and Method
US10564792B2 (en) * 2012-12-06 2020-02-18 Samsung Electronics Co., Ltd. Display device and method of indicating an active region in a milti-window display
JP5722376B2 (ja) * 2013-03-29 2015-05-20 シャープ株式会社 ユーザ状況確認システム、ユーザ状況確認方法、通信端末装置、ユーザ状況通知方法、及びコンピュータプログラム
JP6058132B2 (ja) 2013-05-31 2017-01-11 三菱電機株式会社 ポップアップ表示装置
US20150058826A1 (en) * 2013-08-26 2015-02-26 The Trustees Of Columbia University In The City Of New York Systems and methods for efficiently and effectively detecting mobile app bugs
CN103559035B (zh) * 2013-10-31 2016-09-07 青岛海信移动通信技术股份有限公司 一种应用于Android平台的处理事件的方法和装置
CN104915090A (zh) * 2014-03-13 2015-09-16 宏碁股份有限公司 通知事件呈现方法与电子装置
US9984441B2 (en) 2014-06-18 2018-05-29 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Unobtrusive sizing and placement of pop-ups
CN104123499B (zh) * 2014-07-18 2017-09-01 北京金山安全软件有限公司 一种利用Android设备管理器对抗卸载的软件的识别方法及装置
CN104360794B (zh) * 2014-11-21 2017-07-04 北京奇虎科技有限公司 通过识别全屏模式控制窗口弹出的方法及装置
CN104572110A (zh) * 2015-01-19 2015-04-29 山东大学 一种安卓系统上Toast控件的优化方法
KR101543236B1 (ko) * 2015-05-13 2015-08-11 주식회사 도진포스 모바일 장치를 이용한 시험 문제 출력 방법 및 그 장치
CN107203369A (zh) 2016-03-16 2017-09-26 阿里巴巴集团控股有限公司 基于Android的弹框提示方法及装置

Also Published As

Publication number Publication date
SG11201807866TA (en) 2018-10-30
WO2017157186A1 (zh) 2017-09-21
TW201734790A (zh) 2017-10-01
CN107203369A (zh) 2017-09-26
EP3432140A4 (en) 2019-11-20
US20200218550A1 (en) 2020-07-09
MY192615A (en) 2022-08-29
US10678564B2 (en) 2020-06-09
KR20180125498A (ko) 2018-11-23
EP3432140A1 (en) 2019-01-23
US20190012190A1 (en) 2019-01-10
JP2019516161A (ja) 2019-06-13
PH12018501968A1 (en) 2019-07-15
KR102194055B1 (ko) 2020-12-23
PH12018501968B1 (en) 2019-07-15
US10853102B2 (en) 2020-12-01
EP3432140B1 (en) 2022-02-23

Similar Documents

Publication Publication Date Title
JP6736130B2 (ja) アンドロイドベースのポップアッププロンプト方法及びデバイス
JP5945074B2 (ja) Apiインターセプト関連のアプリケーションのための方法、デバイス、およびモバイル端末
AU2018232915B2 (en) System and method for introducing functionality to an application for use with a network service
CN108182131B (zh) 监控应用运行状态的方法、装置、存储介质及电子设备
CN105320542B (zh) 一种移动终端退出异常界面的方法和装置
CN106951335B (zh) 一种进程守护方法和移动终端
CN105550585B (zh) 一种应用程序安全性测试方法、装置和系统
CN109284046B (zh) 一种控制控件的方法、装置、终端及存储介质
JP2019516161A5 (ja)
WO2015100933A1 (zh) 一种实现多操作系统的数据处理方法及终端设备
US20180084420A1 (en) Method and device for switching user mode of intelligent terminal, and intelligent terminal
CN109684795B (zh) 应用程序反调试的方法、装置及电子设备
CN113467981A (zh) 异常处理的方法和装置
CN107209732B (zh) 响应于外部装置到计算机的连接的方法、介质和第一装置
WO2017101336A1 (zh) 快捷开关的控制方法及装置
WO2017219482A1 (zh) 启动方法和装置
CN109257235B (zh) 网络异常恢复方法、装置、设备及计算机可读存储介质
US11314870B1 (en) Auto-containment of potentially vulnerable applications
US9819725B1 (en) System, method, and computer program for remotely controlling mobile web applications installed on a mobile device
CN110928630A (zh) 应用程序窗口的激活控制方法、装置、设备及存储介质
CN107783825A (zh) 移动终端多后台进程启动方法、装置及移动终端
US11138062B2 (en) Terminal device troubleshooting method and terminal device
CN110659082A (zh) 应用程序界面的显示方法、装置、终端及存储介质
CN104572199B (zh) 一种禁止启动项启动的方法和装置
CN110795321A (zh) 误操作处理方法、装置和终端设备

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200214

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200306

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200306

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200316

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20200605

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: 20200615

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200709

R150 Certificate of patent or registration of utility model

Ref document number: 6736130

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250