すべてのプロダクト
Search
ドキュメントセンター

Mobile Platform as a Service:Android よくある質問

最終更新日:Jan 17, 2025

JSAPI をカスタマイズするプロセスで、interceptEvent と handleEvent の違いは何ですか?

A: コンテナーの他のイベントを監視する場合は、interceptEvent に記述します。イベントを処理する場合は、handleEvent に記述します。インターフェイスが true を返せば問題ありません。

インターフェイスが true を返すと、システムはイベントの受け渡しを停止します。false の場合は、イベントは他のプラグインに継続的に渡されます。

JSAPI をカスタマイズするプロセスで、config.setEvents("event") にイベントを追加しましたが、プラグインの onPrepare にもイベントを再度追加する必要があるのはなぜですか?

A: コンテナー プラグインは遅延ロードされるため、つまりページ作成時にロードされます。HTML5 コンテナーは、外部の config.setEvents を介して監視対象のイベントを挿入するため、JS 呼び出しが発生した場合にのみ、対応するプラグイン オブジェクトがインスタンス化されます。実際にインスタンス化されたプラグインの場合、配布されるイベントは、プラグインの onPrepare にあるイベントです。そのため、config.setEvents("event") のイベントが、内部の onPrepare のイベントと一致していることを確認する必要があります。

JSAPI プラグインをカスタマイズするプロセスで、page、session、service の違いは何ですか?

A: page は webview に対応します。session は mPaaS の App オブジェクトに対応します。service はグローバル シングルトンです。

  • プラグインがページ レベルとして登録されている場合、WebView を作成するたびにプラグイン インスタンスが作成され、WebView が破棄されると、対応するプラグインの onRelease がコールバックされます。
  • プラグインがセッション レベルとして登録されている場合、App オブジェクトを作成するたびにプラグインが作成されます。
  • プラグインがサービス レベルとして登録されている場合、グローバルに 1 つのプラグインのみが作成され、コンテナーを初めて開いたときにプラグインが作成されます。